From 4800366c4ae36b4900b34b7f183390fd9cd0d33b Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期一, 28 十月 2024 18:45:14 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' into test --- src/views/train/data-list/index.vue | 106 +++++++++++++++++++++++++++++++--------------------- 1 files changed, 63 insertions(+), 43 deletions(-) diff --git a/src/views/train/data-list/index.vue b/src/views/train/data-list/index.vue index 72bfe2c..977a7bc 100644 --- a/src/views/train/data-list/index.vue +++ b/src/views/train/data-list/index.vue @@ -1,57 +1,77 @@ <template> <div class="list-container w-full h-full"> <el-scrollbar> - <el-row :gutter="20"> - <el-col :span="6" v-for="item in dataList"> - <el-card shadow="hover" class="list-card cursor-pointer" :body-style="{ padding: 0 }" @click="itemClick(item)"> - <div class="img-container w-full"> - <img src="@/assets/image/list-card-bg.jpg" class="w-full"> - </div> - <div class="item-info p-3"> - <div class="info-title font-bold">{{ item.title }}</div> - <div class="info-teacher flex text-sm text-gray-500"> - <div class="info-label">涓昏:</div> - <div class="info-text">{{ item.teacher }}</div> + <div class="list-content w-full overflow-x-hidden"> + <el-row :gutter="20"> + <el-col :span="6" v-for="item in props.dataList" class="mb-5"> + <el-card + shadow="hover" + class="list-card cursor-pointer" + :body-style="{ padding: 0 }" + @click="itemClick(item)" + > + <div class="img-container w-full"> + <img src="@/assets/image/list-card-bg.jpg" class="w-full" /> </div> - <div class="info-time flex text-sm text-gray-500"> - <div class="info-label">寮�濮嬫椂闂�:</div> - <div class="info-text">{{ item.startTime }}</div> + <div class="item-info p-3"> + <div class="info-title font-bold">{{ item.meetName }}</div> + <div class="info-teacher flex text-sm text-gray-500"> + <div class="info-label">涓昏:</div> + <div class="info-text">{{ item.teacherName }}</div> + </div> + <div class="info-time flex text-sm text-gray-500"> + <div class="info-label">寮�濮嬫椂闂�:</div> + <div class="info-text">{{ item.startTime }}</div> + </div> + <div class="info-time flex text-sm text-gray-500"> + <div class="info-label">缁撴潫鏃堕棿:</div> + <div class="info-text">{{ item.endTime }}</div> + </div> </div> - <div class="info-time flex text-sm text-gray-500"> - <div class="info-label">缁撴潫鏃堕棿:</div> - <div class="info-text">{{ item.endTime }}</div> - </div> - </div> - </el-card> - </el-col> - </el-row> + </el-card> + </el-col> + </el-row> + </div> </el-scrollbar> </div> </template> <script setup> -import { ref } from 'vue'; -import { Timer } from '@element-plus/icons-vue'; -import { useRouter } from 'vue-router'; +import { storeToRefs } from "pinia"; +import { useRouter } from "vue-router"; +import { useUserStore } from "@/store/index.js"; +import { classMeet } from "@/api/modules/meet.js"; + +const userStore = useUserStore(); +const { userInfo } = storeToRefs(userStore); const router = useRouter(); - -const dataList = ref([ - { - title: '娴嬭瘯1', - startTime: '2024-6-13 8:00', - endTime: '2024-6-13 8:00', - teacher: '娴嬭瘯娴嬭瘯', - roomName: 'test' - } -]) - - +const props = defineProps({ + dataList: { + type: Array, + default: () => [], + }, +}); +const userId = JSON.parse(localStorage.getItem('user')).userInfo.id const itemClick = (item) => { - if(window.electron) { - window.electron.openNewWindow(); - } -} - + classMeet(item.id) + .then((res) => { + if (window.webBridge) { + window.webBridge.openNewWindow(JSON.stringify(item)); + } else { + let path = router.resolve({ + path: "/meet", + query: { + meetName: item.meetName, + id: item.id, + userName: userInfo.value?.realName + "_" + userId || "", + userCode: userInfo.value?.phone + "_" + userId || "", + }, + }); + window.open(path.href, "_blank"); + } + }) + .catch((err) => {}); +}; </script> <style lang="scss" scoped> @@ -75,4 +95,4 @@ .list-card { border-radius: 10px; } -</style> \ No newline at end of file +</style> -- Gitblit v1.8.0