From 551d18a095e8fe462e4099fdd5b2578e12934d45 Mon Sep 17 00:00:00 2001 From: Tomas <tomasysh@gmail.com> Date: 星期二, 08 二月 2022 12:25:44 +0800 Subject: [PATCH] Merge branch 'Phase3' of https://dev.pollex.com.tw:8443/r/pcalife/PAM into Phase3 --- PAMapp/components/Ui/UiTimePicker.vue | 32 +++++++++++++++++++++++++------- 1 files changed, 25 insertions(+), 7 deletions(-) diff --git a/PAMapp/components/Ui/UiTimePicker.vue b/PAMapp/components/Ui/UiTimePicker.vue index fee41e2..291fbcd 100644 --- a/PAMapp/components/Ui/UiTimePicker.vue +++ b/PAMapp/components/Ui/UiTimePicker.vue @@ -30,6 +30,9 @@ @Prop() isPastDateDisabled!: boolean; + @Prop() + isFutureDateDisabled!: boolean; + /////////////////////////////////////////////////////////////////////// @Emit('changeTime') @@ -50,25 +53,40 @@ get pickerOptions() { let minTime = ''; + let maxTime = ''; const currentDate = new Date(); - if (this.isPastDateDisabled && this.changeDate && this.isPickedToday(currentDate)) { - minTime = this.formatTimeString(currentDate); - this.isPickedDisableTime(currentDate, minTime); + if (this.changeDate && this.isPickedToday(currentDate)) { + + if (this.isPastDateDisabled) { + minTime = this.formatTimeString(currentDate); + this.isPickedDisableTime(currentDate, minTime); + } + + if (this.isFutureDateDisabled) { + maxTime = this.formatTimeString(currentDate); + this.isPickedDisableTime(currentDate, maxTime); + } + } return { start: '09:00', step: '00:15', end: '21:00', - minTime: minTime + minTime: minTime, + maxTime: maxTime } } - private isPickedDisableTime(currentDate: Date, minTime: string) { - const currentTime = this.getTimeValue(currentDate, minTime); + private isPickedDisableTime(currentDate: Date, minMaxTime: string) { + const currentTime = this.getTimeValue(currentDate, minMaxTime); const pickedTime = this.getTimeValue(currentDate, this.timeValue); - if (pickedTime < currentTime) { + if (this.isPastDateDisabled && pickedTime < currentTime) { + this.timeValue = ''; + this.changeTime(); + } + if (this.isFutureDateDisabled && currentTime < pickedTime) { this.timeValue = ''; this.changeTime(); } -- Gitblit v1.8.0