From 5ec088f7b2c1281a1874ef6ba4e783a64acb8079 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期二, 12 十一月 2024 09:15:19 +0800
Subject: [PATCH] 优化

---
 company/src/components/common/CommonHeader.vue |   93 +++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 78 insertions(+), 15 deletions(-)

diff --git a/company/src/components/common/CommonHeader.vue b/company/src/components/common/CommonHeader.vue
index a5705fc..9945708 100644
--- a/company/src/components/common/CommonHeader.vue
+++ b/company/src/components/common/CommonHeader.vue
@@ -6,16 +6,40 @@
         <!-- <div class="title-en">Diagnosis of Intelligent Manufacturing Integrated Service Platfrom</div> -->
       </div>
       <div class="user">
-        <el-dropdown v-if="isLogined" trigger="click">
+        <!--    浼佷笟    -->
+        <div style="display: flex; align-items: center;" v-if="userInfo.type === 1">
+          <div class="user_kf" v-if="info">
+            鏈嶅姟浜哄憳锛歿{info.name}} {{info.mobile}}
+          </div>
+          <el-dropdown v-if="isLogined" trigger="click">
           <span class="el-dropdown-link">
-            <!-- <img v-if="userInfo != null" :src="userInfo.avatar == null ? `${require('@/assets/avatar/man.png')}` : userInfo.avatar" alt="">{{userInfo | displayName}}<i class="el-icon-arrow-down el-icon--right"></i> -->
-            <img v-if="userInfo != null" style="width: 30px !important;" src="@/assets/avatar/man.png" alt="">{{userInfo | displayName}}<i class="el-icon-arrow-down el-icon--right"></i>
+            <img v-if="userInfo != null" class="img1" style="width: 20px !important;" src="@/assets/icons/ic_company@2x.png" alt="">{{userInfo.showCompany.name}}<i class="el-icon-arrow-down el-icon--right"></i>
           </span>
-          <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item @click.native="changePwd">淇敼瀵嗙爜</el-dropdown-item>
-            <el-dropdown-item @click.native="logout">閫�鍑虹櫥褰�</el-dropdown-item>
-          </el-dropdown-menu>
-        </el-dropdown>
+            <el-dropdown-menu slot="dropdown">
+              <el-dropdown-item @click.native="changeCompany(item)" v-for="(item, index) in userInfo.companyPermissionList" :key="index">{{item.companyName}}</el-dropdown-item>
+            </el-dropdown-menu>
+          </el-dropdown>
+          <el-dropdown v-if="isLogined" trigger="click" style="top: -7px;">
+          <span class="el-dropdown-link">
+            <img v-if="userInfo != null" class="img2" style="width: 30px !important;" src="@/assets/avatar/man.png" alt="">{{userInfo.realname}}<i class="el-icon-arrow-down el-icon--right"></i>
+          </span>
+            <el-dropdown-menu slot="dropdown">
+              <el-dropdown-item @click.native="changePwd">淇敼瀵嗙爜</el-dropdown-item>
+              <el-dropdown-item @click.native="logout">閫�鍑虹櫥褰�</el-dropdown-item>
+            </el-dropdown-menu>
+          </el-dropdown>
+        </div>
+        <div v-else>
+          <el-dropdown v-if="isLogined" trigger="click" style="top: -7px;">
+          <span class="el-dropdown-link">
+            <img v-if="userInfo != null" class="img2" style="width: 30px !important;" src="@/assets/avatar/man.png" alt="">{{userInfo | displayName}}<i class="el-icon-arrow-down el-icon--right"></i>
+          </span>
+            <el-dropdown-menu slot="dropdown">
+              <el-dropdown-item @click.native="changePwd">淇敼瀵嗙爜</el-dropdown-item>
+              <el-dropdown-item @click.native="logout">閫�鍑虹櫥褰�</el-dropdown-item>
+            </el-dropdown-menu>
+          </el-dropdown>
+        </div>
       </div>
     </div>
     <!-- 淇敼瀵嗙爜 -->
@@ -43,7 +67,8 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import GlobalAlertWindow from './GlobalAlertWindow'
-import { logout, updatePwd } from '@/api/system/common'
+import { logout, updatePwd, switchCompany } from '@/api/system/common'
+import { findByCompanyId } from '@/api/business/customerService'
 export default {
   name: 'CommonHeader',
   components: { GlobalAlertWindow },
@@ -65,6 +90,7 @@
         changePwd: false
       },
       username: 'bob', // 鐢ㄦ埛鍚�
+      info: null,
       // 淇敼瀵嗙爜寮规
       changePwdData: {
         form: {
@@ -88,6 +114,7 @@
   },
   created () {
     document.title=this.systemTitle
+    this.setFindByCompanyId(this.userInfo.companyId)
   },
   computed: {
     ...mapState(['menuData', 'userInfo']),
@@ -114,6 +141,24 @@
   },
   methods: {
     ...mapMutations(['setUserInfo', 'switchCollapseMenu']),
+    // 鍒囨崲浼佷笟
+    changeCompany(row) {
+      if (row.companyId === this.userInfo.companyId) {
+        this.$message.warning('涓嶈兘鍒囨崲褰撳墠浼佷笟')
+        return
+      }
+      switchCompany({ companyId: row.companyId })
+        .then(res => {
+          location.reload();
+        })
+    },
+    setFindByCompanyId(companyId) {
+      findByCompanyId(companyId)
+        .then(res => {
+          console.log(res)
+          this.info = res
+        })
+    },
     // 淇敼瀵嗙爜
     changePwd () {
       this.visible.changePwd = true
@@ -205,13 +250,31 @@
     padding-right: 25px;
     background: url('../../assets/images/top_ic_bolang@2x.png') no-repeat;
     flex-shrink: 0;
-    text-align: right;
-    .el-dropdown {
-      top: 10px;
-      color: #fff;
+    /*text-align: right;*/
+    display: flex;
+    align-items: center;
+    justify-content: end;
+    .user_kf {
+      color: #ffffff;
+      font-size: 14px;
+      margin-right: 30px;
     }
-    img {
-      width: 32px;
+    .el-dropdown {
+      top: -2px;
+      color: #fff;
+      margin-right: 30px;
+      &:last-child {
+        margin: 0 !important;
+      }
+    }
+    .img1 {
+      width: 20px;
+      position: relative;
+      top: 5px;
+      margin-right: 10px;
+    }
+    .img2 {
+      width: 20px;
       position: relative;
       top: 10px;
       margin-right: 10px;

--
Gitblit v1.9.3