From c7c8554e2b9809bc90ac4a43fdaa39dfe16f4ab0 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 09 五月 2025 14:09:32 +0800
Subject: [PATCH] “远程测控”功能返回数据中增加protocol和protocolVersion属性,以备前端做多协议兼容。

---
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml |   30 +++++++++++++++++++++++++++---
 1 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml
index 7397c62..2837fc5 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigatePlanMapper.xml
@@ -375,8 +375,13 @@
     SELECT
         plan.plan_name AS planName,
         pro.project_name AS projectName,
-        IF(#{terminateTime} &lt; plan.plan_start_time, 6,
-          IF(#{terminateTime} &lt; plan.plan_stop_time, 5, 4)) AS state,
+<!--        IF(#{terminateTime} &lt; plan.plan_start_time, 6,-->
+<!--          IF(#{terminateTime} &lt; plan.plan_stop_time, 5, 4)) AS state,-->
+        IF(plan.executing_state = 3, 5,
+            IF(NOW() &lt; plan_start_time, 2,
+                IF(NOW() &lt; plan_stop_time, 3, 4)
+            )
+        ) AS state,
         plan.plan_start_time AS planStartTime,
         plan.plan_stop_time AS planStopTime,
         #{terminateTime} AS realStopTime,
@@ -433,13 +438,32 @@
     ) AS has_intersection
   </select>
 
+  <!--鍒ゆ柇褰撳墠璁″垝涓庢渶杩戠粓姝㈢殑璁″垝鐨勮疆鐏岀粍鏄惁鏈夐噸鍙� -->
+  <select id="hasPlanOverlapWithTerminated" resultType="java.lang.Integer">
+    SELECT COUNT(1) 
+    FROM (
+        SELECT sche1.group_id
+        FROM ir_plan_schedule ps1
+        INNER JOIN ir_irrigate_schedule sche1 ON ps1.schedule_id = sche1.id
+        WHERE ps1.plan_id = #{planId}
+    ) AS current_groups
+    INNER JOIN (
+        SELECT sche2.group_id
+        FROM ir_plan_schedule ps2
+        INNER JOIN ir_irrigate_schedule sche2 ON ps2.schedule_id = sche2.id
+        WHERE ps2.plan_id = #{terminatedPlanId}
+    ) AS terminated_groups
+    ON current_groups.group_id = terminated_groups.group_id
+    LIMIT 1
+  </select>
+
   <!--鏍规嵁璁″垝ID鑾峰彇璁″垝鏈�鏂扮姸鎬�-->
   <select id="getPlanLatestState" resultType="java.lang.Integer">
     SELECT
         IF(plan_state = 1, 1,
             IF(executing_state = 3, 5,
                 IF(NOW() &lt; plan_start_time, 2,
-                  IF(NOW() > plan_stop_time, 3, 4)
+                  IF(NOW() &lt; plan_stop_time, 3, 4)
                 )
             )
     ) AS planState

--
Gitblit v1.8.0