import { Module, Mutation, VuexModule ,Action } from 'vuex-module-decorators';
|
import { Role } from '~/shared/models/enum/Role';
|
import { Selected } from '~/shared/models/quick-filter.model';
|
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');
|
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 currentRole(): string|null {
|
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;
|
}
|
|
get currentAppointmentIdFromMsg(): string|null {
|
return this.appointmentIdFromMsg;
|
}
|
|
get currentSatisfactionIdFromMsg(): string|null {
|
return this.satisfactionIdFromMsg;
|
}
|
|
get currentNotContactAppointmentIdFromMsg(): string|null {
|
return this.notContactAppointmentIdFromMsg;
|
}
|
|
@Mutation storageIdToken(token: string): void {
|
localStorage.setItem('id_token', token);
|
this.id_token = localStorage.getItem('id_token') ;
|
};
|
|
@Mutation storageRole(role:string): void {
|
localStorage.setItem('current_role', 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);
|
this.quickFilterSelectedItem = localStorage.getItem('quickFilter');
|
};
|
|
@Mutation storageRecommendConsultant(selected: string): void {
|
localStorage.setItem('recommendConsultantItem', selected);
|
this.recommendConsultantItem = localStorage.getItem('recommendConsultantItem');
|
}
|
|
@Mutation storageAppointmentIdFromMsg(id: string) {
|
localStorage.setItem('appointmentIdFromMsg', id);
|
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');
|
this.id_token = localStorage.getItem('id_token');
|
this.current_role = localStorage.getItem('current_role');
|
this.consultant_id = localStorage.getItem('consultant_id');
|
}
|
|
|
@Mutation storageClearQuickFilter() {
|
localStorage.removeItem('quickFilter');
|
this.quickFilterSelectedItem = localStorage.getItem('quickFilter');
|
}
|
|
@Mutation storageClearRecommendConsultant() {
|
localStorage.removeItem('recommendConsultantItem');
|
this.recommendConsultantItem = localStorage.getItem('recommendConsultantItem');
|
}
|
|
@Mutation storageClearAppointmentIdFromMsg() {
|
localStorage.removeItem('appointmentIdFromMsg');
|
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");
|
}
|
|
}
|