From 88a34566f7c3f77d90daa3fd57fb0abca3e1b5e6 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期四, 27 二月 2025 09:12:06 +0800
Subject: [PATCH] ll

---
 h5/pages/staff/task/vDangetAppr.vue |  637 ++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 405 insertions(+), 232 deletions(-)

diff --git a/h5/pages/staff/task/vDangetAppr.vue b/h5/pages/staff/task/vDangetAppr.vue
index 6a3b311..2f6b65d 100644
--- a/h5/pages/staff/task/vDangetAppr.vue
+++ b/h5/pages/staff/task/vDangetAppr.vue
@@ -1,5 +1,5 @@
 <template>
-	<view class="main_app">
+	<view class="main_app" :style="{height: windowHeight  + 'px'}">
 		<view class="status_wrap">
 			<view class="name">{{ info.categoryName }}</view>
 			<view v-if="info.status == '0'" class="status">{{ statusMap[info.status] }}</view>
@@ -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 />
+					<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="text_wrap">
@@ -28,18 +32,25 @@
 		</view>
 		<!--  -->
 		<view class="emyty"></view>
-		<view v-if="info.status == 1 || info.status == 2" class="module_list">
-			<view class="flow_title">澶勭悊缁撴灉</view>
+		<view v-if="info.status == 1 || info.status == 2" class="module_list">
+			<view class="title">澶勭悊缁撴灉</view>
 			<view class="item">
 				<view class="label">澶勭悊缁撴灉</view>
 				<view class="value primaryColor" :class="{ red: info.status == 2 }">{{ statusMap[info.status] }}</view>
 			</view>
 			<view class="item">
-				<view class="label">{{info.status == '1' ? '鏁存敼鍓�' : '瑙嗛/鍥剧墖'}}</view>
+				<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"></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>
@@ -47,13 +58,20 @@
 				<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"></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>
 			<view class="item">
-				<view class="label">{{info.status == '1' ? '鏁存敼璇存槑' : '閫�鍥炶鏄�'}}</view>
+				<view class="label">{{ info.status == '1' ? '鏁存敼璇存槑' : '閫�鍥炶鏄�' }}</view>
 				<view class="value">{{ info.checkInfo }}</view>
 			</view>
 		</view>
@@ -68,15 +86,15 @@
 							v-if="info.status == 1 || index < flowList.length - 1" />
 						<image src="@/static/staff/liucheng_fail@2x.png" class="status"
 							v-if="info.status == 2 && index == flowList.length - 1" />
-						<image v-if="item.avatar != null && item.avatar != ''" :src="item.avatar" class="img" alt="" />
+						<image v-if="item.avatar != null && item.avatar != ''" :src="item.avatar" class="img" alt="" />
 						<!-- <image v-else src="@/static/default_avatar.png" class="img" mode=""></image> -->
-						<span v-if="item.avatar == null || item.avatar == ''"
-							class="img_name">{{ item.createUserName && item.createUserName.slice(0, 1) }}</span>
+						<span v-if="item.avatar == null || item.avatar == ''" class="img_name">{{ item.createUserName &&
+							item.createUserName.slice(0, 1) }}</span>
 					</view>
 					<view class="content">
 						<view class="head">
 							<view class="event">{{ item.title }}</view>
-							<view class="time">{{ item.createDate }}</view>
+							<view class="time" v-if="item.createDate">{{ item.createDate.slice(0, 16) }}</view>
 						</view>
 						<view class="line">
 							<view class="company">
@@ -95,11 +113,15 @@
 				</view>
 			</view>
 		</view>
+		<view v-if="info.status == 0 && info.checkUserId == userInfo.memberId" style="height: 90rpx;"></view>
 		<view class="emyty"></view>
-		<view class="main_footer">
-			<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>
-			<view v-if="info.status==0&& info.checkUserId == userInfo.memberId" class="btn handle" @click="handleOpen">澶勭悊</view>
+		<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>
+			<view v-if="info.status == 0 && info.checkUserId == userInfo.memberId" class="btn handle" @click="handleOpen">澶勭悊
+			</view>
 		</view>
 
 		<!-- 閫�鍥� -->
@@ -127,8 +149,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"></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>
@@ -168,7 +197,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"></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">
@@ -184,7 +219,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"></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>
@@ -216,45 +256,51 @@
 		</u-popup>
 		<!-- 杞氦 -->
 		<u-popup :show="isShowTransfer" :round="10" safeAreaInsetBottom mode="bottom" @close="isShowTransfer = false">
-			<view class="appr_modal">
+			<view class="appr_modal" :style="{height: (windowHeight - 120) + 'px'}">
 				<view class="title">閫夋嫨鍛樺伐</view>
 				<view class="search_inp df_ac">
 					<image class="mr12 search" src="@/static/ic_search@2x.png" mode="widthFix"></image>
-					<input v-model="transferModel.name" @blur="getMemList()" type="text" placeholder="鎼滅储閮ㄩ棬/浜哄憳"
-						placeholder-style="color: #999999;" />
+					<input v-model="transferModel.queryParam" @focus="showKeyboard = true" @blur="showKeyboard = false"
+						@confirm="getMemList()" type="text" placeholder="鎼滅储浜哄憳濮撳悕" placeholder-style="color: #999999;" />
 				</view>
-				<view class="member_list">
-					<view class="mt24 placeholder6">鍏眥{ memberList.length }}鏉℃暟鎹�</view>
+				<view class="mt24 placeholder6">鍏眥{ memberList.length }}鏉℃暟鎹�</view>
+				<view class="member_list" :style="{height: (windowHeight - 320) + 'px'}">
 					<view v-for="item in memberList" :key="item.id" class="line">
-						<image :src="item.faceImgFull ? item.faceImgFull : require('@/static/meeting/common/default_user@2x.png')"
-							class="avatar" mode=""></image>
+						<image v-if="item.faceImg" :src="item.faceImg" class="avatar"></image>
+						<span v-else class="img_name">{{ item.realname && item.realname.slice(0, 1) }}</span>
 						<view class="content">
 							<view class="info">
-								<text class="name">{{ item.name }}</text>
-								<!-- <text class="tag">tag</text> -->
+								<text class="name">{{ item.realname }}</text>
 							</view>
 							<view class="depart">{{ item.companyName }}</view>
 						</view>
-						<image @click="changeMem(item)" v-if="transferParam.id == item.id"
-							src="@/static/checkbox_sel@2x.png" mode="widthFix" class="checked"></image>
-						<image @click="changeMem(item)" v-else src="@/static/video@2x.png" mode="widthFix"
-							class="checked"></image>
+						<image @click="changeMem(item)" v-if="transferParam.id == item.id" src="@/static/checkbox_sel@2x.png"
+							mode="widthFix" class="checked"></image>
+						<image @click="changeMem(item)" v-else src="@/static/video@2x.png" mode="widthFix" class="checked"></image>
 						<text></text>
 					</view>
 					<view class="empty"></view>
 				</view>
 				<view class="Transfer_footer">
-					<view class="btn" @click="isShowTransfer = fales">鍙栨秷</view>
+					<view class="btn" @click="isShowTransfer = false">鍙栨秷</view>
 					<view class="btn active" @click="enterTransfer">纭杞氦</view>
 				</view>
 			</view>
 		</u-popup>
 		<!-- 閫�鍥炴椂闂� -->
-		<u-datetime-picker :show="isShowBackDate" @confirm="confirmBackDate" @cancel="isShowBackDate = false"
+		<u-datetime-picker :show="isShowBackDate" :minDate="new Date().getTime()" :closeOnClickOverlay="false"
+			@confirm="confirmBackDate" @close="isShowBackDate = false" @cancel="isShowBackDate = false"
 			mode="datetime"></u-datetime-picker>
 
 		<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>
 
@@ -262,23 +308,24 @@
 	import {
 		hiddenDangerDetail,
 		uploadUrl,
-		findHiddenAreaMemberList,
+		userPagePost,
 		dealHiddenDanger,
 		transferHiddenDanger,
 		findListFlowDanger
-	} from '@/api';
-	import dayjs from 'dayjs';
+	} from '@/api'
+	import dayjs from 'dayjs'
 	export default {
 		data() {
 			return {
 				isShowBack: false,
 				param: {},
-				info: {},
+				info: {},
 				userInfo: this.$store.state.userInfo,
 				flowList: [],
 
 				id: '',
 				type: '',
+				windowHeight: '',
 				cateList: [{
 					name: '璁垮鐢宠',
 					id: 0
@@ -325,62 +372,98 @@
 					page: 1,
 					capacity: 50
 				},
-				memberList: []
-			};
+				memberList: [],
+
+				videoPlay: false,
+				videoContext: null,
+				videoUrl: '',
+				showKeyboard: false,
+			}
 		},
 		onLoad(op) {
-			this.id = op.id;
-			this.type = op.objType;
-			this.getDetail();
+			const result = uni.getWindowInfo()
+			this.windowHeight = result.windowHeight
+			console.log('windowHeight', this.windowHeight);
+			uni.setStorageSync('ywinfo', {})
+			this.id = op.id
+			this.getDetail()
+			// this.handleTransfer()
+		},
+		mounted() {
+			window.addEventListener('resize', () => {
+				const currentHeight = window.innerHeight;
+				this.windowHeight = currentHeight
+			});
 		},
 		methods: {
 			priviewImage(url) {
 				uni.previewImage({
 					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.submitFileList = [...submitFileList];
-				this.$set(this.handleParam, 'dealTime', dayjs().format('YYYY-MM-DD HH:mm:ss'));
+				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'))
 			},
 			handleBack() {
-				this.isShowBack = true;
+				this.isShowBack = true
 				// const submitFileList = this.info.submitFileList || []
-				// this.submitFileList = [...submitFileList];
+				// this.submitFileList = [...submitFileList];
 				this.dealBeforeFileList = []
-				this.$set(this.backParam, 'dealTime', dayjs().format('YYYY-MM-DD HH:mm:ss'));
+				this.$set(this.backParam, 'dealTime', dayjs().format('YYYY-MM-DD HH:mm:ss'))
 			},
 			getDetail() {
 				const {
 					id
-				} = this;
+				} = this
 				hiddenDangerDetail(id).then(res => {
-					this.info = res.data;
-				});
+					this.info = res.data
+				})
 				findListFlowDanger({
 					hiddenDangerId: id
 				}).then(res => {
-					this.flowList = res.data;
-				});
+					this.flowList = res.data || []
+				})
 			},
 			onSubmit() {
 				const {
 					dealBeforeFileList,
 					dealAfterFileList,
 					handleParam
-				} = this;
+				} = this
 				if (dealBeforeFileList.length === 0)
 					return uni.showToast({
 						title: '璇蜂笂浼犳暣鏀瑰墠鍥剧墖鎴栬棰�',
 						icon: 'none'
-					});
+					})
 				if (dealAfterFileList.length === 0)
 					return uni.showToast({
 						title: '璇蜂笂浼犳暣鏀瑰悗鍥剧墖鎴栬棰�',
 						icon: 'none'
-					});
+					})
 				dealHiddenDanger({
 					...handleParam,
 					dealBeforeFileList: dealBeforeFileList,
@@ -389,74 +472,75 @@
 					id: this.id
 				}).then(res => {
 					if (res.code === 200) {
-						this.isShowHandle = false;
+						this.isShowHandle = false
 						setTimeout(() => {
 							uni.showToast({
 								title: '鎿嶄綔鎴愬姛',
 								icon: 'success'
-							});
-						});
-						uni.navigateBack();
+							})
+						})
+						uni.navigateBack()
 					}
-				});
+				})
 			},
 			enterTransfer() {
 				const {
 					transferParam,
 					id
-				} = this;
+				} = this
 				if (!transferParam.id)
 					return uni.showToast({
 						title: '璇烽�夋嫨浜哄憳',
 						icon: 'none'
-					});
+					})
 				transferHiddenDanger({
-					checkUserId: transferParam.id,
+					checkUserId: transferParam.memberId,
 					id
 				}).then(res => {
 					if (res.code === 200) {
-						this.isShowTransfer = false;
+						this.isShowTransfer = false
 						setTimeout(() => {
 							uni.showToast({
 								title: '鎿嶄綔鎴愬姛',
 								icon: 'success'
-							});
-						});
-						uni.navigateBack();
+							})
+						})
+						uni.navigateBack()
 					}
-				});
+				})
 			},
 			changeMem(e) {
-				this.transferParam = e;
+				this.transferParam = e
 			},
 			handleTransfer() {
-				this.isShowTransfer = true;
-				this.getMemList();
+				this.isShowTransfer = true
+				this.getMemList()
 			},
 			getMemList() {
-				findHiddenAreaMemberList({
-					model: {
-						...this.transferModel,
-						id: this.info.areaId
-					},
-					...this.pagination
+				userPagePost({
+					...this.transferModel,
+					querySpecial: 1,
+					type: 2,
+					companyType: 1,
+					workStatus: 0
+
 				}).then(res => {
-					this.memberList = res.data || [];
-				});
+					this.memberList = res.data || []
+				})
 			},
 			confirmBackDate(e) {
-				this.$set(this.backParam, 'dealTime', dayjs(e.value).format('YYYY-MM-DD HH:mm:ss'));
-				this.isShowBackDate = false;
+				this.$set(this.backParam, 'dealTime', dayjs(e.value).format('YYYY-MM-DD HH:mm:ss'))
+				this.isShowBackDate = false
 			},
 			confirmHandleDate(e) {
-				this.$set(this.handleParam, 'dealTime', dayjs(e.value).format('YYYY-MM-DD HH:mm:ss'));
-				this.isShowHandleDate = false;
+				this.$set(this.handleParam, 'dealTime', dayjs(e.value).format('YYYY-MM-DD HH:mm:ss'))
+				this.isShowHandleDate = false
 			},
 			onSubBack() {
 				const {
 					dealBeforeFileList,
 					backParam
-				} = this;
+				} = this
 				dealHiddenDanger({
 					...backParam,
 					dealBeforeFileList,
@@ -464,37 +548,37 @@
 					id: this.id
 				}).then(res => {
 					if (res.code === 200) {
-						this.isShowBack = false;
+						this.isShowBack = false
 						setTimeout(() => {
 							uni.showToast({
 								title: '鎿嶄綔鎴愬姛',
 								icon: 'success'
-							});
-						});
-						uni.navigateBack();
+							})
+						})
+						uni.navigateBack()
 					}
-				});
+				})
 			},
 			fileDel(str, i) {
-				this[str].splice(i, 1);
+				this[str].splice(i, 1)
 			},
 			uploadBeImage() {
-				this.showUploadBe = false;
-				let token = uni.getStorageSync('token') || '';
+				this.showUploadBe = false
+				let token = uni.getStorageSync('token') || ''
 				uni.chooseImage({
-					count: 4,
+					count: 9,
 					success: chooseImageRes => {
 						uni.showLoading({
 							title: '涓婁紶涓�',
 							mask: true
-						});
-						const tempFilePaths = chooseImageRes.tempFilePaths;
+						})
+						const tempFilePaths = chooseImageRes.tempFilePaths
 						let imgs = tempFilePaths.map((value, index) => {
 							return {
 								name: 'file',
 								uri: value
-							};
-						});
+							}
+						})
 						uni.uploadFile({
 							url: `${uploadUrl}`,
 							files: imgs,
@@ -506,41 +590,41 @@
 								Dm_user_token: token
 							},
 							success: uploadFileRes => {
-								let res = JSON.parse(uploadFileRes.data);
+								let res = JSON.parse(uploadFileRes.data)
 								let obj = {
 									type: '0'
-								};
+								}
 								if (res.data && res.data.length > 0) {
 									res.data.forEach(i => {
-										i.type = 0;
-										i.fileurl = i.imgaddr;
-										i.fileurlFull = i.url;
-										this.dealBeforeFileList.push(i);
-									});
+										i.type = 0
+										i.fileurl = i.imgaddr
+										i.fileurlFull = i.url
+										this.dealBeforeFileList.push(i)
+									})
 								}
 							},
 							fail(err) {
-								console.log('err', err);
+								console.log('err', err)
 							},
 							complete() {
-								uni.hideLoading();
+								uni.hideLoading()
 								// if (i === chooseImageRes.tempFilePaths.length - 1) {
 								//   uni.hideLoading()
 								// }
 							}
-						});
+						})
 					}
-				});
+				})
 			},
 			uploadBeVideo() {
-				this.showUploadBe = false;
-				let token = uni.getStorageSync('token') || '';
+				this.showUploadBe = false
+				let token = uni.getStorageSync('token') || ''
 				uni.chooseVideo({
 					success: chooseImageRes => {
 						uni.showLoading({
 							title: '涓婁紶涓�',
 							mask: true
-						});
+						})
 						uni.uploadFile({
 							url: `${uploadUrl}`,
 							filePath: chooseImageRes.tempFilePath,
@@ -552,40 +636,40 @@
 								folder: 'HIDDEN_DANGER_FILE'
 							},
 							success: uploadFileRes => {
-								let res = JSON.parse(uploadFileRes.data);
+								let res = JSON.parse(uploadFileRes.data)
 								if (res.data && res.data.length > 0) {
 									res.data.forEach(i => {
-										i.type = 1;
-										i.fileurl = i.imgaddr;
-										i.fileurlFull = i.url;
-										this.dealBeforeFileList.push(i);
-									});
+										i.type = 1
+										i.fileurl = i.imgaddr
+										i.fileurlFull = i.url
+										this.dealBeforeFileList.push(i)
+									})
 								}
 							},
 							complete() {
-								uni.hideLoading();
+								uni.hideLoading()
 							}
-						});
+						})
 					}
-				});
+				})
 			},
 			uploadAfImage() {
-				this.showUploadAf = false;
-				let token = uni.getStorageSync('token') || '';
+				this.showUploadAf = false
+				let token = uni.getStorageSync('token') || ''
 				uni.chooseImage({
-					count: 4,
+					count: 9,
 					success: chooseImageRes => {
 						uni.showLoading({
 							title: '涓婁紶涓�',
 							mask: true
-						});
-						const tempFilePaths = chooseImageRes.tempFilePaths;
+						})
+						const tempFilePaths = chooseImageRes.tempFilePaths
 						let imgs = tempFilePaths.map((value, index) => {
 							return {
 								name: 'file',
 								uri: value
-							};
-						});
+							}
+						})
 						uni.uploadFile({
 							url: `${uploadUrl}`,
 							files: imgs,
@@ -597,38 +681,38 @@
 								Dm_user_token: token
 							},
 							success: uploadFileRes => {
-								let res = JSON.parse(uploadFileRes.data);
+								let res = JSON.parse(uploadFileRes.data)
 								if (res.data && res.data.length > 0) {
 									res.data.forEach(i => {
-										i.type = 0;
-										i.fileurl = i.imgaddr;
-										i.fileurlFull = i.url;
-										this.dealAfterFileList.push(i);
-									});
+										i.type = 0
+										i.fileurl = i.imgaddr
+										i.fileurlFull = i.url
+										this.dealAfterFileList.push(i)
+									})
 								}
 							},
 							fail(err) {
-								console.log('err', err);
+								console.log('err', err)
 							},
 							complete() {
-								uni.hideLoading();
+								uni.hideLoading()
 								// if (i === chooseImageRes.tempFilePaths.length - 1) {
 								//   uni.hideLoading()
 								// }
 							}
-						});
+						})
 					}
-				});
+				})
 			},
 			uploadAfVideo() {
-				this.showUploadAf = false;
-				let token = uni.getStorageSync('token') || '';
+				this.showUploadAf = false
+				let token = uni.getStorageSync('token') || ''
 				uni.chooseVideo({
 					success: chooseImageRes => {
 						uni.showLoading({
 							title: '涓婁紶涓�',
 							mask: true
-						});
+						})
 						uni.uploadFile({
 							url: `${uploadUrl}`,
 							filePath: chooseImageRes.tempFilePath,
@@ -640,40 +724,40 @@
 								folder: 'HIDDEN_DANGER_FILE'
 							},
 							success: uploadFileRes => {
-								let res = JSON.parse(uploadFileRes.data);
+								let res = JSON.parse(uploadFileRes.data)
 								if (res.data && res.data.length > 0) {
 									res.data.forEach(i => {
-										i.type = 1;
-										i.fileurl = i.imgaddr;
-										i.fileurlFull = i.url;
-										this.dealAfterFileList.push(i);
-									});
+										i.type = 1
+										i.fileurl = i.imgaddr
+										i.fileurlFull = i.url
+										this.dealAfterFileList.push(i)
+									})
 								}
 							},
 							complete() {
-								uni.hideLoading();
+								uni.hideLoading()
 							}
-						});
+						})
 					}
-				});
+				})
 			},
 			uploadImage() {
-				this.showUpload = false;
-				let token = uni.getStorageSync('token') || '';
+				this.showUpload = false
+				let token = uni.getStorageSync('token') || ''
 				uni.chooseImage({
-					count: 4,
+					count: 9,
 					success: chooseImageRes => {
 						uni.showLoading({
 							title: '涓婁紶涓�',
 							mask: true
-						});
-						const tempFilePaths = chooseImageRes.tempFilePaths;
+						})
+						const tempFilePaths = chooseImageRes.tempFilePaths
 						let imgs = tempFilePaths.map((value, index) => {
 							return {
 								name: 'file',
 								uri: value
-							};
-						});
+							}
+						})
 						uni.uploadFile({
 							url: `${uploadUrl}`,
 							files: imgs,
@@ -685,38 +769,38 @@
 								Dm_user_token: token
 							},
 							success: uploadFileRes => {
-								let res = JSON.parse(uploadFileRes.data);
+								let res = JSON.parse(uploadFileRes.data)
 								if (res.data && res.data.length > 0) {
 									res.data.forEach(i => {
-										i.type = 0;
-										i.fileurl = i.imgaddr;
-										i.fileurlFull = i.url;
-										this.submitFileList.push(i);
-									});
+										i.type = 0
+										i.fileurl = i.imgaddr
+										i.fileurlFull = i.url
+										this.submitFileList.push(i)
+									})
 								}
 							},
 							fail(err) {
-								console.log('err', err);
+								console.log('err', err)
 							},
 							complete() {
-								uni.hideLoading();
+								uni.hideLoading()
 								// if (i === chooseImageRes.tempFilePaths.length - 1) {
 								//   uni.hideLoading()
 								// }
 							}
-						});
+						})
 					}
-				});
+				})
 			},
 			uploadVideo() {
-				this.showUpload = false;
-				let token = uni.getStorageSync('token') || '';
+				this.showUpload = false
+				let token = uni.getStorageSync('token') || ''
 				uni.chooseVideo({
 					success: chooseImageRes => {
 						uni.showLoading({
 							title: '涓婁紶涓�',
 							mask: true
-						});
+						})
 						uni.uploadFile({
 							url: `${uploadUrl}`,
 							filePath: chooseImageRes.tempFilePath,
@@ -728,43 +812,52 @@
 								folder: 'HIDDEN_DANGER_FILE'
 							},
 							success: uploadFileRes => {
-								let res = JSON.parse(uploadFileRes.data);
+								let res = JSON.parse(uploadFileRes.data)
 								if (res.data && res.data.length > 0) {
 									res.data.forEach(i => {
-										i.type = 1;
-										i.fileurl = i.imgaddr;
-										i.fileurlFull = i.url;
-										this.submitFileList.push(i);
-									});
+										i.type = 1
+										i.fileurl = i.imgaddr
+										i.fileurlFull = i.url
+										this.submitFileList.push(i)
+									})
 								}
 							},
 							complete() {
-								uni.hideLoading();
+								uni.hideLoading()
 							}
-						});
+						})
 					}
-				});
+				})
 			}
 		}
-	};
+	}
 </script>
-<style>
+
+<style lang="scss">
 	page {
 		background-color: #f7f7f7;
+
+		::v-deep .u-popup__content {
+			border-top: 1rpx solid #cccccc;
+		}
 	}
-</style>
-<style lang="scss">
+
 	.main_app {
 		background-color: #fff;
 		padding-bottom: 0;
-		.flow_title {
-			font-weight: 600;
-			font-size: 32rpx;
-			color: #222222;
-			margin-bottom: 24rpx;
+		position: relative;
+
+		.flow_title {
+			font-weight: 600;
+			font-size: 32rpx;
+			color: #222222;
+			margin-bottom: 24rpx;
 		}
+
 		.flow_wrap {
-			padding: 30rpx 0;
+			padding: 30rpx;
+			margin: 0 -30rpx;
+			background-color: #fff;
 
 			.list {
 				.item {
@@ -801,6 +894,7 @@
 							position: absolute;
 							right: 0;
 							bottom: 0;
+							z-index: 999;
 						}
 					}
 
@@ -831,17 +925,19 @@
 							}
 						}
 
-						.line{
-							.company{
-								font-size: 26rpx;
-								color: #777777;
-							}
-							.status-green{
-								color: $uni-color-primary;
-							}
-							.status-red{
-								color: red;
-							}
+						.line {
+							.company {
+								font-size: 26rpx;
+								color: #777777;
+							}
+
+							.status-green {
+								color: $uni-color-primary;
+							}
+
+							.status-red {
+								color: red;
+							}
 						}
 
 						.remark {
@@ -889,9 +985,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;
@@ -901,6 +997,10 @@
 			align-items: center;
 			justify-content: center;
 			position: relative;
+
+			&:nth-of-type(4n) {
+				margin-right: 0;
+			}
 
 			.close {
 				position: absolute;
@@ -916,14 +1016,18 @@
 
 			video {
 				width: 100%;
-				max-height: 120rpx;
+				max-height: 156rpx;
 			}
 		}
 
-		.module_list {
-			.title{
-				
+		.module_list {
+			.title {
+				font-weight: 600;
+				font-size: 32rpx;
+				color: #222222;
+				padding-top: 28rpx;
 			}
+
 			.item {
 				padding: 30rpx 0;
 				border-bottom: 1rpx solid #e5e5e5;
@@ -987,24 +1091,30 @@
 			.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;
+					}
 				}
+
 
 				.img {
 					width: 100%;
@@ -1012,7 +1122,8 @@
 				}
 
 				.video {
-					height: 160rpx;
+					width: 100%;
+					max-height: 100%;
 				}
 			}
 
@@ -1023,9 +1134,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;
@@ -1042,7 +1157,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;
 			}
 
@@ -1058,8 +1173,9 @@
 			position: fixed;
 			bottom: 0;
 			width: 100%;
+			z-index: 9999;
 			left: 0;
-			padding: 30rpx 10rpx 60rpx;
+			padding: 10rpx 10rpx 30rpx;
 			display: flex;
 			justify-content: space-between;
 			background: #ffffff;
@@ -1156,10 +1272,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;
@@ -1170,11 +1286,16 @@
 				justify-content: center;
 				position: relative;
 
+				&:nth-of-type(4n) {
+					margin-right: 0;
+				}
+
 				.close {
 					position: absolute;
 					right: -20rpx;
 					top: -20rpx;
-					z-index: 9999;
+					z-index: 999999999999;
+					color: #fff;
 				}
 
 				image {
@@ -1184,16 +1305,32 @@
 
 				video {
 					width: 100%;
-					max-height: 120rpx;
+					height: 100%;
 				}
 			}
 		}
-
 		.emyty {
 			width: 750rpx;
 			height: 20rpx;
 			background-color: #f7f7f7;
 			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%);
 		}
 	}
 
@@ -1210,21 +1347,32 @@
 	}
 
 	.member_list {
-		height: 920rpx;
 		overflow: auto;
-
 		.line {
 			display: flex;
 			align-items: center;
 			border-bottom: 1rpx solid #e5e5e5;
 			padding: 30rpx 0;
-
+			
 			.avatar {
 				width: 64rpx;
 				height: 64rpx;
 				border-radius: 50%;
 				overflow: hidden;
 				margin-right: 20rpx;
+			}
+
+			.img_name {
+				width: 64rpx;
+				height: 64rpx;
+				line-height: 64rpx;
+				text-align: center;
+				border-radius: 50%;
+				overflow: hidden;
+				margin-right: 20rpx;
+				background: $uni-color-primary;
+				color: #fff;
+				border: 1rpx solid $uni-color-primary;
 			}
 
 			.content {
@@ -1282,6 +1430,31 @@
 		}
 	}
 
+	.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;
 

--
Gitblit v1.9.3