From 3f6bf89b1985b6668f02ffcc9af577b412e92e45 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期一, 24 三月 2025 17:17:45 +0800
Subject: [PATCH] bug修改

---
 src/layout/components/Navbar.vue |  111 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 104 insertions(+), 7 deletions(-)

diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
index 43e4b3f..2f8c19a 100644
--- a/src/layout/components/Navbar.vue
+++ b/src/layout/components/Navbar.vue
@@ -34,9 +34,12 @@
 <!--              <router-link to="/user/profile">-->
 <!--                <el-dropdown-item>个人中心</el-dropdown-item>-->
 <!--              </router-link>-->
-<!--              <el-dropdown-item command="setLayout" v-if="settingsStore.showSettings">-->
-<!--                <span>布局设置</span>-->
-<!--              </el-dropdown-item>-->
+              <el-dropdown-item command="info">
+                <span>基本信息</span>
+              </el-dropdown-item>
+              <el-dropdown-item command="password">
+                <span>修改密码</span>
+              </el-dropdown-item>
               <el-dropdown-item divided command="logout">
                 <span>退出登录</span>
               </el-dropdown-item>
@@ -45,11 +48,14 @@
         </el-dropdown>
       </div>
     </div>
+    <review-dialog ref="reviewRef" ></review-dialog>
+    <register ref="regRef" @getList="getList" />
+    <supervise-dialog ref="superRef"></supervise-dialog>
   </div>
 </template>
 
 <script setup>
-import { ElMessageBox } from 'element-plus'
+import {ElMessage, ElMessageBox} from 'element-plus'
 import Breadcrumb from '@/components/Breadcrumb'
 import TopNav from '@/components/TopNav'
 import Hamburger from '@/components/Hamburger'
@@ -61,29 +67,120 @@
 import useAppStore from '@/store/modules/app'
 import useUserStore from '@/store/modules/user'
 import useSettingsStore from '@/store/modules/settings'
-import {removeToken} from "@/utils/auth";
+import {getToken, removeToken} from "@/utils/auth";
+import {onMounted, ref} from "vue";
+import Cookies from "js-cookie";
+import reviewDialog from "@/views/safetyReview/institution/components/viewInstitution.vue"
+import superviseDialog from "@/views/safetyReview/userManage/superviseUsers/components/superviseDialog.vue"
+import {Register} from "@/layout/components";
+import {getUserById} from "@/api/sysUsers";
+import menu from "@/layout/components/Sidebar/menu";
 
 const appStore = useAppStore()
 const userStore = useUserStore()
 const settingsStore = useSettingsStore()
 
+const reviewRef = ref();
+const regRef = ref(null)
+const superRef = ref();
+const userInfo = ref();
+onMounted(()=>{
+  if(getToken()){
+    userInfo.value = JSON.parse(Cookies.get('userInfo'))
+    console.log("userInfo",userInfo.value )
+  }
+  getState();
+})
+const getState = async () => {
+  console.log('navbar')
+  const param = {
+    userId: userInfo.value.id
+  }
+  const res = await getUserById(param)
+  if(res.code == 200){
+    userInfo.value.state = res.data.state;
+    // if(userInfo.value.state===2){
+    //   sidebarRouters.value =  menu.agencyMenu
+    //   Cookies.set('routers',JSON.stringify(sidebarRouters.value))
+    //   location.href = '/project';
+    // }
+    // else {
+    //   location.href = '/noMenu';
+    // }
+
+
+  }else{
+    ElMessage({
+      type: 'warning',
+      message: res.message
+    })
+  }
+}
 function toggleSideBar() {
   appStore.toggleSideBar()
 }
 
 function handleCommand(command) {
   switch (command) {
-    case "setLayout":
-      setLayout();
+    case "info":
+      getInfo();
       break;
     case "logout":
       logout();
       break;
+    case "password":
+      editPsd();
+      break;
     default:
       break;
   }
 }
 
+function getInfo() {
+  console.log("getInfo",userInfo.value)
+  //机构用户
+  if(userInfo.value.identity === 1){
+    //审核驳回(可修改)
+    if(userInfo.value.state === 3){
+      const obj = {
+        id: userInfo.value.id,
+        username: userInfo.value.username,
+        agencyId: userInfo.value.agentId
+      }
+      regRef.value.openDialog('reject', obj);
+    }else{
+      //审核通过、未审核状态(不可修改)
+      const obj = {
+        agencyId: userInfo.value.agentId
+      }
+      reviewRef.value.openDialog(obj,'view')
+    }
+  }
+  //监管用户
+  else if (userInfo.value.identity === 0) {
+    const obj = {
+      id: userInfo.value.id
+    }
+    superRef.value.openDialog('view', obj);
+  }
+}
+function editPsd() {
+  superRef.value.openDialog('pwd', userInfo.value);
+}
+const sidebarRouters = ref([])
+
+const getList = () => {
+  // getState()
+  location.href = '/noMenu';
+  // if(userInfo.value.state===2){
+  //   sidebarRouters.value =  menu.agencyMenu
+  //   Cookies.set('routers',JSON.stringify(sidebarRouters.value))
+  //   location.href = '/project';
+  // }else {
+  //   location.href = '/noMenu';
+  // }
+}
+
 function logout() {
   ElMessageBox.confirm('确定注销并退出系统吗?', '提示', {
     confirmButtonText: '确定',

--
Gitblit v1.9.2