From 357082150fac10f8f27b6d45d2e65b6613c748ee Mon Sep 17 00:00:00 2001 From: du <13220750630.163.com> Date: 星期五, 18 四月 2025 11:16:40 +0800 Subject: [PATCH] 片头片尾预览 --- easegen-front/src/views/File/index.vue | 61 ++++++++++++++++++++++++------ 1 files changed, 49 insertions(+), 12 deletions(-) diff --git a/easegen-front/src/views/File/index.vue b/easegen-front/src/views/File/index.vue index d6f1ceb..37857a1 100644 --- a/easegen-front/src/views/File/index.vue +++ b/easegen-front/src/views/File/index.vue @@ -11,22 +11,23 @@ @keyup.enter="handleQuery" /> </el-form-item> + <el-form-item label="鏂囦欢绫诲埆" prop="type"> + <el-select v-model="queryParams.type" placeholder="璇烽�夋嫨鏂囦欢绫诲埆" style="width: 180px;"> + <el-option label="鐗囧ご" :value="VIDEO_TYPE.HEAD" /> + <el-option label="鐗囧熬" :value="VIDEO_TYPE.TAIL" /> + </el-select> + </el-form-item> <el-form-item> - <el-button type="primary" size="default" @click="handleQuery">鎼滅储</el-button> - <el-button size="default" @click="resetQuery">閲嶇疆</el-button> - </el-form-item> - </el-form> - - <!-- 鏂板鎸夐挳 --> - <el-row :gutter="10" class="mb8"> - <el-col :span="1.5"> + <el-button type="primary" size="default" @click="handleQuery" :icon="Search">鎼滅储</el-button> + <el-button size="default" @click="resetQuery" :icon="Refresh">閲嶇疆</el-button> <el-button type="primary" size="default" @click="handleAdd" + :icon="Plus" >鏂板</el-button> - </el-col> - </el-row> + </el-form-item> + </el-form> <!-- 琛ㄦ牸 --> <el-table v-loading="loading" :data="fileList" border> @@ -45,6 +46,12 @@ </el-table-column> <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> <template #default="scope"> + <el-button + size="mini" + type="text" + icon="el-icon-view" + @click="handlePreview(scope.row.url)" + >棰勮</el-button> <el-button size="mini" type="text" @@ -100,6 +107,16 @@ </div> </template> </el-dialog> + + <!-- 瑙嗛棰勮寮圭獥 --> + <el-dialog title="瑙嗛棰勮" v-model="previewVisible" width="50%" append-to-body> + <video + v-if="previewUrl" + :src="previewUrl" + controls + style="width: 100%" + >鎮ㄧ殑娴忚鍣ㄤ笉鏀寔 video 鏍囩銆�</video> + </el-dialog> </div> </template> @@ -109,7 +126,11 @@ import * as DigitalHumansApi from '@/api/system/file/index' import dayjs from 'dayjs' const message = useMessage() // 娑堟伅寮圭獥 - +import { + Refresh, + Search, + Plus, +} from '@element-plus/icons-vue' // 瑙嗛绫诲埆甯搁噺 const VIDEO_TYPE = { HEAD: '1', // 鐗囧ご @@ -128,6 +149,7 @@ pageNo: number pageSize: number name?: string + type?: string } // 閬僵灞� @@ -142,7 +164,8 @@ const queryParams = reactive<QueryParams>({ pageNo: 1, pageSize: 10, - name: undefined + name: undefined, + type: '' }) // 琛ㄥ崟寮曠敤 @@ -169,6 +192,10 @@ { required: true, message: "璇蜂笂浼犳枃浠�", trigger: "change" } ] }) + +// 棰勮寮圭獥 +const previewVisible = ref(false) +const previewUrl = ref('') // 鏂板鎸夐挳鎿嶄綔 const handleAdd = () => { @@ -285,6 +312,16 @@ document.body.removeChild(link) } +// 棰勮鎸夐挳鎿嶄綔 +const handlePreview = (url: string) => { + if (!url) { + message.warning("鏈壘鍒拌祫婧愭枃浠讹紒") + return + } + previewUrl.value = url + previewVisible.value = true +} + // 鏍煎紡鍖栨椂闂� const parseTime = (time: number) => { return dayjs(time).format('YYYY-MM-DD HH:mm:ss') -- Gitblit v1.9.3