From 74e563da7fa6886449fd2be5933e2d4ca5c85f48 Mon Sep 17 00:00:00 2001 From: jack <jack.su@pollex.com.tw> Date: 星期二, 12 九月 2023 11:25:52 +0800 Subject: [PATCH] [UPDATE] 解決弱點Se: Incorrect definition of Serializable class [UPDATE] 解決弱點Information exposure to log file [UPDATE] 解決弱點Use of hard-coded password --- PAMapp/store/localStorage.ts | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 54 insertions(+), 0 deletions(-) diff --git a/PAMapp/store/localStorage.ts b/PAMapp/store/localStorage.ts index 6f1e9b9..d1fd32c 100644 --- a/PAMapp/store/localStorage.ts +++ b/PAMapp/store/localStorage.ts @@ -1,14 +1,20 @@ import { Module, Mutation, VuexModule ,Action } from 'vuex-module-decorators'; +import { ContactType } from '~/shared/models/enum/ContactType'; import { Role } from '~/shared/models/enum/Role'; import { Selected } from '~/shared/models/quick-filter.model'; +import { RegisterInfo } from '~/shared/models/registerInfo'; +import { StrictQueryParams } from '~/shared/models/strict-query.model'; @Module export default class LocalStorage extends VuexModule { id_token = localStorage.getItem('id_token'); current_role= localStorage.getItem('current_role'); consultant_id = localStorage.getItem('consultant_id'); + userInfo = JSON.parse(localStorage.getItem('userInfo')!); quickFilterSelectedItem = localStorage.getItem('quickFilter'); recommendConsultantItem = localStorage.getItem('recommendConsultantItem'); appointmentIdFromMsg = localStorage.getItem('appointmentIdFromMsg'); + satisfactionIdFromMsg = localStorage.getItem('satisfactionIdFromMsg'); + notContactAppointmentIdFromMsg = localStorage.getItem('notContactAppointmentIdFromMsg'); get idToken(): string|null { return this.id_token; @@ -21,6 +27,11 @@ get consultantId():string|null{ return this.consultant_id; } + + get isPrimaryContactTypeEmail(): boolean { + return this.userInfo.contactType === ContactType.EMAIL; + } + get quickFilterSelectedData(): Selected[] { return JSON.parse(this.quickFilterSelectedItem || '[]') as Selected[]; @@ -36,6 +47,19 @@ get currentAppointmentIdFromMsg(): string|null { return this.appointmentIdFromMsg; + } + + get currentSatisfactionIdFromMsg(): string|null { + return this.satisfactionIdFromMsg; + } + + get currentNotContactAppointmentIdFromMsg(): string|null { + return this.notContactAppointmentIdFromMsg; + } + + @Mutation storageUserInfo(userInfo: RegisterInfo): void { + localStorage.setItem('userInfo', JSON.stringify(userInfo)); + this.userInfo = JSON.parse(localStorage.getItem('userInfo')!); } @Mutation storageIdToken(token: string): void { @@ -68,12 +92,27 @@ this.appointmentIdFromMsg = localStorage.getItem('appointmentIdFromMsg'); } + @Mutation storageSatisfactionIdFromMsg(id: string) { + localStorage.setItem('satisfactionIdFromMsg', id); + this.satisfactionIdFromMsg = localStorage.getItem('satisfactionIdFromMsg'); + } + + @Mutation storageNotContactAppointmentIdFromMsg(id: string) { + localStorage.setItem('notContactAppointmentIdFromMsg', id); + this.notContactAppointmentIdFromMsg = id; + } + @Mutation storageClear(): void { localStorage.removeItem('myRequests'); localStorage.removeItem('userInfo'); localStorage.removeItem('id_token'); localStorage.removeItem('current_role'); localStorage.removeItem('consultant_id'); + localStorage.removeItem('appointment'); + localStorage.removeItem('login_consultant'); + localStorage.removeItem('notContactAppointmentIdFromMsg'); + localStorage.removeItem('satisfactionIdFromMsg'); + localStorage.removeItem('appointmentIdFromMsg'); this.id_token = localStorage.getItem('id_token'); this.current_role = localStorage.getItem('current_role'); this.consultant_id = localStorage.getItem('consultant_id'); @@ -95,6 +134,21 @@ this.appointmentIdFromMsg = localStorage.getItem('appointmentIdFromMsg'); } + @Mutation storageClearSatisfactionIdFromMsg() { + localStorage.removeItem('satisfactionIdFromMsg'); + this.appointmentIdFromMsg = localStorage.getItem('satisfactionIdFromMsg'); + } + + @Mutation storageClearNotContactAppointmentIdFromMsg() { + localStorage.removeItem('notContactAppointmentIdFromMsg'); + this.appointmentIdFromMsg = localStorage.getItem('notContactAppointmentIdFromMsg'); + } + + @Mutation storageStrickQueryItem(queryItem: StrictQueryParams): void { + localStorage.setItem('recommendConsultantItem', JSON.stringify(queryItem)); + this.recommendConsultantItem = localStorage.getItem('recommendConsultantItem'); + } + @Action actionStorageClear(): void { this.context.commit("storageClear"); } -- Gitblit v1.8.0