From b6ade76d1e99a873edf6419689b82d1b66ab7edb Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 30 十月 2024 20:28:52 +0800
Subject: [PATCH] 文字调整

---
 src/views/train/data-list/index.vue |   86 ++++++++++++++++++++++++++++--------------
 1 files changed, 57 insertions(+), 29 deletions(-)

diff --git a/src/views/train/data-list/index.vue b/src/views/train/data-list/index.vue
index 3fe4394..c2865a2 100644
--- a/src/views/train/data-list/index.vue
+++ b/src/views/train/data-list/index.vue
@@ -4,63 +4,91 @@
       <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)">
+            <el-card
+              shadow="hover"
+              :class="{'list-card': true, 'cursor-pointer':item.status === 1, 'disable-click': item.status !== 1}"
+              :body-style="{ padding: 0 }"
+              @click="itemClick(item)"
+            >
               <div class="img-container w-full">
-                <img src="@/assets/image/list-card-bg.jpg" class="w-full">
+                <img src="@/assets/image/list-card-bg.jpg" class="w-full" />
               </div>
-              <div class="item-info p-3">
+              <div class="item-info p-3" style="position: relative">
                 <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 class="info-teacher flex text-sm text-gray-500" style="margin-top: 5px">
+                  <div class="info-label">涓昏锛�</div>
+                  <div class="info-text">{{ item.teacherNamesStr }}</div>
                 </div>
                 <div class="info-time flex text-sm text-gray-500">
-                  <div class="info-label">寮�濮嬫椂闂�:</div>
+                  <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-label">缁撴潫鏃堕棿锛�</div>
                   <div class="info-text">{{ item.endTime }}</div>
+                </div>
+                <div class="info-text" style="position: absolute; top: 12px; right: 2px">
+                  <el-tag type="info" effect="dark" v-if="item.status === 0">
+                    寰呭紑濮�
+                  </el-tag>
+                  <el-tag type="danger" effect="dark" v-else-if="item.status === 1">
+                    杩涜涓�
+                  </el-tag>
+                  <el-tag type="warning" effect="dark" v-else-if="item.status === 2">
+                    宸茬粨鏉�
+                  </el-tag>
                 </div>
               </div>
             </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 props = defineProps({
   dataList: {
     type: Array,
-    default: () => []
-  }
+    default: () => [],
+  },
 });
-
-
+const userId = JSON.parse(localStorage.getItem('user')).userInfo.id
 const itemClick = (item) => {
-  if (window.webBridge) {
-    window.webBridge.openNewWindow(JSON.stringify(item));
-  } else {
-    let path = router.resolve({
-      path: "/meet",
-      query: { meetName: item.meetName, id: item.id }
-    });
-    window.open(path.href, '_blank');
-  }
-}
-
+  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>
+.disable-click {
+  pointer-events: none;
+}
 .item {
   width: 100%;
   min-height: 120px;
@@ -81,4 +109,4 @@
 .list-card {
   border-radius: 10px;
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.8.0