From 9f3c4a33279f10ed420d604765487558ab0744f0 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期五, 11 四月 2025 11:42:21 +0800
Subject: [PATCH] 获取已完成灌溉计划接口增加分页功能

---
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java |  129 +++++++++++++++++++++---------------------
 1 files changed, 64 insertions(+), 65 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
index 016a084..1a7137f 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
@@ -6,14 +6,13 @@
 import com.dy.common.multiDataSource.DataSourceContext;
 import com.dy.common.mw.protocol.Command;
 import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
 import com.dy.common.webUtil.QueryResultVo;
 import com.dy.pipIrrGlobal.config.DingTalk;
 import com.dy.pipIrrGlobal.daoPr.PrDivideMapper;
 import com.dy.pipIrrGlobal.daoPr.PrIntakeMapper;
 import com.dy.pipIrrGlobal.pojoPr.PrIntake;
-import com.dy.pipIrrGlobal.voPr.VoIntake;
-import com.dy.pipIrrGlobal.voPr.VoOnLineIntake;
-import com.dy.pipIrrProject.intake.qo.OnLineIntakesQO;
+import com.dy.pipIrrGlobal.voPr.*;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.common.utils.PojoUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -27,7 +26,9 @@
 import org.springframework.web.client.RestTemplate;
 import org.springframework.web.util.UriComponentsBuilder;
 
-import java.util.*;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
 
 /**
  * @author wuzeyu
@@ -115,14 +116,14 @@
      */
 
     public int update(PrIntake po) {
-        if (po.getTownId() == null || po.getTownId() == 0) {
-            Long townId = getSupperByVillageId(po.getVillageId());
-            po.setTownId(townId);
-        }
-        if (po.getCountyId() == null || po.getCountyId() == 0) {
-            Long countyId = getSupperByVillageId(getSupperByVillageId(po.getVillageId()));
-            po.setCountyId(countyId);
-        }
+//        if (po.getTownId() == null || po.getTownId() == 0) {
+//            Long townId = getSupperByVillageId(po.getVillageId());
+//            po.setTownId(townId);
+//        }
+//        if (po.getCountyId() == null || po.getCountyId() == 0) {
+//            Long countyId = getSupperByVillageId(getSupperByVillageId(po.getVillageId()));
+//            po.setCountyId(countyId);
+//        }
         return this.prIntakeMapper.updateByPrimaryKeySelective(po);
 //        return this.prIntakeMapper.updateByPrimaryKey(po);
     }
@@ -134,41 +135,15 @@
      * @return 鍙栨按鍙h褰曞垪琛�
      */
     public QueryResultVo<List<VoIntake>> getIntakes(QueryVo queryVo) {
-        Command com = new Command();
-        com.id = Command.defaultId;
-        com.code = "LCD0001";
-        com.type = "innerCommand";
-        comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw);
-        BaseResponse baseResponse = sendCom2Mw(com);
-        JSONObject response = (JSONObject) JSON.toJSON(baseResponse);
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+        Long itemTotal = prIntakeMapper.getRecordCount(params);
 
-        if (response != null && response.getString("code").equals("0001")) {
-            JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap");
-            HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class);
-
-            JSONArray jsonArray = new JSONArray();
-            for (Map.Entry<String, Boolean> entry : onLineMap.entrySet()) {
-                JSONObject jsonObject = new JSONObject();
-                jsonObject.put("rtuAddr", entry.getKey());
-                jsonObject.put("isOnLine", entry.getValue());
-                jsonArray.add(jsonObject);
-            }
-
-            queryVo.setOnLineMap(jsonArray.toJSONString());
-
-            Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
-            Long itemTotal = prIntakeMapper.getRecordCount(params);
-
-            QueryResultVo<List<VoIntake>> rsVo = new QueryResultVo<>();
-            rsVo.pageSize = queryVo.pageSize;
-            rsVo.pageCurr = queryVo.pageCurr;
-            rsVo.calculateAndSet(itemTotal, params);
-            rsVo.obj = prIntakeMapper.getIntakes(params);
-            return rsVo;
-        } else {
-            QueryResultVo<List<VoIntake>> rsVo = new QueryResultVo<>();
-            return rsVo;
-        }
+        QueryResultVo<List<VoIntake>> rsVo = new QueryResultVo<>();
+        rsVo.pageSize = queryVo.pageSize;
+        rsVo.pageCurr = queryVo.pageCurr;
+        rsVo.calculateAndSet(itemTotal, params);
+        rsVo.obj = prIntakeMapper.getIntakes(params);
+        return rsVo;
     }
 
     /**
@@ -188,8 +163,8 @@
      *
      * @return 鎵�鏈夊彇姘村彛闆嗗悎
      */
-    public QueryResultVo<List<PrIntake>> selectAll() {
-        QueryResultVo<List<PrIntake>> rsVo = new QueryResultVo<>();
+    public QueryResultVo<List<VoAllIntake>> selectAll() {
+        QueryResultVo<List<VoAllIntake>> rsVo = new QueryResultVo<>();
         rsVo.obj = this.prIntakeMapper.selectAll();
         return rsVo;
     }
@@ -200,7 +175,7 @@
      * @param id 鍙栨按鍙D
      * @return 鍙栨按鍙e疄浣�
      */
-    public PrIntake selectById(Long id) {
+    public VoAllIntake selectById(Long id) {
         return this.prIntakeMapper.selectByPrimaryKey(id);
     }
 
@@ -246,11 +221,12 @@
     }
 
     /**
+     * 姝ゅ姛鑳藉凡缍撶Щ妞嶅埌remote妯″鐨凪onitroSv涓�
+     *
      * 鑾峰彇鍙栨按鍙e垪琛�
      *
      * @return
-     */
-    public QueryResultVo<List<VoOnLineIntake>> selectOnLineIntakes(OnLineIntakesQO qo) {
+     public QueryResultVo<List<VoOnLineIntake>> selectOnLineIntakes(OnLineIntakesQO qo) {
         Command com = new Command();
         com.id = Command.defaultId;
         com.code = "LCD0001";
@@ -284,8 +260,8 @@
             QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>();
             return rsVo;
         }
-    }
-
+     }
+     */
     /**
      * 鏍规嵁鎿嶄綔鍛樿幏鍙栧父鐢ㄥ彇姘村彛
      *
@@ -299,21 +275,21 @@
         com.type = "innerCommand";
         JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com));
 
+        JSONArray jsonArray = new JSONArray();
         if (response != null && response.getString("code").equals("0001")) {
-            JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap");
-            HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class);
-
-            JSONArray jsonArray = new JSONArray();
-            for (Map.Entry<String, Boolean> entry : onLineMap.entrySet()) {
-                JSONObject jsonObject = new JSONObject();
-                jsonObject.put("rtuAddr", entry.getKey());
-                jsonObject.put("isOnLine", entry.getValue());
-                jsonArray.add(jsonObject);
+            JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
+            if(attachment != null) {
+                attachment.forEach((key, value) -> {
+                    JSONObject jsonObject = new JSONObject();
+                    jsonObject.put("rtuAddr", key);
+                    jsonObject.put("isOnLine", value);
+                    jsonArray.add(jsonObject);
+                });
             }
-            return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator);
-        } else {
-            return new ArrayList<>();
+        //} else {
+        //    return new ArrayList<>();
         }
+        return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator);
     }
 
     /**
@@ -334,6 +310,11 @@
         } catch (Exception e) {
             e.printStackTrace();
         }
+
+        if(response == null) {
+            return BaseResponseUtils.buildErrorMsg("涓棿浠惰皟鐢ㄥけ璐�");
+        }
+
         return response.getBody();
     }
 
@@ -359,4 +340,22 @@
     }
 
 
+    /**
+     * app淇敼鍙栨按鍙g粡绾害
+     * @param po
+     * @return
+     */
+    public int updateIntakeLngLat(IntakeUpdateLngLat po) {
+        return prIntakeMapper.updateByPrimaryKeySelective1(po);
+    }
+
+    /**
+     * 鑾峰彇鏈粦瀹氬埌杞亴缁勭殑鍙栨按鍙e垪琛�
+     * @return
+     */
+    public QueryResultVo<List<VoIntakeSimple>> getFreeIntakes() {
+        QueryResultVo<List<VoIntakeSimple>> rsVo = new QueryResultVo<>();
+        rsVo.obj = prIntakeMapper.getFreeIntakes();
+        return rsVo;
+    }
 }

--
Gitblit v1.8.0