From fe323b176c9adb2369496a1dbc41f1a128a85ae5 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期四, 17 四月 2025 16:46:35 +0800
Subject: [PATCH] 被终止的计划计算轮灌组实际灌溉时长时,如果时长为0则改为1

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml |   16 +++++++++++-----
 1 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml
index 4fbefea..970d0b6 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml
@@ -321,11 +321,17 @@
         IF(#{terminateTime} > DATE_ADD(sche.start_time, INTERVAL sche.duration MINUTE), DATE_ADD(sche.start_time, INTERVAL sche.duration MINUTE),
             IF(#{terminateTime} > sche.start_time, #{terminateTime}, NULL)) AS stopTime,
         <!--sche.duration,-->
-        TIMESTAMPDIFF(MINUTE,
-        IF(#{terminateTime} > sche.start_time, sche.start_time, NULL),
-            IF(#{terminateTime} > DATE_ADD(sche.start_time, INTERVAL sche.duration MINUTE), DATE_ADD(sche.start_time, INTERVAL sche.duration MINUTE),
-                IF(#{terminateTime} > sche.start_time, #{terminateTime}, NULL))
-        ) AS duration,
+        IF(
+            TIMESTAMPDIFF(MINUTE,
+            IF(#{terminateTime} > sche.start_time, sche.start_time, NULL),
+                IF(#{terminateTime} > DATE_ADD(sche.start_time, INTERVAL sche.duration MINUTE), DATE_ADD(sche.start_time, INTERVAL sche.duration MINUTE),
+                    IF(#{terminateTime} > sche.start_time, #{terminateTime}, NULL))
+            ) = 0, 1,
+            TIMESTAMPDIFF(MINUTE,
+                IF(#{terminateTime} > sche.start_time, sche.start_time, NULL),
+                IF(#{terminateTime} > DATE_ADD(sche.start_time, INTERVAL sche.duration MINUTE), DATE_ADD(sche.start_time, INTERVAL sche.duration MINUTE),
+                    IF(#{terminateTime} > sche.start_time, #{terminateTime}, NULL))
+        )) AS duration,
         NULL AS publishResult
     FROM ir_irrigate_group  grp
         INNER JOIN ir_irrigate_schedule sche ON sche.group_id = grp.id

--
Gitblit v1.8.0