From a6d0abba8c936b90797027872dacadf8154ea4f4 Mon Sep 17 00:00:00 2001
From: zhangchen <1652267879@qq.com>
Date: 星期五, 25 七月 2025 15:55:14 +0800
Subject: [PATCH] ID1825-优化定时任务loading显示效果

---
 src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue |   39 +++++++++++++++++++++++++--------------
 1 files changed, 25 insertions(+), 14 deletions(-)

diff --git a/src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue b/src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue
index 34328e5..8111fe6 100644
--- a/src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue
+++ b/src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue
@@ -22,7 +22,7 @@
           />
         </div>
       </template>
-      <div class="scheduled-task-content">
+      <div class="scheduled-task-content" v-loading="loading">
         <div class="content-left">
           <div class="content-left-date">
             <TimePicker v-model="timeValue" />
@@ -64,7 +64,13 @@
       </div>
       <template #footer>
         <div class="my-button cancel" @click="handleCancel">取消</div>
-        <div class="my-button confirm" @click="handleConfirm">确认</div>
+        <div
+          class="my-button confirm"
+          :class="loading ? 'cancel' : ''"
+          @click="handleConfirm"
+        >
+          确认
+        </div>
       </template>
     </el-dialog>
   </div>
@@ -207,14 +213,18 @@
 };
 
 const handleCancel = () => {
+  if (loading.value) return;
   isShow.value = false;
 };
 
 const handleConfirm = async () => {
+  if (loading.value) return;
   const today = dayjs().format("YYYY-MM-DD");
-  const fullDateTime = dayjs(`${today} ${timeValue.value}`).second(0).millisecond(0); // 秒和毫秒都去掉,要不然间隔短了就是0分钟
+  const fullDateTime = dayjs(`${today} ${timeValue.value}`)
+    .second(0)
+    .millisecond(0); // 秒和毫秒都去掉,要不然间隔短了就是0分钟
 
-  const now = dayjs().second(0).millisecond(0);; // 秒和毫秒都去掉
+  const now = dayjs().second(0).millisecond(0); // 秒和毫秒都去掉
   if (!fullDateTime.isAfter(now))
     return ElMessage.warning("任务提醒时间不能早于或等于当前时间");
   if (!taskName.value) return ElMessage.warning("任务内容不能为空");
@@ -225,17 +235,17 @@
       deviceCode: bedsideAuxiliaryScreenStore.deviceData.deviceCode,
       minutes: diffMinutes,
       alertText: taskName.value,
-    }
+    };
     const recordCode = bedsideAuxiliaryScreenStore.deviceData.recordCode;
     const { data, message } = await setTimeoutAlert(params);
     if (data !== "OK") return ElMessage.warning(message);
-    ElMessage.success('操作成功');
+    ElMessage.success("操作成功");
     bedsideAuxiliaryScreenStore.setSyncTask({
-        deviceCode: params.deviceCode,
-        recordCode: recordCode,
-        taskDate: dayjs(fullDateTime).format("YYYY-MM-DD HH:mm"),
-        taskName: params.alertText,
-        overdue: false
+      deviceCode: params.deviceCode,
+      recordCode: recordCode,
+      taskDate: dayjs(fullDateTime).format("YYYY-MM-DD HH:mm"),
+      taskName: params.alertText,
+      overdue: false,
     });
     handleCancel();
   } finally {
@@ -419,12 +429,13 @@
     &:not(:first-child) {
       margin-left: 6px;
     }
-    &.cancel {
-      background: #bbc6dd;
-    }
+
     &.confirm {
       background: #769aff;
     }
+    &.cancel {
+      background: #bbc6dd;
+    }
     &.refresh {
       background: #e6a23c;
     }

--
Gitblit v1.8.0