From 78921416615f450f4cc29ec4f740fbf1b47d8b00 Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期二, 19 八月 2025 17:18:28 +0800
Subject: [PATCH] 注册登录更改

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

diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 402fc9e..c2b05ca 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -378,18 +378,24 @@
   <my-footer />
 </template>
 
-<script lang="ts" setup>
+<script lang="tsx" setup>
 import { onMounted, ref, computed, reactive } from "vue";
 import MyFooter from "./component/myFooter.vue";
 import MyHeader from "./component/myHeader.vue";
 import { useUserStoreHook } from "@/store/modules/user";
 import { exRole } from "@/api/register/index";
 import { storageLocal, isString, isIncludeAllChildren } from "@pureadmin/utils";
+import { initRouter, getTopMenu } from "@/router/utils";
 
 import { getToken } from "@/utils/auth";
 import { useRoute, useRouter } from "vue-router";
 const router = useRouter();
 import { useUserStore } from "@/store/modules/user";
+import { addDialog } from "@/components/ReDialog";
+import { applyRole } from "@/api/register/index";
+import { message } from "@/utils/message";
+import type { userType } from "@/store/types";
+import type { RoleItem } from "@/api/types";
 
 const userStore = useUserStore();
 
@@ -402,14 +408,14 @@
 /** 瑙掕壊锛堝鏋滄樀绉颁负绌哄垯鏄剧ず鐢ㄦ埛鍚嶏級 */
 const getUseRoles = () => {
   state.userInfo = storageLocal().getItem("user-info");
-  state.userInfo?.exRoles.forEach(element => {
+  state.userInfo?.exRoles.forEach((element: RoleItem) => {
     state.rolesCode.push(element.code);
   });
 };
 const state = reactive({
   roleList: [],
   rolesCode: [],
-  userInfo: {},
+  userInfo: {} as userType,
   accessToken: ""
 });
 onMounted(() => {
@@ -432,20 +438,42 @@
 };
 // 鐢宠
 const toApply = item => {
-  router.push({ name: "RegisterNav", query: { code: item.code } });
+  addDialog({
+    width: "20%",
+    title: "纭淇℃伅",
+    contentRenderer: () => <p>鏄惁鐢宠涓簕item.name}锛�</p>, // jsx 璇硶 锛堟敞鎰忓湪.vue鏂囦欢鍚敤jsx璇硶锛岄渶瑕佸湪script寮�鍚痩ang="tsx"锛�
+    closeCallBack: ({ options, args }) => {
+      if (args?.command === "cancel") {
+        // 鎮ㄧ偣鍑讳簡鍙栨秷鎸夐挳
+      } else if (args?.command === "sure") {
+        applyRole({ ruleCode: item.code }).then(res => {
+          if (res.code == 200) {
+            message("鐢宠鎴愬姛锛�", { type: "success" });
+          } else {
+            message(res?.message || "鐢宠澶辫触锛�", { type: "error" });
+          }
+        });
+      } else {
+      }
+    }
+  });
+  // router.push({ name: "RegisterNav", query: { code: item.code } });
 };
 // 鍘婚椤�
 const toWelcome = async item => {
   if (useUserStoreHook().nowRole.code !== item.code) {
-    await useUserStoreHook().changeLogoInExRule({
-      ruleCode: item.code
+    // 鑾峰彇鍚庣璺敱
+    initRouter().then(() => {
+      useUserStoreHook().changeLogoInExRule({
+        ruleCode: item.code
+      });
     });
   }
-  router.push({ name: "Mine" });
+  router.push({ name: "Welcome" });
 };
 // 鍘荤櫥褰�
 const toLogin = item => {
-  router.push({ name: "Login", query: item });
+  router.push({ name: "Login" });
 };
 </script>
 

--
Gitblit v1.9.1