From b0161c9c65c31ad3e4c0f885ebbb3e186c0d5873 Mon Sep 17 00:00:00 2001 From: Mila <Mila@pollex.com.tw> Date: 星期三, 19 一月 2022 17:54:55 +0800 Subject: [PATCH] update: TODO#134465 顧問_系統通知紀錄(查看更多) --- PAMapp/components/Interview/InterviewMsg.vue | 88 ++++++++++++++++++++++++++------------------ 1 files changed, 52 insertions(+), 36 deletions(-) diff --git a/PAMapp/components/Interview/InterviewMsg.vue b/PAMapp/components/Interview/InterviewMsg.vue index 62d0453..eaffa87 100644 --- a/PAMapp/components/Interview/InterviewMsg.vue +++ b/PAMapp/components/Interview/InterviewMsg.vue @@ -1,5 +1,5 @@ <template> - <div> + <div class="interview-msg-component"> <el-dialog :visible.sync="dialogVisible" :width="dialogWidth" @@ -14,10 +14,10 @@ <el-input type="textarea" - :rows="9" + :autosize="true" placeholder="蝝赤�" resize="none" - v-model="interviewTxt"> + v-model="isInterviewTxt"> </el-input> <div class="mdTxt mt-30 mb-10">����赤��挾</div> @@ -41,16 +41,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,15 +73,16 @@ return; } + @loginStore.State + loginConsultant!: AgentInfo; + isShowSuccessAlert = false; interviewTxt = ""; interviewTime = ''; - ////////////////////////////////////////////////////////////////////// addInterview() { - console.log('client', this.client); const appointmentInformation: ToInformAppointment = { appointmentId: this.client.id, email : this.client?.email, @@ -84,6 +92,7 @@ }; appointmentService.informAppointment(appointmentInformation).then((_) => { this.isShowSuccessAlert = true ; + this.updateAppointmentDetail(this.client.id); }); } @@ -93,39 +102,46 @@ this.storeMyAppointmentList(); } + get isInterviewTxt() : string{ + return this.interviewTxt = "�憟踝��靽���像����憿批��" + this.loginConsultant?.name + "嚗�����������銝膩������蝜�"+"\n"+"隞乩����閰梯�Ⅳ/Email嚗�"+"\n" + this.loginConsultant?.phoneNumber + "\n" + this.loginConsultant?.email + "\n"+"�甇斗���靘選����蝜恬�����" + } + } </script> -<style lang="scss" scoped> -.msg-dialog-title{ - display: flex; - justify-content: center; - margin-bottom:30px; - color: $PRIMARY_BLACK; -} -.send-msg-nav{ - display: flex; - justify-content: space-between; - margin-bottom: 10px; - color: $PRIMARY_BLACK; -} -.el-dialog{ - width:90% -} -.el-textarea__inner{ - font-size: 20px; - padding:10px; - text-align: justify; - font-weight: 500; -} -.msg-dialog-btn{ - margin-top: 30px; - display: flex; - justify-content: center; -} -.invite-review{ +<style lang="scss" > +.interview-msg-component{ + + .msg-dialog-title{ display: flex; - flex-direction: column; - align-items: center; + justify-content: center; + margin-bottom:30px; + color: $PRIMARY_BLACK; } + .send-msg-nav{ + display: flex; + justify-content: space-between; + margin-bottom: 10px; + color: $PRIMARY_BLACK; + } + .el-dialog{ + width:90% + } + .el-textarea__inner{ + font-size: 20px; + padding:10px; + text-align: justify; + font-weight: 600; + } + .msg-dialog-btn{ + margin-top: 30px; + display: flex; + justify-content: center; + } + .invite-review{ + display: flex; + flex-direction: column; + align-items: center; + } +} </style> -- Gitblit v1.8.0