From 85c39644533f93559ccf51cc4c8dfa7388d36cd4 Mon Sep 17 00:00:00 2001
From: Tomas <tomasysh@gmail.com>
Date: 星期三, 27 四月 2022 14:46:55 +0800
Subject: [PATCH] fix#137058: 顧問管理流程 - 約訪記錄填寫日期需要卡控

---
 PAMapp/components/DateTimePicker.vue |   40 +++++++++++++++++++++++++++++++++-------
 1 files changed, 33 insertions(+), 7 deletions(-)

diff --git a/PAMapp/components/DateTimePicker.vue b/PAMapp/components/DateTimePicker.vue
index 99f4448..de34a14 100644
--- a/PAMapp/components/DateTimePicker.vue
+++ b/PAMapp/components/DateTimePicker.vue
@@ -2,18 +2,42 @@
 
 <template>
     <div class="dateTime">
-        <UiDatePicker @changeDate="changeDateTime($event, 'date')"></UiDatePicker>
-        <UiTimePicker @changeTime="changeDateTime($event, 'time')"></UiTimePicker>
+        <UiDatePicker
+            @changeDate="changeDateTime($event, 'date')"
+            :disabledBeforeSpecificDate="disabledBeforeSpecificDate"
+            :isPastDateDisabled="isPastDateDisabled"
+            :isFutureDateDisabled="isFutureDateDisabled"
+            :defaultValue="defaultValue"
+        ></UiDatePicker>
+        <UiTimePicker
+            @changeTime="changeDateTime($event, 'time')"
+            :defaultValue="defaultValue"
+            :isPastDateDisabled="isPastDateDisabled"
+            :isFutureDateDisabled="isFutureDateDisabled"
+            :changeDate="changeDate"
+        ></UiTimePicker>
     </div>
 </template>
 
 <script lang="ts">
-import { Component, Emit, Vue } from "nuxt-property-decorator";
+import { Component, Emit, Prop, Vue, Watch } from "nuxt-property-decorator";
 
 @Component
 export default class DateTimePicker extends Vue {
-    changeDate!: Date;
+    changeDate: Date | string = '';
     changeTime!: string;
+
+    @Prop()
+    defaultValue!: string;
+
+    @Prop()
+    isPastDateDisabled!: boolean;
+
+    @Prop()
+    isFutureDateDisabled!: boolean;
+
+    @Prop()
+    disabledBeforeSpecificDate?: string;
 
     @Emit('changeDateTime')
     changeDateTime(event, type) {
@@ -24,12 +48,14 @@
             this.changeTime = event;
         }
         if (this.changeDate && this.changeTime) {
-            const timeArray = this.changeTime.split(':');
-            const interViewTime = this.changeDate.setHours(+timeArray[0], +timeArray[1]);
+            const hour = this.changeTime.split(':')[0];
+            const minute = this.changeTime.split(':')[1];
+            const interViewTime = new Date(this.changeDate).setHours(+hour, +minute);
             return new Date(interViewTime);
         }
         return '';
     }
+
 }
 </script>
 
@@ -40,4 +66,4 @@
     justify-content: space-between;
     font-size: 20px;
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.8.0