diff --git a/pages/p2p/videoLog.vue b/pages/p2p/videoLog.vue
index 9bec776..4cff9e5 100644
--- a/pages/p2p/videoLog.vue
+++ b/pages/p2p/videoLog.vue
@@ -59,11 +59,9 @@
{{ item.event_type_name }}
- 删除
-
+ class="i-material-symbols:more-horiz text-#999999 size-45 font-bold"
+ @click="operateEvent(item.event_id)"
+ >
{{ formatTime(item.event_time) }}
@@ -72,7 +70,17 @@
{{ item.text }}
-
+
{{ formatRemainingTime(item.video_expire_at) }}
@@ -121,6 +129,9 @@
const requestFlag = ref(false)
const deviceInfo = ref(null)
+ const fullscreenVideoId = ref(null)
+ const isFullscreenChanging = ref(false)
+ const currentPlayingVideoId = ref(null)
onMounted(async () => {
deviceInfo.value = await $basic.getDeviceInfo()
@@ -135,6 +146,17 @@
}
})
+ const operateEvent = eventId => {
+ uni.showActionSheet({
+ itemList: ['删除'],
+ success: ({ tapIndex }) => {
+ if (tapIndex === 0) {
+ deleteEvent(eventId)
+ }
+ }
+ })
+ }
+
const toWebview = () => {
$basic.routeJump({
name: 'webview',
@@ -343,4 +365,59 @@
}
return { code, data, message }
}
+
+ const playVideoFullscreen = eventId => {
+ if (fullscreenVideoId.value === eventId) {
+ return
+ }
+
+ if (isFullscreenChanging.value) {
+ return
+ }
+
+ if (currentPlayingVideoId.value && currentPlayingVideoId.value !== eventId) {
+ const currentVideoContext = uni.createVideoContext(`video-${currentPlayingVideoId.value}`)
+ currentVideoContext.pause()
+ }
+
+ const videoId = `video-${eventId}`
+ const videoContext = uni.createVideoContext(videoId)
+
+ isFullscreenChanging.value = true
+ currentPlayingVideoId.value = eventId
+ videoContext.play()
+
+ setTimeout(() => {
+ if (fullscreenVideoId.value !== eventId) {
+ videoContext.requestFullScreen({
+ direction: 0
+ })
+ }
+ setTimeout(() => {
+ isFullscreenChanging.value = false
+ }, 500)
+ }, 300)
+ }
+
+ const onFullscreenChange = (eventId, event) => {
+ if (event.detail.fullScreen) {
+ fullscreenVideoId.value = eventId
+ } else {
+ fullscreenVideoId.value = null
+ }
+ }
+
+ const onVideoPlay = eventId => {
+ if (currentPlayingVideoId.value && currentPlayingVideoId.value !== eventId) {
+ const currentVideoContext = uni.createVideoContext(`video-${currentPlayingVideoId.value}`)
+ currentVideoContext.pause()
+ }
+ currentPlayingVideoId.value = eventId
+ }
+
+ const onVideoPause = eventId => {
+ if (currentPlayingVideoId.value === eventId) {
+ currentPlayingVideoId.value = null
+ }
+ }