From 1d6d2d14200ed9432347ef8013e3fc117fa2161b Mon Sep 17 00:00:00 2001 From: Mila <Mila@pollex.com.tw> Date: 星期四, 20 一月 2022 14:57:27 +0800 Subject: [PATCH] Merge branch 'master' into Phase3 --- PAMapp/components/NavBar.vue | 69 +++++++++++++++++++++++----------- 1 files changed, 47 insertions(+), 22 deletions(-) diff --git a/PAMapp/components/NavBar.vue b/PAMapp/components/NavBar.vue index 515332f..cebd526 100644 --- a/PAMapp/components/NavBar.vue +++ b/PAMapp/components/NavBar.vue @@ -7,13 +7,20 @@ <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> + <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> + <i + class="icon-avatar text--dark-blue cursor--pointer fix-chrome-click--issue" + @click="isOpenDropdown =!isOpenDropdown" + @blur="isOpenDropdown =false" + ></i> <el-dropdown-menu class="pam-header__dropdown"> <template v-for="(item,index) in navBarList"> @@ -34,20 +41,25 @@ <script lang="ts"> import { Vue, Component } from 'vue-property-decorator'; import { namespace } from 'nuxt-property-decorator'; - import { Role } from '~/assets/ts/models/enum/Role'; + import { Role } from '~/shared/models/enum/Role'; import * as _ from 'lodash'; const roleStorage = namespace('localStorage'); @Component export default class NavBar extends Vue { - @roleStorage.Mutation storageClear!: () => void; + @roleStorage.Getter idToken!: string | null; @roleStorage.Getter currentRole!: string | null; + @roleStorage.Getter consultantId!: string | null; + + @roleStorage.Mutation storageClear!: () => void; + + isOpenDropdown = false; navBarList = [{ authorityOfRoleList: [Role.NOT_LOGIN], routeUrl: '/login', - title: '��', + title: '�� | 閮餃��', }, { authorityOfRoleList: [Role.USER], @@ -55,19 +67,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], @@ -80,27 +102,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('/'); } + + get loginRole(): Role { + return this.idToken && this.currentRole ? (this.currentRole as Role): Role.NOT_LOGIN; + } + } </script> @@ -114,7 +139,7 @@ display: flex; align-items: center; background-color: $PRIMARY_WHITE; - z-index: 3; + z-index: 6; .pam-header__logo { height: 30px; @@ -191,11 +216,11 @@ 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; } -- Gitblit v1.8.0