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/resources/application-self.yml | 5 ++
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java | 16 ++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java | 24 ++++++++++++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java | 16 ++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/irrigatePlan/IrrigatePlanSv.java | 14 ++++++-
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml | 33 ++++++++++++++++
6 files changed, 106 insertions(+), 2 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java
index 35a5b41..989f41f 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java
@@ -205,4 +205,20 @@
* @return
*/
List<VoIntakeSimple> getNotLinkVcIntakes();
+
+
+ /**
+ * 涓簑echat,鏍规嵁鎸囧畾鍙栨按鍙e悕绉版ā绯婏紙鍚庣锛夋煡璇㈡按鍙h褰曟暟
+ * @param params
+ * @return
+ */
+ Long getSomeIntakesCount4Wx(Map<?, ?> params);
+
+ /**
+ * 涓簑echat,鏍规嵁鎸囧畾鍙栨按鍙e悕绉版ā绯婏紙鍚庣锛夋煡璇㈡按鍙�
+ * @param params
+ * @return
+ */
+ List<VoOnLineIntake> getSomeIntakes4Wx(Map<?, ?> params);
+
}
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
index e580bd8..c4b2f4f 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml
@@ -765,4 +765,37 @@
WHERE iv.intake_id = inta.id
) AND inta.deleted = 0
</select>
+
+
+
+ <!-- 涓簑echat,鏍规嵁鎸囧畾鍙栨按鍙e悕绉版ā绯婏紙鍚庣锛夋煡璇㈡按鍙h褰曟暟 -->
+ <select id="getSomeIntakesCount4Wx" parameterType="java.util.Map" resultType="java.lang.Long">
+ SELECT COUNT(*) AS recordCount
+ FROM pr_intake tb
+ <where>
+ tb.deleted = 0
+ <if test="intakeName != null and intakeName != ''">
+ AND tb.name LIKE CONCAT('%', #{intakeName})
+ </if>
+ </where>
+ </select>
+
+ <!-- 涓簑echat,鏍规嵁鎸囧畾鍙栨按鍙e悕绉版ā绯婏紙鍚庣锛夋煡璇㈡按鍙h褰� -->
+ <select id="getSomeIntakes4Wx" parameterType="java.util.Map" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake">
+ SELECT
+ inta.id AS intakeId,
+ con.rtuAddr,
+ inta.name AS intakeNum
+ FROM pr_intake inta
+ INNER JOIN pr_controller con ON con.intakeId = inta.id
+ <where>
+ inta.deleted = 0
+ <if test="intakeName != null and intakeName != ''">
+ AND inta.name LIKE CONCAT('%', #{intakeName})
+ </if>
+ </where>
+ ORDER BY inta.id DESC
+ </select>
+
+
</mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java
index f4ad602..721917a 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeCtrl.java
@@ -40,6 +40,22 @@
* @return
*/
@GetMapping(path = "all_intakes")
+ public BaseResponse<QueryResultVo<List<VoOnLineIntake>>> getSomeIntakes(OnLineIntakesQO qo) {
+ try {
+ return BaseResponseUtils.buildSuccess(intakeSv.selectSomeIntakes(qo));
+ } catch (Exception e) {
+ log.error("鏌ヨ鍙栨按鍙e紓甯�", e);
+ return BaseResponseUtils.buildException(e.getMessage());
+ }
+ }
+
+
+ /**
+ * 鏍规嵁鍙栨按鍙g紪鍙疯幏鍙栧彇姘村彛瀵硅薄
+ * @param qo
+ * @return
+ */
+ @GetMapping(path = "all_intakes1")
public BaseResponse<QueryResultVo<VoOnLineIntake>> getOneIntake(OnLineIntakesQO qo) {
try {
return BaseResponseUtils.buildSuccess(intakeSv.selectOneIntake(qo));
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
index 33bb871..90bbc2d 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
@@ -65,6 +65,30 @@
this.env = env;
}
+
+ /**
+ * 鑾峰彇鍙栨按鍙e垪琛�
+ * @return
+ */
+ public QueryResultVo<List<VoOnLineIntake>> selectSomeIntakes(OnLineIntakesQO qo) {
+ // 濡傛灉 intakeNum 涓嶄负绌猴紝鍒欒浆涓哄皬鍐欏啀鍐欏叆qo瀵硅薄
+ String intakeNum = qo.getIntakeNum();
+ if(intakeNum != null) {
+ qo.setIntakeNum(intakeNum.toLowerCase());
+ }
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+ Long itemTotal = prIntakeMapper.getSomeIntakesCount4Wx(params);
+
+ QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>() ;
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = prIntakeMapper.getSomeIntakes4Wx(params);
+ return rsVo;
+
+ }
+
/**
* 鏍规嵁鍙栨按鍙g紪鍙疯幏鍙栧彇姘村彛瀵硅薄
* @return
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 e9c674f..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,6 +18,7 @@
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;
@@ -67,6 +68,11 @@
@Autowired
private CommandSv commandSv;
+
+ @Value("${webchat.irr.plan.delay}")
+ private Integer irrPlanDelay ;//杞亴涓鍒掑紑闃�鐨勫欢杩熸椂闀�
+
+ private static final Integer irrPlanDelayDefault = 5 ;//杞亴涓鍒掑紑闃�鐨勯粯璁ゅ欢杩熸椂闀�
/**
* 娣诲姞鐏屾簤璁″垝
@@ -179,8 +185,12 @@
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);
@@ -527,7 +537,7 @@
}
@Transactional(rollbackFor = Exception.class)
- private Integer updatePlanTimes(Date planStartTime, Date planEndTime, Long planId){
+ Integer updatePlanTimes(Date planStartTime, Date planEndTime, Long planId){
return irrigatePlanMapper.updatePlanTimes(planStartTime, planEndTime, planId);
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/resources/application-self.yml b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/resources/application-self.yml
index 1a7ca23..8a9c150 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/resources/application-self.yml
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/resources/application-self.yml
@@ -12,6 +12,11 @@
context-parameters:
#GenerateIdSetSuffixListener涓簲鐢紝鍙栧�艰寖鍥存槸0-99
idSuffix: ${pipIrr.wechat.idSuffix}
+webchat:
+ irr:
+ plan:
+ delay: 5 #杞亴涓鍒掑紑闃�鐨勫欢杩熸椂闀�
+
#闃块噷鐭俊鏈嶅姟
aliyun:
--
Gitblit v1.8.0