From 858b8f2b41f272855c50d11960bceadc3c62380f Mon Sep 17 00:00:00 2001
From: chenyao <1219716595@qq.com>
Date: Thu, 10 Apr 2025 09:26:32 +0800
Subject: [PATCH] feat: 增加任务时间段和当天判断

---
 src/views/TaskManage/TaskIntermediateContent/AddTask.vue |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/src/views/TaskManage/TaskIntermediateContent/AddTask.vue b/src/views/TaskManage/TaskIntermediateContent/AddTask.vue
index a44db76..ad3f4f0 100644
--- a/src/views/TaskManage/TaskIntermediateContent/AddTask.vue
+++ b/src/views/TaskManage/TaskIntermediateContent/AddTask.vue
@@ -17,14 +17,15 @@
 							v-model="taskData"
 							format="YYYY-MM-DD"
 							value-format="YYYY-MM-DD"
+							:disabled-date="disabledDate"
 						/>
 					</div>
 					<div class="item">任务时间:
-						<!-- <el-time-picker
+						<el-time-picker
 							v-model="searchForm.execute_time_arr"
 							placeholder="选择时间"
 							format="HH:mm"
-							value-format="HH:mm"/> -->
+							value-format="HH:mm"/>
 					</div>
 					<div class="item">选择航线:
 						<el-select
@@ -113,6 +114,11 @@
 });
 const isShowAddTask = defineModel('show');
 
+// 禁用当天之前的日期
+const disabledDate = (time) => {
+  return time.getTime() < Date.now() - 8.64e7; // 86400000 = 24 * 60 * 60 * 1000
+};
+
 // 获取航线列表数据
 const routeOptions = ref([]);
 const getRouteList = async () => {
@@ -191,6 +197,26 @@
     });
     return;
   }
+	// 检查任务时间
+  if (searchForm.execute_time_arr) {
+    const now = new Date();
+    const today = now.toDateString();
+    const selectedDate = new Date(taskData.value).toDateString();
+    
+    if (today === selectedDate) {
+      const [hours, minutes] = searchForm.execute_time_arr.split(':');
+      const selectedTime = new Date();
+      selectedTime.setHours(parseInt(hours), parseInt(minutes));
+      
+      if (selectedTime < now) {
+        ElMessage({
+          message: '任务时间不能小于当前时间',
+          type: 'warning'
+        });
+        return;
+      }
+    }
+  }
 	searchForm.begin_time = `${taskData.value} 00:00:00`;
   searchForm.end_time = `${taskData.value} 23:59:59`;
 	

--
Gitblit v1.9.3