From 1592d266eb7cea3a096c17d4ae3c0d01c679da7b Mon Sep 17 00:00:00 2001
From: Mila <Mila@pollex.com.tw>
Date: 星期五, 21 一月 2022 16:15:01 +0800
Subject: [PATCH] update: TODO#134585 串接 顧問主動發送滿意度 API

---
 PAMapp/components/Interview/InterviewMsg.vue |   38 ++++++++++++++++++++++++++++----------
 1 files changed, 28 insertions(+), 10 deletions(-)

diff --git a/PAMapp/components/Interview/InterviewMsg.vue b/PAMapp/components/Interview/InterviewMsg.vue
index 420a292..2a81ac3 100644
--- a/PAMapp/components/Interview/InterviewMsg.vue
+++ b/PAMapp/components/Interview/InterviewMsg.vue
@@ -14,19 +14,21 @@
 
       <el-input
         type="textarea"
-        autosize="true"
+        :autosize="true"
         placeholder="蝝赤�"
         resize="none"
-        v-model="isInterviewTxt">
+        v-model="interviewTxt">
         </el-input>
 
-      <div class="mdTxt mt-30 mb-10">����赤��挾</div>
-      <DateTimePicker
-        @changeDateTime="interviewTime = $event"
-      ></DateTimePicker>
+      <div v-if="client.phone">
+        <div class="mdTxt mt-30 mb-10">����赤��挾</div>
+        <DateTimePicker
+          @changeDateTime="interviewTime = $event"
+        ></DateTimePicker>
+      </div>
 
       <div class="msg-dialog-btn">
-        <el-button @click="addInterview"  :disabled="!interviewTime">���</el-button>
+        <el-button @click="addInterview"  :disabled="isBtnDisabled">���</el-button>
       </div>
 
         </el-dialog>
@@ -41,16 +43,23 @@
   </div>
 </template>
 <script lang="ts">
-import { Vue, Component, Prop, PropSync, Emit, Action } from 'nuxt-property-decorator';
+import { Vue, Component, Prop, PropSync, Emit, Action, namespace } from 'nuxt-property-decorator';
 
 import appointmentService from '~/shared/services/appointment.service';
 import { Appointment, ToInformAppointment } from '~/shared/models/appointment.model';
+import { AgentInfo } from '~/shared/models/agent-info.model';
+
+const loginStore = namespace('login.store');
+const appointmentStore = namespace('appointment.store');
 
 @Component
 export default class InterviewMsg extends Vue {
 
     @Action
     storeMyAppointmentList!: () => Promise<number>;
+
+    @appointmentStore.Action
+    updateAppointmentDetail!: (id: number) => Appointment;
 
     @PropSync('isVisible')
     dialogVisible!: boolean;
@@ -66,11 +75,18 @@
         return;
     }
 
+    @loginStore.State
+    loginConsultant!: AgentInfo;
+
     isShowSuccessAlert = false;
 
     interviewTxt = "";
     interviewTime = '';
     //////////////////////////////////////////////////////////////////////
+
+    mounted() {
+      this.interviewTxt = "�憟踝��靽���像����憿批��" + this.loginConsultant.name + "嚗�����������銝膩������蝜�"+"\n"+"隞乩����閰梯�Ⅳ/Email嚗�"+"\n" + this.loginConsultant.phoneNumber + "\n" + this.loginConsultant.email + "\n"+"�甇斗���靘選����蝜恬�����"
+    }
 
     addInterview() {
       const appointmentInformation: ToInformAppointment = {
@@ -82,6 +98,7 @@
       };
       appointmentService.informAppointment(appointmentInformation).then((_) => {
         this.isShowSuccessAlert = true ;
+        this.updateAppointmentDetail(this.client.id);
       });
     }
 
@@ -91,8 +108,9 @@
       this.storeMyAppointmentList();
     }
 
-    get isInterviewTxt() : string{
-      return this.interviewTxt = "�憟踝��靽���像����憿批��" + "agentName"+"嚗�����������銝膩������蝜�"+"\n"+"隞乩����閰梯�Ⅳ/Email嚗�"+"\n"+"agentPhone"+"\n"+"agentEmail"+"\n"+"�甇斗���靘選����蝜恬�����"
+    get isBtnDisabled() :Boolean {
+      const isFormValid = this.client.phone ? this.interviewTxt && this.interviewTime :this.interviewTxt
+      return !isFormValid
     }
 
 }

--
Gitblit v1.8.0