From 95d0e5524c3ab1e55a9909e2c38e7cc35901220f Mon Sep 17 00:00:00 2001
From: 劉鈞霖 <benson@gmail.com>
Date: 星期三, 15 十二月 2021 14:52:58 +0800
Subject: [PATCH] [ Update ] :新增 pamService class 將 consultant interface 移出

---
 PAMapp/pages/index.vue |   23 +++++++++++++++--------
 1 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/PAMapp/pages/index.vue b/PAMapp/pages/index.vue
index 3d9550d..1101b8f 100644
--- a/PAMapp/pages/index.vue
+++ b/PAMapp/pages/index.vue
@@ -43,26 +43,31 @@
 </template>
 
 <script lang="ts">
-  import { Vue, Component, State, Action, Watch } from 'nuxt-property-decorator';
-  import { Consultants } from '~/assets/ts/models/consultant.model';
+  import { Vue, Component, State, Action, Watch, namespace } from 'nuxt-property-decorator';
+  import { Consultant } from '~/assets/ts/models/consultant.model';
 
+  const localStorage = namespace('localStorage');
   @Component({
     layout: 'home'
   })
   export default class MainComponent extends Vue {
-    consultantList: Consultants[] = [];
-    agents: Consultants[] = [];
-    @State('recommendList') recommendList!: Consultants[];
+    consultantList: Consultant[] = [];
+
+    @State('recommendList') recommendList!: Consultant[];
     @Action storeRecommendList!: any;
 
-    @State('myConsultantList') myConsultantList!: Consultants[];
+    @State('myConsultantList') myConsultantList!: Consultant[];
     @Action storeConsultantList!: any;
+
+    @localStorage.Mutation storageClearQuickFilter!: () => void;
+    @localStorage.Mutation storageClearRecommendConsultant!: () => void;
 
     @Watch('myConsultantList')
     onMyConsultantListChange() {
       this.consultantList = (this.myConsultantList || [])
         .filter(item => item.contactStatus !== 'contacted')
-        .sort((a, b) => a.updateTime > b.updateTime ? -1 : 1)
+        .map((item) => ({ ...item, formatDate: new Date(item.updateTime || item.createTime)}))
+        .sort((preItem, nextItem) => +nextItem.formatDate - +preItem.formatDate)
     }
 
     mounted() {
@@ -71,6 +76,8 @@
       }
 
       this.storeConsultantList();
+      this.storageClearQuickFilter();
+      this.storageClearRecommendConsultant();
     }
 
     routerPush(path: string) {
@@ -143,7 +150,7 @@
       background-image: url('~/assets/images/recommendConsultant/banner_web.svg');
     }
   }
-  
+
   @include desktop {
     .page-container {
       width: 700px;

--
Gitblit v1.8.0