| | |
| | | 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; |
| | |
| | | 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[]; |
| | |
| | | |
| | | 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 { |
| | |
| | | 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('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'); |
| | |
| | | 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"); |
| | | } |