jiangping
2024-12-20 53b6400ec10c8ca61ccec91c82c358d2488eead8
h5/pages/staff/task/vDangetAppr.vue
@@ -12,10 +12,10 @@
            <view class="img_wrap" v-for="item,i in info.submitFileList" :key="item.id">
               <image v-if="item.type == 0" :src="item.fileurlFull" @click="priviewImage(item.fileurlFull)" mode="widthFix"
                  class="img" />
               <view v-if="item.type == 1"  @click="videoClick(item, i)" class="video_wrap">
                  <video :id="'id' + i" :show-center-play-btn="false"
                     :src="item.fileurlFull" muted class="video" :controls="false" />
                  <image src="@/static/play.png" class="play" mode=""></image>
               <view v-if="item.type == 1" @click="videoClick(item, i)" class="video_wrap">
                  <video :src="item.fileurlFull" initial-time="0.01" :show-center-play-btn="false" :controls="false"
                     class="video" :enable-progress-gesture="false" autoplay muted />
                  <image src="@/static/play.png" class="play" mode=""></image>
               </view>
            </view>
         </view>
@@ -42,8 +42,15 @@
            <view class="label">{{info.status == '1' ? '整改前' : '视频/图片'}}</view>
            <view class="value">
               <view class="adduser_list_item_ipt1_upload" v-for="(item, i) in info.dealBeforeFileList" :key="i">
                  <image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
                  <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
                  <image v-if="item.type == 0" @click="priviewImage(item.fileurlFull)" :src="item.fileurlFull"
                     mode="widthFix"></image>
                  <!--                   <video v-if="item.type == 1" @click="videoClick(item, i)" :src="item.fileurlFull" :show-center-play-btn="false" :controls="false" class="video"
                  :enable-progress-gesture="false" autoplay muted></video> -->
                  <view v-if="item.type == 1" @click="videoClick(item, i)" class="video_wrap">
                     <video :src="item.fileurlFull" :initial-time="0.01" :show-center-play-btn="false" :controls="false"
                        class="video" :enable-progress-gesture="false" muted />
                     <image src="@/static/play.png" class="play" mode=""></image>
                  </view>
               </view>
            </view>
         </view>
@@ -51,8 +58,15 @@
            <view class="label">整改后</view>
            <view class="value">
               <view class="adduser_list_item_ipt1_upload" v-for="(item, i) in info.dealAfterFileList" :key="i">
                  <image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
                  <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
                  <image v-if="item.type == 0" @click="priviewImage(item.fileurlFull)" :src="item.fileurlFull"
                     mode="widthFix"></image>
                  <!--                   <video v-if="item.type == 1" @click="videoClick(item, i)" :src="item.fileurlFull" initial-time="0.01" :show-center-play-btn="false" :controls="false" class="video"
                  :enable-progress-gesture="false" autoplay muted></video> -->
                  <view v-if="item.type == 1" @click="videoClick(item, i)" class="video_wrap">
                     <video :src="item.fileurlFull" :initial-time="0.01" :show-center-play-btn="false" :controls="false"
                        class="video" :enable-progress-gesture="false" muted />
                     <image src="@/static/play.png" class="play" mode=""></image>
                  </view>
               </view>
            </view>
         </view>
@@ -100,9 +114,9 @@
         </view>
      </view>
      <view class="emyty"></view>
      <view class="main_footer">
      <view class="main_footer" v-if="info.status==0&& info.checkUserId == userInfo.memberId">
         <view v-if="info.status==0&& info.checkUserId == userInfo.memberId" class="btn" @click="handleBack">退回</view>
         <view v-if="info.status==0 && info.checkUserId == userInfo.memberId" class="btn transfer" @click="handleTransfer">
         <view v-if="info.status==0&& info.checkUserId == userInfo.memberId" class="btn transfer" @click="handleTransfer">
            转交</view>
         <view v-if="info.status==0&& info.checkUserId == userInfo.memberId" class="btn handle" @click="handleOpen">处理
         </view>
@@ -133,8 +147,15 @@
               <view class="adduser_list_item_ipt1_upload" v-for="(item, i) in dealBeforeFileList" :key="i">
                  <u-icon class="close" size="20" name="close-circle-fill" color="red"
                     @click="fileDel('dealBeforeFileList', i)"></u-icon>
                  <image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
                  <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
                  <image v-if="item.type == 0" @click="priviewImage(item.fileurlFull)" :src="item.fileurlFull"
                     mode="widthFix"></image>
                  <!-- <video v-if="item.type == 1" @click="videoClick(item, i)" :src="item.fileurlFull" show-center-play-btn="false" :controls="false" class="video"
                  :enable-progress-gesture="false" autoplay muted></video> -->
                  <view v-if="item.type == 1" @click="videoClick(item, i)" class="video_wrap">
                     <video :src="item.fileurlFull" :initial-time="0.01" :show-center-play-btn="false" :controls="false"
                        class="video" :enable-progress-gesture="false" muted />
                     <image src="@/static/play.png" class="play" mode=""></image>
                  </view>
               </view>
            </view>
            <view class="label">退回说明</view>
@@ -174,7 +195,13 @@
                  <u-icon class="close" size="20" name="close-circle-fill" color="red"
                     @click="fileDel('dealBeforeFileList', i)"></u-icon>
                  <image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
                  <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
                  <!-- <video v-if="item.type == 1" :src="item.fileurlFull" :show-center-play-btn="false" :controls="false" class="video"
                  :enable-progress-gesture="false" muted></video> -->
                  <view v-if="item.type == 1" class="video_wrap">
                     <video :src="item.fileurlFull" :initial-time="0.01" :show-center-play-btn="false" :controls="false"
                        class="video" :enable-progress-gesture="false" muted />
                     <image src="@/static/play.png" class="play" mode=""></image>
                  </view>
               </view>
            </view>
            <view class="label">
@@ -190,7 +217,12 @@
                  <u-icon class="close" size="20" name="close-circle-fill" color="red"
                     @click="fileDel('dealAfterFileList', i)"></u-icon>
                  <image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
                  <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
                  <!-- <video v-if="item.type == 1" :src="item.fileurlFull" :show-center-play-btn="false" :controls="false"></video> -->
                  <view v-if="item.type == 1" class="video_wrap">
                     <video :src="item.fileurlFull" :initial-time="0.01" :show-center-play-btn="false" :controls="false"
                        class="video" :enable-progress-gesture="false" muted />
                     <image src="@/static/play.png" class="play" mode=""></image>
                  </view>
               </view>
            </view>
            <view class="label">整改说明</view>
@@ -264,7 +296,9 @@
      <!--  -->
      <view v-if="videoPlay" class="video_app">
         <video controls id="myvideo" :src="videoUrl" @fullscreenchange="screenChange"></video>
         <video controls autoplay muted x5-video-player-type="h5" x5-video-player-fullscreen="true" id="myvideo"
            :src="videoUrl" @fullscreenchange="screenChange"></video>
         <view class="bg" @click="closeVideo"></view>
      </view>
   </view>
</template>
@@ -339,13 +373,13 @@
            memberList: [],
            videoPlay: false,
            videoContext: null,
            videoContext: null,
            videoUrl: ''
         };
      },
      onLoad(op) {
      onLoad(op) {
         uni.setStorageSync('ywinfo',{})
         this.id = op.id;
         this.type = op.objType;
         this.getDetail();
      },
      methods: {
@@ -361,19 +395,24 @@
               this.videoPlay = false; // 隐藏播放盒子
            }
         },
         closeVideo() {
            this.videoPlay = false
            this.videoContext = null
         },
         videoClick(item, i) {
            this.videoContext = uni.createVideoContext("myvideo", this); // this这个是实例对象 必传
            console.log(item)
            this.videoUrl = item.fileurlFull;
            this.videoContext.requestFullScreen({
               direction: 90
            });
            this.videoContext.play();
            this.videoPlay = true;
            this.videoContext = uni.createVideoContext("myvideo", this); // this这个是实例对象 必传
            this.videoUrl = item.fileurlFull;
            this.videoContext.requestFullScreen();
            this.$nextTick(() => {
               this.videoContext.play();
            })
         },
         handleOpen() {
            this.isShowHandle = true;
            const submitFileList = this.info.submitFileList || []
            this.dealBeforeFileList = [...submitFileList]
            this.submitFileList = [...submitFileList];
            this.$set(this.handleParam, 'dealTime', dayjs().format('YYYY-MM-DD HH:mm:ss'));
         },
@@ -800,7 +839,7 @@
      }
      .flow_wrap {
         padding: 30rpx 0;
         padding: 30rpx 0 90rpx;
         .list {
            .item {
@@ -837,6 +876,7 @@
                     position: absolute;
                     right: 0;
                     bottom: 0;
                     z-index: 999;
                  }
               }
@@ -1043,7 +1083,7 @@
               background: #f7f7f7;
               color: #666666;
               font-size: 22rpx;
               display: flex;
               display: flex;
               border-radius: 4rpx;
               flex-direction: column;
               align-items: center;
@@ -1056,21 +1096,8 @@
                  margin-right: 0;
               }
            }
            .video_wrap{
               position: relative;
               border: 1px solid;
               width: 156rpx;
               height: 156rpx;
               border-radius: 4rpx;
               .play{
                  width: 60rpx;
                  height: 60rpx;
                  position: absolute;
                  top: 50%;
                  left: 50%;
                  transform: translate(-50%, -50%);
               }
            }
            .img {
               width: 100%;
               max-height: 100%;
@@ -1128,6 +1155,7 @@
         position: fixed;
         bottom: 0;
         width: 100%;
         z-index: 9999;
         left: 0;
         padding: 30rpx 10rpx 60rpx;
         display: flex;
@@ -1248,7 +1276,8 @@
               position: absolute;
               right: -20rpx;
               top: -20rpx;
               z-index: 9999;
               z-index: 999999999999;
               color: #fff;
            }
            image {
@@ -1270,7 +1299,22 @@
         margin: 0 -30rpx;
      }
   }
   .video_wrap {
         position: relative;
         border: 1px solid;
         width: 156rpx;
         height: 156rpx;
         border-radius: 4rpx;
         .play {
            width: 60rpx !important;
            height: 60rpx !important;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
         }
      }
   .sel_upload_wrap {
      width: 100%;
      border-top: 1px solid #333333;
@@ -1369,6 +1413,30 @@
      }
   }
   .video_app {
      overflow: hidden;
      position: fixed;
      left: 0;
      top: 0;
      width: 100vw;
      height: 100vh;
      display: flex;
      align-items: center;
      z-index: 9990;
      .bg {
         background-color: rgba(0, 0, 0, .6);
         position: absolute;
         width: 100%;
         height: 100%;
         z-index: -1;
      }
      video {
         width: 100%;
         height: 42vh;
      }
   }
   .Transfer_footer {
      display: flex;