| | |
| | | <template v-if="info.status == 1">
|
| | | <view class="line">
|
| | | <div class="la">巡检结果:</div>
|
| | | <div class="val primaryColor" :class="{red: info.dealStatus == 1}">{{ info.dealStatus == 0 ? '正常' : '异常' }}
|
| | | <div class="val primaryColor" :class="{red: info.dealStatus == 1}">
|
| | | {{ info.dealStatus == 0 ? '正常' : info.dealStatus == 1 ? '异常' : '-' }}
|
| | | </div>
|
| | | </view>
|
| | | <view class="line">
|
| | |
| | | <view class="files">
|
| | | <view class="adduser_list_item_ipt1_upload" v-for="(item, i) in info.multifileList" :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> --> |
| | | <view v-if="item.type == 1" @click="videoClick(item)" 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> |
| | | <!-- <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video> -->
|
| | | <view v-if="item.type == 1" @click="videoClick(item)" 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>
|
| | |
| | | @cancel="isShowHandleDate = false" mode="datetime"></u-datetime-picker>
|
| | | <u-picker :show="isShowRes" keyName="name" @cancel="isShowRes = false" @confirm='confirmRes'
|
| | | :columns="columns"></u-picker>
|
| | | <!-- --> |
| | | <view v-if="videoPlay" class="video_app"> |
| | | <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 v-if="videoPlay" class="video_app">
|
| | | <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>
|
| | |
|
| | |
| | | id: 1,
|
| | | name: '异常'
|
| | | },
|
| | | {
|
| | | id: '',
|
| | | name: '跳过'
|
| | | },
|
| | | // {
|
| | | // id: 2,
|
| | | // name: '跳过'
|
| | | // },
|
| | | ]
|
| | | ], |
| | | |
| | | videoPlay: false, |
| | | videoContext: null, |
| | | videoUrl: '' |
| | | ],
|
| | |
|
| | | videoPlay: false,
|
| | | videoContext: null,
|
| | | videoUrl: ''
|
| | | };
|
| | | },
|
| | | onLoad(option) {
|
| | |
| | | multifileList: fileList,
|
| | | id,
|
| | | }).then(res => {
|
| | | if (handleParam.dealStatus == 1) {
|
| | | return uni.showModal({
|
| | | title: '温馨提示',
|
| | | content: '巡检结果异常,是否前往提交工单?',
|
| | | success: (res) => {
|
| | | if (res.confirm) {
|
| | | this.showToast('操作成功') |
| | | setTimeout(() => { |
| | | uni.redirectTo({ |
| | | url: '/pages/workOrder/edit' |
| | | }) |
| | | }, 300)
|
| | | }else{ |
| | | this.showToast('操作成功') |
| | | setTimeout(() => { |
| | | uni.navigateBack() |
| | | }, 300) |
| | | if (res.code == 200) {
|
| | | if (handleParam.dealStatus == 1) {
|
| | | return uni.showModal({
|
| | | title: '温馨提示',
|
| | | content: '巡检结果异常,是否前往提交工单?',
|
| | | success: (res) => {
|
| | | if (res.confirm) {
|
| | | this.showToast('操作成功')
|
| | | setTimeout(() => {
|
| | | uni.redirectTo({
|
| | | url: '/pages/workOrder/edit'
|
| | | })
|
| | | }, 300)
|
| | | } else {
|
| | | this.showToast('操作成功')
|
| | | setTimeout(() => {
|
| | | uni.navigateBack()
|
| | | }, 300)
|
| | | }
|
| | | }
|
| | | }
|
| | | });
|
| | | } else {
|
| | | this.showToast('操作成功')
|
| | | setTimeout(() => { |
| | | uni.navigateBack() |
| | | }, 300)
|
| | | });
|
| | | } else {
|
| | | this.showToast('操作成功')
|
| | | setTimeout(() => {
|
| | | uni.navigateBack()
|
| | | }, 300)
|
| | | }
|
| | | }
|
| | |
|
| | | })
|
| | | },
|
| | | getDetail() {
|
| | |
| | | this.$set(this.handleParam, 'dealStatus', e.value[0].id)
|
| | | this.$set(this.handleParam, 'dealName', e.value[0].name)
|
| | | this.isShowRes = false
|
| | | }, |
| | | videoClick(item) { |
| | | this.videoPlay = true; |
| | | this.videoContext = uni.createVideoContext("myvideo", this); // this这个是实例对象 必传 |
| | | this.videoUrl = item.fileurlFull; |
| | | this.videoContext.requestFullScreen(); |
| | | this.$nextTick(() => { |
| | | this.videoContext.play(); |
| | | }) |
| | | }, |
| | | screenChange(e) { |
| | | let fullScreen = e.detail.fullScreen // 值true为进入全屏,false为退出全屏 |
| | | if (!fullScreen) { |
| | | //退出全屏 |
| | | this.videoPlay = false // 隐藏播放盒子 |
| | | } |
| | | }, |
| | | closeVideo() { |
| | | this.videoPlay = false |
| | | this.videoContext = null |
| | | },
|
| | | videoClick(item) {
|
| | | this.videoPlay = true;
|
| | | this.videoContext = uni.createVideoContext("myvideo", this); // this这个是实例对象 必传
|
| | | this.videoUrl = item.fileurlFull;
|
| | | this.videoContext.requestFullScreen();
|
| | | this.$nextTick(() => {
|
| | | this.videoContext.play();
|
| | | })
|
| | | },
|
| | | screenChange(e) {
|
| | | let fullScreen = e.detail.fullScreen // 值true为进入全屏,false为退出全屏
|
| | | if (!fullScreen) {
|
| | | //退出全屏
|
| | | this.videoPlay = false // 隐藏播放盒子
|
| | | }
|
| | | },
|
| | | closeVideo() {
|
| | | this.videoPlay = false
|
| | | this.videoContext = null
|
| | | },
|
| | | fileDel(str, i) {
|
| | | this[str].splice(i, 1);
|
| | |
| | | image {
|
| | | width: 100%;
|
| | | height: 100%;
|
| | | } |
| | | video { |
| | | width: 100%; |
| | | height: 100%; |
| | | }
|
| | | .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%); |
| | | } |
| | |
|
| | | video {
|
| | | width: 100%;
|
| | | height: 100%;
|
| | | }
|
| | | } |
| | | |
| | | .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; |
| | | } |
| | |
|
| | | .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%);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | .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;
|
| | | }
|
| | | }
|
| | | </style> |