From 909dfdf6ceff702f65bdc15bd958589c6df4195d Mon Sep 17 00:00:00 2001
From: zhangchen <1652267879@qq.com>
Date: 星期六, 26 七月 2025 15:48:48 +0800
Subject: [PATCH] ID1825-定时任务禁止修改

---
 src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue |    6 ++++--
 src/views/mobile/bedsideAuxiliaryScreen/components/TimePicker.vue    |   10 +++++++---
 2 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue b/src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue
index d931077..6421ac5 100644
--- a/src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue
+++ b/src/views/mobile/bedsideAuxiliaryScreen/components/ScheduledTask.vue
@@ -25,7 +25,7 @@
       <div class="scheduled-task-content" v-loading="loading">
         <div class="content-left">
           <div class="content-left-date">
-            <TimePicker v-model="timeValue" />
+            <TimePicker v-model="timeValue" :disabled="type === 1" />
             <!-- 创建的情况 -->
             <div class="date-btn" v-if="type === 0">
               <div
@@ -49,7 +49,7 @@
               <input
                 v-model.trim="taskName"
                 type="text"
-                :disabled="isInpDisabled"
+                :disabled="isInpDisabled || type === 1"
                 class="stereotyped-writing-input"
                 placeholder="请输入自定义内容"
               />
@@ -217,6 +217,7 @@
 };
 
 const onStereotypedWritingClick = (item: TaskItem) => {
+  if (type.value === 1) return;
   if (taskName.value === item.value) {
     taskName.value = "";
     isInpDisabled.value = false;
@@ -227,6 +228,7 @@
 };
 
 const onAddMinutesClick = (item: DateItem) => {
+  if (type.value === 1) return;
   detaCheck.value = item.value;
   timeValue.value = addMinutes(timeValue.value, item.value);
 };
diff --git a/src/views/mobile/bedsideAuxiliaryScreen/components/TimePicker.vue b/src/views/mobile/bedsideAuxiliaryScreen/components/TimePicker.vue
index 61b1444..261d70c 100644
--- a/src/views/mobile/bedsideAuxiliaryScreen/components/TimePicker.vue
+++ b/src/views/mobile/bedsideAuxiliaryScreen/components/TimePicker.vue
@@ -1,6 +1,6 @@
 <template>
   <div class="time-picker">
-    <div class="picker-column" ref="hourRef" @scroll="onScroll('hour')">
+    <div class="picker-column" ref="hourRef" @scroll="onScroll('hour')" :class="disabled ? 'disabled' : ''">
       <div
         v-for="(h, index) in loopHours"
         :key="index"
@@ -12,7 +12,7 @@
       </div>
     </div>
     <span class="colon">:</span>
-    <div class="picker-column" ref="minuteRef" @scroll="onScroll('minute')">
+    <div class="picker-column" ref="minuteRef" @scroll="onScroll('minute')" :class="disabled ? 'disabled' : ''">
       <div
         v-for="(m, index) in loopMinutes"
         :key="index"
@@ -29,7 +29,7 @@
 <script setup lang="ts">
 import { ref, watch, onMounted, nextTick } from "vue";
 
-const props = defineProps<{ modelValue: string }>();
+const props = defineProps<{ modelValue: string, disabled: boolean }>();
 const emit = defineEmits(["update:modelValue"]);
 
 const hours = Array.from({ length: 24 }, (_, i) => i);
@@ -111,6 +111,7 @@
 );
 
 function onScroll(type: "hour" | "minute") {
+  if (props.disabled) return;
   if (isProgrammaticScroll[type]) {
     // 程序滚动,忽略,避免死循环
     isProgrammaticScroll[type] = false;
@@ -197,6 +198,9 @@
     &::-webkit-scrollbar {
       display: none; /* Chrome Safari */
     }
+    &.disabled{
+      overflow: hidden;
+    }
 
     .picker-item {
       height: 0.26rem;

--
Gitblit v1.8.0