From 18098111cc905e88524e7d9ce788b742637e0824 Mon Sep 17 00:00:00 2001 From: Mila <Mila@pollex.com.tw> Date: 星期二, 14 十二月 2021 16:02:04 +0800 Subject: [PATCH] refactor: 快速篩選 1. 整理 methods 順序 2. 整理 interface、const --- PAMapp/store/localStorage.ts | 40 ++++++++++++++++++++++++++++++++++------ 1 files changed, 34 insertions(+), 6 deletions(-) diff --git a/PAMapp/store/localStorage.ts b/PAMapp/store/localStorage.ts index d820735..e31bf7c 100644 --- a/PAMapp/store/localStorage.ts +++ b/PAMapp/store/localStorage.ts @@ -1,9 +1,11 @@ -import { Selected } from '~/components/QuickFilter/QuickFilterSelector.vue'; -import { Module, Mutation, VuexModule } from 'vuex-module-decorators'; +import { Module, Mutation, VuexModule ,Action } from 'vuex-module-decorators'; +import { Role } from '~/assets/ts/models/enum/Role'; +import { Selected } from '~/assets/ts/models/quickFilter.model'; @Module export default class LocalStorage extends VuexModule { id_token = localStorage.getItem('id_token'); - role_State= localStorage.getItem('current_role'); + current_role= localStorage.getItem('current_role'); + consultant_id = localStorage.getItem('consultant_id'); quickFilterSelectedItem = localStorage.getItem('quickFilter'); recommendConsultantItem = localStorage.getItem('recommendConsultantItem'); @@ -12,12 +14,26 @@ }; get currentRole(): string|null { - return this.role_State; + return this.current_role; }; + + get consultantId():string|null{ + return this.consultant_id; + } get quickFilterSelectedData(): Selected[] { return JSON.parse(this.quickFilterSelectedItem || '[]') as Selected[]; } + + get isAdminLogin(): boolean { + return this.currentRole === Role.ADMIN; + } + + get isUserLogin(): boolean { + return this.currentRole === Role.USER; + } + + @Mutation storageIdToken(token: string): void { localStorage.setItem('id_token', token); @@ -26,8 +42,13 @@ @Mutation storageRole(role:string): void { localStorage.setItem('current_role', role); - this.role_State = localStorage.getItem('current_role'); + this.current_role = localStorage.getItem('current_role'); }; + + @Mutation storageConsultantId(id:string):void{ + localStorage.setItem('consultant_id', id); + this.consultant_id = localStorage.getItem('consultant_id'); + } @Mutation storageQuickFilter(selected: string): void { localStorage.setItem('quickFilter', selected); @@ -44,9 +65,12 @@ localStorage.removeItem('userInfo'); localStorage.removeItem('id_token'); localStorage.removeItem('current_role'); + localStorage.removeItem('consultant_id'); this.id_token = localStorage.getItem('id_token'); - this.role_State = localStorage.getItem('current_role'); + this.current_role = localStorage.getItem('current_role'); + this.consultant_id = localStorage.getItem('consultant_id'); } + @Mutation storageClearQuickFilter() { localStorage.removeItem('quickFilter'); @@ -58,4 +82,8 @@ this.recommendConsultantItem = localStorage.getItem('recommendConsultantItem'); } + @Action actionStorageClear(): void { + this.context.commit("storageClear"); + } + } -- Gitblit v1.9.3