From 10deefbbf38a02104dfdb4354570270972f7d48f Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期二, 29 十月 2024 15:40:34 +0800 Subject: [PATCH] 增加了沙盘系统配置 --- pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java | 146 +++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 124 insertions(+), 22 deletions(-) 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 32c3ed8..ec68ff5 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 @@ -6,9 +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.QueryResultVo; import com.dy.pipIrrGlobal.daoPr.PrIntakeMapper; +import com.dy.pipIrrGlobal.daoRm.RmOpenCloseValveHistoryMapper; import com.dy.pipIrrGlobal.voPr.VoOnLineIntake; +import com.dy.pipIrrGlobal.voRm.VoOpenClostWechat; import com.dy.pipIrrWechat.intake.qo.OnLineIntakesQO; +import com.dy.pipIrrWechat.intake.qo.QoOpenClose; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.common.utils.PojoUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -22,7 +26,6 @@ import org.springframework.web.util.UriComponentsBuilder; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.Map; @@ -42,6 +45,9 @@ @Autowired private RestTemplate restTemplate; + @Autowired + private RmOpenCloseValveHistoryMapper rmOpenCloseValveHistoryMapper; + //protected static String mwUrlSendCom = "http://127.0.0.1:8070/rtuMw/com/send" ; protected String comSendUrl; /** @@ -58,10 +64,10 @@ } /** - * 鑾峰彇鍙栨按鍙� + * 鏍规嵁鍙栨按鍙g紪鍙疯幏鍙栧彇姘村彛瀵硅薄 * @return */ - public VoOnLineIntake selectOnLineIntakes(OnLineIntakesQO qo) { + public VoOnLineIntake selectOneIntake(OnLineIntakesQO qo) { Command com = new Command() ; com.id = Command.defaultId; com.code = "LCD0001"; @@ -70,15 +76,17 @@ JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com)); 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); + JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment"); 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); + if(attachment != null) { + attachment.forEach((key, value) -> { + JSONObject jsonObject = new JSONObject(); + jsonObject.put("rtuAddr", key); + jsonObject.put("isOnLine", value); + jsonArray.add(jsonObject); + + }); } qo.setOnLineMap(jsonArray.toJSONString()); @@ -96,30 +104,86 @@ } /** - * 鏍规嵁鎿嶄綔鍛樿幏鍙栧父鐢ㄥ彇姘村彛 - * @param operator + * 鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄧ嚎锛� * @return */ - public List<VoOnLineIntake> getUsedIntakes(Long operator) { + public QueryResultVo<List<VoOnLineIntake>> selectAllIntakes(OnLineIntakesQO qo) { Command com = new Command() ; com.id = Command.defaultId; com.code = "LCD0001"; com.type = "innerCommand"; comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw); - JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com)); + JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com)); 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); + JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment"); 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); + 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); + + qo.setOnLineMap(jsonArray.toJSONString()); + // 濡傛灉 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.getOnLineIntakesCount(params); + + QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>() ; + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = prIntakeMapper.getOnLineIntakes(params); + return rsVo; + } else { + QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>(); + return rsVo; + } + } + + /** + * 鏍规嵁鎿嶄綔鍛樿幏鍙栧父鐢ㄥ彇姘村彛 + * @param operatorId + * @return + */ + public List<VoOnLineIntake> getUsedIntakes(Long operatorId) { + Command com = new Command() ; + com.id = Command.defaultId; + com.code = "LCD0001"; + com.type = "innerCommand"; + comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw); + + JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com)); + //String response_Str = "{\"code\": \"0001\",\"content\": {\"attachment\": {\"530115059980\": true,\"620201000030\": true},\"code\": \"LCD0001\",\"id\": \"999999999\",\"param\": {\"message\": \"鏌ヨ鎵�鏈塕TU鍦ㄧ嚎鎯呭喌缁撴灉\",\"success\": true},\"protocol\": \"\",\"rtuAddr\": \"\",\"rtuResultSendWebUrl\": \"\",\"type\": \"resultCommand\"},\"msg\": \"璇锋眰鎴愬姛\",\"success\": true}"; + //JSONObject response = JSON.parseObject(response_Str); + //String test = response.toJSONString(); + + if(response != null && response.getString("code").equals("0001")) { + JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment"); + + JSONArray jsonArray = new JSONArray(); + 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()); + return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operatorId); } else { return new ArrayList<>(); } @@ -144,4 +208,42 @@ } return response.getBody(); } + + /** + * 鑾峰彇鐗╃悊鍗″紑鍏抽榾璁板綍锛屽井淇″皬绋嬪簭浣跨敤 + * @param queryVo + * @return + */ + public QueryResultVo<List<VoOpenClostWechat>> getCardOpenClose(QoOpenClose queryVo) { + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); + + Long itemTotal = rmOpenCloseValveHistoryMapper.getCardOpenCloseCount(params); + + QueryResultVo<List<VoOpenClostWechat>> rsVo = new QueryResultVo<>(); + rsVo.pageSize = queryVo.pageSize; + rsVo.pageCurr = queryVo.pageCurr; + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = rmOpenCloseValveHistoryMapper.getCardOpenClose(params); + return rsVo; + } + + /** + * 鑾峰彇铏氭嫙鍗″紑鍏抽榾璁板綍锛屽井淇″皬绋嬪簭浣跨敤 + * @param queryVo + * @return + */ + public QueryResultVo<List<VoOpenClostWechat>> getVcCardOpenClose(QoOpenClose queryVo) { + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); + + Long itemTotal = rmOpenCloseValveHistoryMapper.getVcCardOpenCloseCount(params); + + QueryResultVo<List<VoOpenClostWechat>> rsVo = new QueryResultVo<>(); + rsVo.pageSize = queryVo.pageSize; + rsVo.pageCurr = queryVo.pageCurr; + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = rmOpenCloseValveHistoryMapper.getVcCardOpenClose(params); + return rsVo; + } } -- Gitblit v1.8.0