From ddbf9504fc5faf6764fffa4e9263a3ad927331d8 Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期一, 14 七月 2025 17:14:26 +0800
Subject: [PATCH] '-'

---
 src/views/home/index.vue |   56 ++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 44 insertions(+), 12 deletions(-)

diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 9645a61..b1fcd4d 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -163,29 +163,36 @@
               v-if="state.rolesCode.indexOf(item.code) !== -1"
               :underline="false"
               class="hover:cursor-pointer"
-              @click="toRegister"
+              @click="logOut"
               >閫�鍑�</el-link
+            >
+            <el-link
+              v-else-if="!state.accessToken"
+              :underline="false"
+              class="hover:cursor-pointer"
+              @click="toRegister"
+              >娉ㄥ唽</el-link
             >
             <el-link
               v-else
               :underline="false"
               class="hover:cursor-pointer"
-              @click="toRegister"
+              @click="toApply"
               >鐢宠</el-link
             ><span class="m-2">|</span>
             <el-link
               v-if="state.rolesCode.indexOf(item.code) !== -1"
               :underline="false"
               class="hover:cursor-pointer"
-              @click="toWelcome"
+              @click="toWelcome(item)"
               >杩涘叆</el-link
             >
             <el-link
               v-else
               :underline="false"
               class="hover:cursor-pointer"
-              :disabled="state.accessToken"
-              @click="toLogin"
+              :disabled="!!state.accessToken"
+              @click="toLogin(item)"
               >鐧诲綍</el-link
             >
           </div>
@@ -394,6 +401,13 @@
 
 import { getToken } from "@/utils/auth";
 import { useRoute, useRouter } from "vue-router";
+const router = useRouter();
+import { useUserStore } from "@/store/modules/user";
+
+const userStore = useUserStore();
+
+// 璁块棶 state 灞炴��
+console.log(userStore.roles,'-'); // 鐩存帴鑾峰彇鍊�
 defineOptions({
   name: "Main"
 });
@@ -401,7 +415,7 @@
 /** 瑙掕壊锛堝鏋滄樀绉颁负绌哄垯鏄剧ず鐢ㄦ埛鍚嶏級 */
 const getUseRoles = () => {
   state.userInfo = storageLocal().getItem("user-info");
-  state.userInfo.exRoles.forEach(element => {
+  state.userInfo?.exRoles.forEach(element => {
     state.rolesCode.push(element.code);
   });
 };
@@ -416,18 +430,32 @@
     state.roleList = res.result;
   });
   getUseRoles();
-  state.accessToken = getToken().accessToken;
+  state.accessToken = getToken()?.accessToken;
 });
 
-const router = useRouter();
 const toRegister = () => {
   router.push({ name: "Register" });
 };
-const toWelcome = () => {
-  router.push({ name: "Welcome" });
+// 閫�鍑�
+const logOut = () => {
+  useUserStoreHook().logOut();
 };
-const toLogin = () => {
-  router.push({ name: "Login" });
+// 鐢宠
+const toApply = () => {};
+// 鍘婚椤�
+const toWelcome = item => {
+  let role = state.userInfo?.exRoles.find(ele => {
+    return item.code == ele.code;
+  });
+  console.log(role);
+  if (role.hasFlsh) {
+    return router.push({ name: "Welcome" });
+  }
+  router.push({ name: "RegisterNav", query: { code: role.code } });
+};
+// 鍘荤櫥褰�
+const toLogin = item => {
+  router.push({ name: "Login", query: item });
 };
 </script>
 
@@ -750,4 +778,8 @@
 a:active {
   color: #fff;
 }
+.el-link.is-disabled {
+  color: #a8abb2;
+  cursor: not-allowed;
+}
 </style>

--
Gitblit v1.9.1