保誠-保戶業務員媒合平台
Mila
2022-01-10 0e660d6d309bf50b0ef04b79a9cdefd69c2b79ef
PAMapp/components/NavBar.vue
@@ -34,18 +34,21 @@
<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.Mutation storageClearQuickFilter!: () => void;
    @roleStorage.Mutation storageClearRecommendConsultant!: () => void;
    @roleStorage.Getter idToken!: string | null;
    @roleStorage.Getter currentRole!: string | null;
    @roleStorage.Getter consultantId!: string | null;
    @roleStorage.Mutation storageClear!: () => void;
    isOpenDropdown = false;
    login_role     = Role.NOT_LOGIN;
    navBarList = [{
        authorityOfRoleList: [Role.NOT_LOGIN],
@@ -78,6 +81,11 @@
        title: '我的顧問清單',
      },
      {
        authorityOfRoleList: [Role.NOT_LOGIN, Role.USER],
        routeUrl: '/faq',
        title: 'F&Q 常見問題',
      },
      {
        authorityOfRoleList: [Role.USER, Role.ADMIN],
        routeUrl: '',
        title: '登出',
@@ -88,12 +96,8 @@
        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();
@@ -109,10 +113,13 @@
    logout(): void {
      this.storageClear();
      this.storageClearQuickFilter();
      this.storageClearRecommendConsultant();
      _.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>
@@ -203,11 +210,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;
      }