From a0a9fc7a58a39626a395d2760194641726e1cd35 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 25 四月 2025 10:48:15 +0800
Subject: [PATCH] 1、微信小程序后端轮灌迟延时长改为可配置的; 2、微信小程序查询取水口接口实现修改,改为后端模糊查询;

---
 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/irrigatePlan/IrrigatePlanSv.java |   33 ++++++++++++++++++++++++++++++---
 1 files changed, 30 insertions(+), 3 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/irrigatePlan/IrrigatePlanSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/irrigatePlan/IrrigatePlanSv.java
index 1ac23ad..cdc76d5 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/irrigatePlan/IrrigatePlanSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/irrigatePlan/IrrigatePlanSv.java
@@ -18,7 +18,9 @@
 import org.apache.dubbo.common.utils.PojoUtils;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDateTime;
 import java.time.ZoneId;
@@ -67,11 +69,17 @@
     @Autowired
     private CommandSv commandSv;
 
+    @Value("${webchat.irr.plan.delay}")
+    private Integer irrPlanDelay ;//杞亴涓鍒掑紑闃�鐨勫欢杩熸椂闀�
+
+    private static final Integer irrPlanDelayDefault = 5 ;//杞亴涓鍒掑紑闃�鐨勯粯璁ゅ欢杩熸椂闀�
+
     /**
      * 娣诲姞鐏屾簤璁″垝
      * @param po
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public Long addIrrigatePlan(IrIrrigatePlan po) {
         irrigatePlanMapper.insert(po);
         return po.getId();
@@ -82,6 +90,7 @@
      * @param planSimple
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public Map deletePlan(PlanSimple planSimple) {
         Long planId = planSimple.getPlanId();
         Long operatorId = planSimple.getOperatorId();
@@ -176,15 +185,19 @@
         LocalDateTime startTime = planStartTime.toInstant().atZone(ZoneId.systemDefault()) .toLocalDateTime();
         if(startupMode == 1){
             // 娴嬭瘯闃舵寤跺悗2鍒嗛挓锛屾寮忓彂甯冧负5鍒嗛挓
-            startTime = startTime.plusMinutes(2);
+            //startTime = startTime.plusMinutes(2);
             //startTime = startTime.plusMinutes(5);
+            if(irrPlanDelay == null || irrPlanDelay <= 0) {
+                irrPlanDelay = irrPlanDelayDefault ;
+            }
+            startTime = startTime.plusMinutes(irrPlanDelay);
         }
         planStartTime = Date.from(startTime.atZone(ZoneId.systemDefault()).toInstant());
         LocalDateTime stopTime = startTime.plusMinutes(duration);
         planStopTime = Date.from(stopTime.atZone(ZoneId.systemDefault()).toInstant());
 
         // 鏍规嵁璁″垝ID鏇存柊璁″垝淇℃伅锛堣捣姝㈡椂闂淬�佽鍒掔姸鎬侊級
-        if(irrigatePlanMapper.updatePlanTimes(planStartTime, planStopTime, planId) == 0) {
+        if(this.updatePlanTimes(planStartTime, planStopTime, planId) == 0) {
             Map map = new HashMap<>();
             map.put("success", false);
             map.put("msg", "璁″垝淇℃伅鏇存柊澶辫触");
@@ -200,11 +213,12 @@
             if(scheduleStartTime == null) {
                 scheduleStartTime = planStartTime;
             }
-            updateScheduleStartTime(schedule.getScheduleId(), scheduleStartTime);
+            this.updateScheduleStartTime(schedule.getScheduleId(), scheduleStartTime);
 
             // 璁$畻涓嬩竴缁勭殑寮�濮嬫椂闂�
             LocalDateTime LocalscheduleStartTime = scheduleStartTime.toInstant().atZone(ZoneId.systemDefault()) .toLocalDateTime();
             LocalscheduleStartTime = LocalscheduleStartTime.plusMinutes(schedule.getDuration());
+            LocalscheduleStartTime = LocalscheduleStartTime.minusMinutes(2);
             scheduleStartTime = Date.from(LocalscheduleStartTime.atZone(ZoneId.systemDefault()).toInstant());
         }
 
@@ -307,6 +321,7 @@
      * @param po
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public Integer updatePlan(IrIrrigatePlan po) {
         return irrigatePlanMapper.updateByPrimaryKeySelective(po);
     }
@@ -370,6 +385,7 @@
      * @param po
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public Long addPlanOperate(IrPlanOperate po) {
         irPlanOperateMapper.insert(po);
         return po.getId();
@@ -380,6 +396,7 @@
      * @param po
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public Long addIrrigateSchedule(IrIrrigateSchedule po) {
         irIrrigateScheduleMapper.insert(po);
         return po.getId();
@@ -390,6 +407,7 @@
      * @param planId
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public Integer terminateSchedule(Long planId) {
         return irIrrigateScheduleMapper.terminateSchedule(planId);
     }
@@ -417,6 +435,7 @@
      * @param po
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public Long addPlanSchedule(IrPlanSchedule po) {
         irPlanScheduleMapper.insert(po);
         return po.getId();
@@ -428,6 +447,7 @@
      * @param startTime
      * @return
      */
+    @Transactional(rollbackFor = Exception.class)
     public Integer updateScheduleStartTime(Long scheduleId, Date startTime) {
         return irIrrigateScheduleMapper.updateScheduleStartTime(scheduleId, startTime);
     }
@@ -515,4 +535,11 @@
         return planDetails;
 
     }
+
+    @Transactional(rollbackFor = Exception.class)
+    Integer updatePlanTimes(Date planStartTime, Date planEndTime, Long planId){
+        return irrigatePlanMapper.updatePlanTimes(planStartTime, planEndTime, planId);
+    }
+
+
 }

--
Gitblit v1.8.0