From f77e9a7cfbe775523551df5faab3c70a5a9c190c Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期一, 03 三月 2025 14:22:35 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/command/CommandSv.java | 85 +++++++++++++++++++++++++++++++----------- 1 files changed, 63 insertions(+), 22 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/command/CommandSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/command/CommandSv.java index 8aedcb7..2ce8770 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/command/CommandSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/command/CommandSv.java @@ -11,11 +11,14 @@ import com.dy.pipIrrGlobal.daoPr.PrIntakeVcMapper; import com.dy.pipIrrGlobal.daoPr.PrWaterPriceMapper; import com.dy.pipIrrGlobal.daoRm.RmCommandHistoryMapper; +import com.dy.pipIrrGlobal.daoRm.RmIrrigateProfileMapper; +import com.dy.pipIrrGlobal.daoRm.RmOpenCloseValveLastMapper; import com.dy.pipIrrGlobal.daoSe.SeClientCardMapper; import com.dy.pipIrrGlobal.daoSe.SeVirtualCardMapper; import com.dy.pipIrrGlobal.pojoRm.RmCommandHistory; import com.dy.pipIrrGlobal.pojoSe.SeClientCard; -import com.dy.pipIrrGlobal.voPr.VoOnLineIntake; +import com.dy.pipIrrGlobal.voRm.VoIrrigaterProfile; +import com.dy.pipIrrGlobal.voRm.VoRtuAndVc; import com.dy.pipIrrGlobal.voRm.VoUnclosedValve; import com.dy.pipIrrGlobal.voSe.VoVirtualCard; import lombok.RequiredArgsConstructor; @@ -25,9 +28,7 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * @author ZhuBaoMin @@ -46,6 +47,9 @@ private final PrWaterPriceMapper prWaterPriceMapper; private final PrIntakeVcMapper prIntakeVcMapper; private final SeClientCardMapper seClientCardMapper; + private final RmIrrigateProfileMapper rmIrrigateProfileMapper; + private final RmOpenCloseValveLastMapper rmOpenCloseValveLastMapper; + //private final PrCommonIntakesMapper prCommonIntakesMapper; /** * pro_mw锛氬睘鎬� @@ -56,13 +60,16 @@ private String pro_mw = "mw"; private String key_mw = "comSendUrl"; @Autowired - public CommandSv(RmCommandHistoryMapper rmCommandHistoryMapper, SeVirtualCardMapper seVirtualCardMapper, PrIntakeMapper prIntakeMapper, PrWaterPriceMapper prWaterPriceMapper, PrIntakeVcMapper prIntakeVcMapper, SeClientCardMapper seClientCardMapper, Environment env) { + public CommandSv(RmCommandHistoryMapper rmCommandHistoryMapper,RmOpenCloseValveLastMapper rmOpenCloseValveLastMapper, SeVirtualCardMapper seVirtualCardMapper, PrIntakeMapper prIntakeMapper, PrWaterPriceMapper prWaterPriceMapper, PrIntakeVcMapper prIntakeVcMapper, SeClientCardMapper seClientCardMapper, RmIrrigateProfileMapper rmIrrigateProfileMapper, Environment env) { this.rmCommandHistoryMapper = rmCommandHistoryMapper; + this.rmOpenCloseValveLastMapper = rmOpenCloseValveLastMapper; + //this.prCommonIntakesMapper = prCommonIntakesMapper; this.seVirtualCardMapper = seVirtualCardMapper; this.prIntakeMapper = prIntakeMapper; this.prWaterPriceMapper = prWaterPriceMapper; this.prIntakeVcMapper = prIntakeVcMapper; this.seClientCardMapper = seClientCardMapper; + this.rmIrrigateProfileMapper = rmIrrigateProfileMapper; this.env = env; } /** @@ -93,31 +100,55 @@ com.code = "LCD0001"; com.type = "innerCommand"; comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw); - 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); + }); } + //System.out.println(jsonArray.toJSONString()); + } - System.out.println(jsonArray); - List<VoUnclosedValve> res = rmCommandHistoryMapper.getUnclosedValves(jsonArray.toJSONString(), operator); + /** + * 鑾峰彇鏈叧闃�鐨凴TU鍦板潃鍜岃櫄鎷熷崱缂栧彿瀵规暟缁� + * 閬嶅巻鏁扮粍鑾峰彇鏈�鍚庡懡浠ゆ棩蹇桰D闆嗗悎 + */ + List<VoRtuAndVc> rtus = rmCommandHistoryMapper.getUnclosedRtus(operator); + String comIds = ""; + if(rtus != null && rtus.size() > 0) { + for (int i = 0; i < rtus.size(); i++) { + Long comId = rmCommandHistoryMapper.getLastComId(rtus.get(i).getRtuAddr(), rtus.get(i).getVcNum()); + if(comId > 0) { + comIds = comIds + "\"" + comId + "\","; + } + } + } + + if(comIds.length() > 0) { + comIds = comIds.substring(0, comIds.length()-1); + List<VoUnclosedValve> res = rmCommandHistoryMapper.getUnclosedValves(jsonArray.toJSONString(), comIds); if(res != null) { return res; - } else { - return new ArrayList<>(); } - } else { - QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>(); - return new ArrayList<>(); } + return new ArrayList<>(); + } + + /** + * 涓烘寚瀹氾紙闃�鎺у櫒鍦板潃銆佹按鍗$紪鍙枫�佹棤鍏抽榾璁板綍锛夊紑鍏抽榾鏈�鏂拌褰曟坊鍔犲叧闃�鏃堕棿锛屼娇涔嬩笉鍦ㄦ湭鍏抽榾璁板綍涓樉绀� + * @param rtuAddr + * @param icCardNo + * @return + */ + public Integer addClostTime(String rtuAddr, String icCardNo) { + return rmOpenCloseValveLastMapper.addCloseTime(rtuAddr, icCardNo); } /** @@ -145,7 +176,7 @@ */ public Long insert(RmCommandHistory po) { rmCommandHistoryMapper.insert(po); - return po.getId(); + return po.getComId(); } /** @@ -166,4 +197,14 @@ return prIntakeMapper.getIntakeIdByName(intakeName); } + /** + * 鏍规嵁閰嶇疆绫诲瀷鑾峰彇閰嶇疆鍊� + * @param type + * @return + */ + QueryResultVo<List<VoIrrigaterProfile>> getIrrPro(Integer type) { + QueryResultVo<List<VoIrrigaterProfile>> rsVo = new QueryResultVo<>() ; + rsVo.obj = rmIrrigateProfileMapper.getIrrPro(type); + return rsVo ; + } } -- Gitblit v1.8.0