From b9658b7c42ca15e11153f782949c33a9b2d6a07a Mon Sep 17 00:00:00 2001
From: charlie <charlie@lvguanqingdeMacBook-Pro.local>
Date: 星期五, 21 一月 2022 17:23:40 +0800
Subject: [PATCH] bugfix: 顧問結案頁面中的未結案原因select中的icon修正

---
 PAMapp/components/NavBar.vue |  111 +++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 79 insertions(+), 32 deletions(-)

diff --git a/PAMapp/components/NavBar.vue b/PAMapp/components/NavBar.vue
index 85e5ac2..3754bfb 100644
--- a/PAMapp/components/NavBar.vue
+++ b/PAMapp/components/NavBar.vue
@@ -7,13 +7,29 @@
       <div class="pam-header__title--sub">�����兢蝳�風��</div>
     </div>
     <div class="pam-header__action-bar">
-      <i class="icon-bell text--dark-blue cursor--pointer fix-chrome-click--issue"
-        @click="$router.push('/notification')"></i>
-        <el-dropdown :class="{'is-open':isOpenDropdown}" 
+      <i
+        v-if="currentRole"
+        class="icon-bell text--dark-blue cursor--pointer fix-chrome-click--issue"
+        @click="$router.push('/notification')"
+      ></i>
+        <el-dropdown :class="{'is-open':isOpenDropdown}"
           ref="dropdown"
           trigger="click"
           @command="routerNavigateTo">
-          <i class="icon-avatar text--dark-blue cursor--pointer fix-chrome-click--issue" @click="isOpenDropdown =!isOpenDropdown" @blur="isOpenDropdown =false"></i>
+          <div
+            @click="isOpenDropdown =!isOpenDropdown"
+            @blur="isOpenDropdown =false">
+            <template v-if="isAdminLogin">
+              <UiAvatar
+              :size="30"
+              :agentNo="consultantId"
+              class="admin-avatar"
+              ></UiAvatar>
+            </template>
+            <template v-else>
+              <i class="icon-avatar text--dark-blue cursor--pointer fix-chrome-click--issue"></i>
+            </template>
+          </div>
           <el-dropdown-menu
             class="pam-header__dropdown">
             <template v-for="(item,index) in navBarList">
@@ -34,18 +50,34 @@
 <script lang="ts">
   import { Vue, Component } from 'vue-property-decorator';
   import { namespace } from 'nuxt-property-decorator';
+  import { Role } from '~/shared/models/enum/Role';
   import * as _ from 'lodash';
-  const localStorage = namespace('localStorage');
+
+  const roleStorage = namespace('localStorage');
   @Component
   export default class NavBar extends Vue {
-    @localStorage.Mutation storageClear!: () => void;
-    @localStorage.Getter idToken!: string | null;
-    @localStorage.Getter currentRole!: string | null;
+
+    @roleStorage.Getter
+    idToken!: string | null;
+
+    @roleStorage.Getter
+    currentRole!: string | null;
+
+    @roleStorage.Getter
+    consultantId!: string | null;
+
+    @roleStorage.Mutation
+    storageClear!: () => void;
+
+    @roleStorage.Getter
+    isAdminLogin!: boolean;
+
+    isOpenDropdown = false;
 
     navBarList = [{
         authorityOfRoleList: [Role.NOT_LOGIN],
         routeUrl: '/login',
-        title: '��',
+        title: '�� | 閮餃��',
       },
       {
         authorityOfRoleList: [Role.USER],
@@ -53,19 +85,29 @@
         title: '�犖撣唾�身摰�',
       },
       {
-        authorityOfRoleList: [Role.ADMIN],
-        routeUrl: '/notFinish',
+        authorityOfRoleList:[Role.ADMIN],
+        routeUrl: '/agentInfo/',
         title: '���董�����',
       },
       {
-        authorityOfRoleList: [Role.USER, Role.ADMIN],
-        routeUrl: '/record/contactRecord',
+        authorityOfRoleList:[Role.ADMIN],
+        routeUrl: '/record',
+        title: '�������',
+      },
+      {
+        authorityOfRoleList: [Role.USER],
+        routeUrl: '/userReviewsRecord',
         title: '�������',
       },
       {
         authorityOfRoleList: [Role.NOT_LOGIN, Role.USER],
         routeUrl: '/myConsultantList/consultantList',
         title: '���“���',
+      },
+      {
+        authorityOfRoleList: [Role.NOT_LOGIN, Role.USER],
+        routeUrl: '/faq',
+        title: 'F&Q 撣貉����',
       },
       {
         authorityOfRoleList: [Role.USER, Role.ADMIN],
@@ -78,32 +120,30 @@
         title: '憿批��',
       },
     ];
-    login_role = Role.NOT_LOGIN;
-    isOpenDropdown = false;
 
-    get loginRole(): string {
-      return this.idToken && this.currentRole ? this.currentRole : Role.NOT_LOGIN;
-    }
+    //////////////////////////////////////////////////////////////////////
 
     routerNavigateTo(url: string): void {
       (this.$refs.dropdown as any).hide();
-      _.isEqual(url, '') ? this.fakeLogout() : this.$router.push(url);
+      _.isEqual(url,'')
+        ? this.logout()
+        : this.$router.push(_.isEqual(url,'/agentInfo/') ? url+this.consultantId :url);
     }
 
     pushRouterByLoginRole(): void {
       const link = _.isEqual(this.currentRole, Role.ADMIN) ? '/myAppointmentList/appointmentList' : '/';
       this.$router.push(link);
     }
-    // TODO: ��TP隤����� ���蝙�
-    fakeLogout(): void {
+
+    logout(): void {
       this.storageClear();
       _.isEqual(this.$route.name, 'index') ? location.reload() : this.$router.push('/');
     }
-  }
-  export enum Role {
-    USER = 'user',
-    ADMIN = 'admin',
-    NOT_LOGIN = '',
+
+    get loginRole(): Role {
+      return this.idToken && this.currentRole ? (this.currentRole as Role): Role.NOT_LOGIN;
+    }
+
   }
 
 </script>
@@ -117,7 +157,7 @@
     display: flex;
     align-items: center;
     background-color: $PRIMARY_WHITE;
-    z-index: 3;
+    z-index: 6;
 
     .pam-header__logo {
       height: 30px;
@@ -174,6 +214,13 @@
           padding: 0px 10px;
         }
       }
+
+      .admin-avatar {
+        margin: 0px 15px;
+        @media screen and (max-width: 352px) {
+          margin: 0px 10px;
+        }
+      }
     }
   }
 
@@ -187,25 +234,25 @@
         color: $PRIMARY_WHITE;
       }
     }
-  } 
+  }
 
   @include desktop {
     .pam-header {
       height: $DESKTOP_NAV_BAR;
 
       .pam-header__logo {
-        width: 180px;
-        height: 100%;
+        width: 160px;
+        height: 70px;
         margin: 0;
         background-image: url('~/assets/images/logo.png');
-        background-size: cover;
+        background-size: contain;
         background-repeat: no-repeat;
         background-position: center;
       }
 
       .pam-header__title {
         display: flex;
-        justify-content: start;
+        justify-content: flex-start;
         align-items: center;
         border: none;
         padding-left: 30px;

--
Gitblit v1.8.0