From 2b3defc58765bdd126901b809448868a5f8feb3c Mon Sep 17 00:00:00 2001 From: Administrator <zhubaomin> Date: 星期三, 29 五月 2024 15:12:56 +0800 Subject: [PATCH] 2024-05-29 朱宝民 --- pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoUnclosedValve.java | 2 + pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/valve/ValveCtrl.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientCtrl.java | 6 +- pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml | 29 +++++++++----- pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java | 47 ++++++++++++++++++----- pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtu/RtuCtrl.java | 2 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmCommandHistoryMapper.java | 10 +++-- 7 files changed, 69 insertions(+), 29 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmCommandHistoryMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmCommandHistoryMapper.java index e4db94c..a38de92 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmCommandHistoryMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmCommandHistoryMapper.java @@ -4,6 +4,7 @@ import com.dy.pipIrrGlobal.pojoRm.RmCommandHistory; import com.dy.pipIrrGlobal.voRm.VoUnclosedValve; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -29,9 +30,10 @@ int updateByPrimaryKey(RmCommandHistory record); /** - * 鏍规嵁鎿嶄綔鍛業D鑾峰彇鏈叧闃�璁板綍 - * @param operator 鎿嶄綔鍛業D - * @return 鏈叧闃�璁板綍 + * 鏍规嵁鎿嶄綔鍛業D鑾峰彇鏈叧闃�璁板綍锛堝寘鍚湪绾挎儏鍐碉級 + * @param onLineMap + * @param operator + * @return */ - List<VoUnclosedValve> getUnclosedValves(Long operator); + List<VoUnclosedValve> getUnclosedValves(@Param("onLineMap") String onLineMap, @Param("operator") Long operator); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoUnclosedValve.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoUnclosedValve.java index 65dc623..b398d09 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoUnclosedValve.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoUnclosedValve.java @@ -20,6 +20,8 @@ private String intakeNum; + private Boolean isOnLine; + private String rtuAddr; private String orderNo; diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml index f656fde..3bc43bd 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml @@ -171,20 +171,29 @@ where id = #{id,jdbcType=BIGINT} </update> - <!--鏍规嵁鎿嶄綔鍛業D鑾峰彇鏈叧闃�璁板綍--> + <!--鏍规嵁鎿嶄綔鍛業D鑾峰彇鏈叧闃�璁板綍锛堝寘鍚湪绾挎儏鍐碉級--> <select id="getUnclosedValves" resultType="com.dy.pipIrrGlobal.voRm.VoUnclosedValve"> SELECT - com.command_code AS commandCode, - inta.name AS intakeNum, - com.rtuAddr, - com.param ->>'$.orderNo' AS orderNo, - com.param ->>'$.icCardNo' AS vcNum, - com.send_time AS openTime + com.command_code AS commandCode, + inta.name AS intakeNum, + rtus.isOnLine, + com.rtuAddr, + com.param ->>'$.orderNo' AS orderNo, + com.param ->>'$.icCardNo' AS vcNum, + com.send_time AS openTime FROM rm_command_history com - INNER JOIN pr_controller con ON com.rtuAddr = con.rtuAddr - INNER JOIN pr_intake inta ON con.intakeId = inta.id + INNER JOIN pr_controller con ON com.rtuAddr = con.rtuAddr + INNER JOIN pr_intake inta ON con.intakeId = inta.id + INNER JOIN JSON_TABLE( + <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',--> + #{onLineMap}, + '$[*]' COLUMNS( + rtuAddr VARCHAR(20) PATH '$.rtuAddr', + isOnLine BOOLEAN PATH '$.isOnLine' + ) + ) rtus ON com.rtuAddr = rtus.rtuAddr WHERE (com.command_code = '92' OR com.command_code = 'A2') AND com.operator = #{operator} - AND NOT EXISTS (SELECT * FROM rm_command_history WHERE (command_code = '93' OR command_code = 'A3') AND param ->>'$.orderNo' = com.param ->>'$.orderNo') + AND NOT EXISTS (SELECT * FROM rm_command_history WHERE (command_code = '93' OR command_code = 'A3') AND param ->>'$.orderNo' = com.param ->>'$.orderNo') ORDER BY com.send_time DESC </select> </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java index 00296db..cf75af5 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java @@ -67,16 +67,6 @@ return rmCommandHistoryMapper.updateByPrimaryKeySelective(po); } - - /** - * 鏍规嵁鎿嶄綔鍛業D鑾峰彇鏈叧闃�璁板綍 - * @param operator - * @return - */ - public List<VoUnclosedValve> getUnclosedValves(Long operator) { - return rmCommandHistoryMapper.getUnclosedValves(operator); - } - /** * 鑾峰彇鍙栨按鍙e垪琛� * @return @@ -146,4 +136,41 @@ } } + /** + * 鏍规嵁鎿嶄綔鍛業D鑾峰彇鏈叧闃�璁板綍锛堝寘鍚湪绾挎儏鍐碉級 + * @param operator + * @return + */ + public List<VoUnclosedValve> getUnclosedValves(Long operator) { + Command com = new Command() ; + com.id = Command.defaultId; + com.code = "LCD0001"; + com.type = "innerCommand"; + + 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); + + 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); + } + + List<VoUnclosedValve> res = rmCommandHistoryMapper.getUnclosedValves(jsonArray.toJSONString(), operator); + if(res != null) { + return res; + } else { + return new ArrayList<>(); + } + } else { + QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>(); + return new ArrayList<>(); + } + } + } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtu/RtuCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtu/RtuCtrl.java index 9b4551d..c0fd553 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtu/RtuCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtu/RtuCtrl.java @@ -51,7 +51,7 @@ protected static String controllerType = "57"; /** - * 鏌ヨ鎵�鏈塕TU鍦ㄧ嚎鎯呭喌 + * 鏌ヨ鎵�鏈塕TU鍦ㄧ嚎鎯呭喌锛堜粎娴嬭瘯鐢級 * @return */ @GetMapping(path = "get_online") diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/valve/ValveCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/valve/ValveCtrl.java index b2af522..aa2d7c7 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/valve/ValveCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/valve/ValveCtrl.java @@ -280,7 +280,7 @@ @SsoAop() public BaseResponse<List<VoUnclosedValve>> getUnclosedValves(@RequestParam Long operator){ try { - List<VoUnclosedValve> res = rmCommandHistoryMapper.getUnclosedValves(operator); + List<VoUnclosedValve> res = commandSv.getUnclosedValves(operator); return BaseResponseUtils.buildSuccess(res); } catch (Exception e) { log.error("鑾峰彇鏈叧闃�璁板綍寮傚父", e); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientCtrl.java index d93184e..af54665 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/client/ClientCtrl.java @@ -406,10 +406,10 @@ /** * 鏍¢獙楠岃瘉鐮� - * @param phoneNumber - * @param code + * @param po + * @param bindingResult * @return - * @throws ClientException + * @throws IOException */ @Operation(summary = "鏍¢獙楠岃瘉鐮�", description = "鏍¢獙楠岃瘉鐮�") @ApiResponses(value = { -- Gitblit v1.8.0