From baf08c1e7ff4188970a130b8603ad4ea237fa3b9 Mon Sep 17 00:00:00 2001
From: Tomas <tomasysh@gmail.com>
Date: 星期四, 27 一月 2022 18:36:39 +0800
Subject: [PATCH] update#134950: 保戶: [個人帳號設定] 可設定備用聯絡方式,並且預約顧問時填寫的備用聯絡方式會回寫帳號設定

---
 PAMapp/store/localStorage.ts |   61 +++++++++++++++++++++++++++++-
 1 files changed, 59 insertions(+), 2 deletions(-)

diff --git a/PAMapp/store/localStorage.ts b/PAMapp/store/localStorage.ts
index 70f3fa2..578ea0f 100644
--- a/PAMapp/store/localStorage.ts
+++ b/PAMapp/store/localStorage.ts
@@ -1,13 +1,19 @@
 import { Module, Mutation, VuexModule ,Action } from 'vuex-module-decorators';
-import { Role } from '~/shared/models/enum/role';
-import { Selected } from '~/shared/models/quickFilter.model';
+import { ContactType } from '~/shared/models/enum/ContactType';
+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');
+  userInfo = JSON.parse(localStorage.get('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;
@@ -19,6 +25,10 @@
 
   get consultantId():string|null{
     return this.consultant_id;
+  }
+
+  get isPrimaryContactTypeEmail(): boolean {
+    return this.userInfo.contactType === ContactType.EMAIL;
   }
 
   get quickFilterSelectedData(): Selected[] {
@@ -33,7 +43,17 @@
     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);
@@ -60,12 +80,29 @@
     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');
@@ -82,6 +119,26 @@
     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");
   }

--
Gitblit v1.8.0