From 36e1ec74d47e84cd1b31d7d4bc2319fd14ab1ea8 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 18 十二月 2024 09:25:55 +0800
Subject: [PATCH] 代码初始化
---
h5/pages/staff/task/vDangetAppr.vue | 156 ++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 127 insertions(+), 29 deletions(-)
diff --git a/h5/pages/staff/task/vDangetAppr.vue b/h5/pages/staff/task/vDangetAppr.vue
index 53f969b..3138b6b 100644
--- a/h5/pages/staff/task/vDangetAppr.vue
+++ b/h5/pages/staff/task/vDangetAppr.vue
@@ -9,10 +9,14 @@
class="status_img"></image>
<view>{{ info.content }}</view>
<view class="file_list">
- <view class="img_wrap" v-for="item in info.submitFileList" :key="item.id">
+ <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" />
- <video v-if="item.type == 1" :src="item.fileurlFull" class="video" :controls="false" />
+ <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>
</view>
</view>
<view class="text_wrap">
@@ -38,8 +42,9 @@
<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" :controls="false"></video>
</view>
</view>
</view>
@@ -47,8 +52,9 @@
<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" :controls="false"></video>
</view>
</view>
</view>
@@ -96,9 +102,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>
@@ -129,8 +135,9 @@
<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" :controls="false"></video>
</view>
</view>
<view class="label">閫�鍥炶鏄�</view>
@@ -257,6 +264,13 @@
<u-datetime-picker :minDate="new Date().getTime()" :show="isShowHandleDate" @confirm="confirmHandleDate"
@cancel="isShowHandleDate = false" mode="datetime"></u-datetime-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>
</template>
@@ -327,7 +341,11 @@
page: 1,
capacity: 50
},
- memberList: []
+ memberList: [],
+
+ videoPlay: false,
+ videoContext: null,
+ videoUrl: ''
};
},
onLoad(op) {
@@ -341,9 +359,31 @@
urls: [url]
});
},
+ screenChange(e) {
+ let fullScreen = e.detail.fullScreen; // 鍊紅rue涓鸿繘鍏ュ叏灞忥紝false涓洪��鍑哄叏灞�
+ if (!fullScreen) {
+ //閫�鍑哄叏灞�
+ this.videoPlay = false; // 闅愯棌鎾斁鐩掑瓙
+ }
+ },
+ closeVideo() {
+ this.videoPlay = false
+ this.videoContext = null
+ },
+ videoClick(item, i) {
+ 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'));
},
@@ -482,7 +522,7 @@
this.showUploadBe = false;
let token = uni.getStorageSync('token') || '';
uni.chooseImage({
- count: 4,
+ count: 9,
success: chooseImageRes => {
uni.showLoading({
title: '涓婁紶涓�',
@@ -573,7 +613,7 @@
this.showUploadAf = false;
let token = uni.getStorageSync('token') || '';
uni.chooseImage({
- count: 4,
+ count: 9,
success: chooseImageRes => {
uni.showLoading({
title: '涓婁紶涓�',
@@ -661,7 +701,7 @@
this.showUpload = false;
let token = uni.getStorageSync('token') || '';
uni.chooseImage({
- count: 4,
+ count: 9,
success: chooseImageRes => {
uni.showLoading({
title: '涓婁紶涓�',
@@ -770,7 +810,7 @@
}
.flow_wrap {
- padding: 30rpx 0;
+ padding: 30rpx 0 90rpx;
.list {
.item {
@@ -807,6 +847,7 @@
position: absolute;
right: 0;
bottom: 0;
+ z-index: 999;
}
}
@@ -897,9 +938,9 @@
}
.adduser_list_item_ipt1_upload {
- width: 120rpx;
- height: 120rpx;
- margin-right: 24rpx;
+ width: 156rpx;
+ height: 156rpx;
+ margin-right: 20rpx;
border: 2rpx solid #e5e5e5;
background: #f7f7f7;
color: #666666;
@@ -909,6 +950,10 @@
align-items: center;
justify-content: center;
position: relative;
+
+ &:nth-of-type(4n) {
+ margin-right: 0;
+ }
.close {
position: absolute;
@@ -924,7 +969,7 @@
video {
width: 100%;
- max-height: 120rpx;
+ max-height: 156rpx;
}
}
@@ -999,23 +1044,45 @@
.file_list {
display: flex;
margin-bottom: 20rpx;
- overflow-x: auto;
+ flex-wrap: wrap;
.img_wrap {
margin-top: 24rpx;
- min-width: 160rpx;
- height: 160rpx;
+ width: 156rpx;
+ height: 156rpx;
border: 2rpx solid #e5e5e5;
background: #f7f7f7;
color: #666666;
font-size: 22rpx;
display: flex;
+ border-radius: 4rpx;
flex-direction: column;
align-items: center;
justify-content: center;
position: relative;
- margin-right: 16rpx;
+ margin-right: 20rpx;
flex-shrink: 0;
+
+ &:nth-of-type(4n) {
+ 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 {
@@ -1036,9 +1103,13 @@
margin-top: 20rpx;
.line {
- margin-bottom: 12rpx;
+ margin-bottom: 18rpx;
display: flex;
font-size: 24rpx;
+
+ &:nth-last-child(1) {
+ margin-bottom: 0;
+ }
.label {
color: #999999;
@@ -1055,7 +1126,7 @@
line-height: 60rpx;
padding: 0 32rpx;
border-radius: 0rpx 0rpx 0rpx 30rpx;
- background-color: #e9edff;
+ background: rgba(39, 155, 170, 0.12);
color: $uni-color-primary;
}
@@ -1071,6 +1142,7 @@
position: fixed;
bottom: 0;
width: 100%;
+ z-index: 9999;
left: 0;
padding: 30rpx 10rpx 60rpx;
display: flex;
@@ -1169,10 +1241,10 @@
}
.adduser_list_item_ipt1_upload {
- margin-top: 24rpx;
- width: 120rpx;
- height: 120rpx;
- margin-right: 24rpx;
+ margin-top: 20rpx;
+ width: 156rpx;
+ height: 156rpx;
+ margin-right: 20rpx;
border: 2rpx solid #e5e5e5;
background: #f7f7f7;
color: #666666;
@@ -1182,6 +1254,10 @@
align-items: center;
justify-content: center;
position: relative;
+
+ &:nth-of-type(4n) {
+ margin-right: 0;
+ }
.close {
position: absolute;
@@ -1308,6 +1384,28 @@
}
}
+ .video_app {
+ overflow: hidden;
+ position: fixed;
+ left: 0;
+ top: 0;
+ width: 100vw;
+ height: 100vh;
+ display: flex;
+ align-items: center;
+ .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;
--
Gitblit v1.9.3