保誠-保戶業務員媒合平台
jack
2023-09-13 8ba0f302d3e7f13edafe6d7327e74d77859775cc
PAMapp/components/Interview/InterviewAdd.vue
@@ -6,23 +6,25 @@
      </div>
      <el-row class="mdTxt mb-10">
          <el-col :xs="16" :sm="20">
              <span :class="{'required': !interviewId || isEdit}">約訪時間</span>
            </el-col>
            <span :class="{'required': !interviewId || isEdit}">約訪時間</span>
          </el-col>
          <el-col :xs="8" :sm="4" class="text--right" v-if="interviewId">
              <span
                v-if="!isEdit"
                class="mr-10 text--primary text--underline cursor--pointer"
                class="mr-10 text--primary  cursor--pointer"
                @click="showCancelPopUp = true"
              >刪除</span>
              ><i class="icon-delet"></i></span>
              <span
                v-if="!isEdit"
                class="text--primary text--underline cursor--pointer"
                class="text--primary  cursor--pointer"
                @click="isEdit = !isEdit"
              >編輯</span>
              ><i class="icon-edit"></i></span>
          </el-col>
      </el-row>
      <template v-if="!interviewId || isEdit">
          <DateTimePicker
            :disabledBeforeSpecificDate="appointmentDetail.appointmentDate"
            @changeDateTime="interviewTime = $event"
            :defaultValue="defaultValue"
          ></DateTimePicker>
@@ -45,7 +47,7 @@
        </el-input>
      </template>
      <template v-else>
          <div class="fs-20 mt-20">
          <div class="fs-20 mt-20 text--break-all line-height">
              {{content}}
          </div>
      </template>
@@ -79,7 +81,7 @@
        @closePopUp="closePopup">
        <div class="text--center mdTxt">{{confirmTxt}}!</div>
        <div class="text--center mdTxt">立即發送約訪通知?</div>
        <div class="text--center mt-30" style="display:flex">
        <div class="text--center mt-30 confirm-btn">
            <el-button @click="closePopup">先不發送</el-button>
            <el-button @click="showInterviewMsgPopup = true" type="primary">傳送約訪通知</el-button>
        </div>
@@ -176,17 +178,25 @@
        });
    }
    private updateRecord(updateInterviewRecord) {
        appointmentService.updateInterviewRecord(updateInterviewRecord).then(res => {
            this.showPopUp('編輯成功');
        });
  private async updateRecord(updateInterviewRecord) {
    try {
      const response = await appointmentService.updateInterviewRecord(updateInterviewRecord);
      if (response !== null) {
        this.showPopUp('編輯成功');
      } else {
        throw new Error('appointmentService.updateInterviewRecord returned null-like value.');
      }
    } catch (error) {
      console.error('An error occurred while updating interview record:', error);
      throw error;
    }
  }
    private showPopUp(confirmTxt) {
        this.confirmTxt = confirmTxt;
        this.updateAppointmentDetail(+this.appointmentId);
        if (new Date(this.interviewTime).getTime() >= new Date().getTime()) {
        if (new Date(this.interviewTime).getTime() >= new Date().getTime() && (!this.appointmentDetail.appointmentClosedInfo)) {
            this.showFutureDateConfirmPopup = true;
        } else {
            this.showConfirmPopup = true;
@@ -262,5 +272,8 @@
        z-index: 5;
      }
    }
.confirm-btn{
  display: flex;
  justify-content: center;
}
</style>