From d492850f1cc64ddcfaf43798af9c76c2505414fd Mon Sep 17 00:00:00 2001
From: renkang <8417338+k94314517@user.noreply.gitee.com>
Date: 星期五, 24 一月 2025 18:24:31 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1

---
 h5/pages/polling/point.vue |   89 +++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 82 insertions(+), 7 deletions(-)

diff --git a/h5/pages/polling/point.vue b/h5/pages/polling/point.vue
index 1288d07..122737b 100644
--- a/h5/pages/polling/point.vue
+++ b/h5/pages/polling/point.vue
@@ -28,7 +28,12 @@
 			<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>
+					<!-- <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>
 			<view v-if="info.dealInfo" class="desc">{{ info.dealInfo }}</view>
@@ -96,7 +101,13 @@
 			@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>
 </template>
 
@@ -135,7 +146,11 @@
 							name: '璺宠繃'
 						},
 					]
-				],
+				],
+				
+				videoPlay: false,
+				videoContext: null,
+				videoUrl: ''
 			};
 		},
 		onLoad(option) {
@@ -204,6 +219,26 @@
 				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 // 鍊紅rue涓鸿繘鍏ュ叏灞忥紝false涓洪��鍑哄叏灞�
+				if (!fullScreen) {
+					//閫�鍑哄叏灞�
+					this.videoPlay = false // 闅愯棌鎾斁鐩掑瓙
+				}
+			},
+			closeVideo() {
+				this.videoPlay = false
+				this.videoContext = null
 			},
 			fileDel(str, i) {
 				this[str].splice(i, 1);
@@ -470,11 +505,51 @@
 		image {
 			width: 100%;
 			height: 100%;
+		}
+		video {
+			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_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>
\ No newline at end of file

--
Gitblit v1.9.3