From ff3b82ed06ab8a0d9b9b755c32b47dfb2a82bc6f Mon Sep 17 00:00:00 2001 From: Administrator <zhubaomin> Date: 星期一, 22 七月 2024 15:30:30 +0800 Subject: [PATCH] 2024-07-22 朱宝民 设备查询、设置接口 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com38Vo.java | 4 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml | 4 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java | 38 -- pipIrr-platform/pipIrr-global/src/main/resources/application-database-sp.yml | 4 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/valve/ValveCtrl.java | 182 +++++++------- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com37Vo.java | 3 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com39Vo.java | 3 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Alarm.java | 18 + pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/ComXyVo.java | 15 + pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CommandGet.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/rtu/RtuCtrl.java | 341 ++++++++------------------- pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml | 4 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandResultCtrl.java | 25 + pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CollectPeriod.java | 31 ++ pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Domain.java | 7 pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml | 2 pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml | 4 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/MidResultActionError.java | 26 +- 18 files changed, 320 insertions(+), 393 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com37Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com37Vo.java index a86e91f..031b639 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com37Vo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com37Vo.java @@ -1,10 +1,13 @@ package com.dy.common.mw.protocol.p206V1_0_0.downVos; +import lombok.Data; + /** * @Author: liurunyu * @Date: 2024/6/29 7:08 * @Description */ +@Data public class Com37Vo { public Integer seconds ;//娴侀噺閲囬泦鍛ㄦ湡锛堢锛�(澶т簬1) } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com38Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com38Vo.java index 988e996..24c3589 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com38Vo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com38Vo.java @@ -1,10 +1,14 @@ package com.dy.common.mw.protocol.p206V1_0_0.downVos; +import lombok.Data; + /** * @Author: liurunyu * @Date: 2024/6/29 7:08 * @Description */ + +@Data public class Com38Vo { public Double remainMoneyAlarm ;//鐢ㄦ埛浣欓鎶ヨ鍊�(澶т簬1.0) } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com39Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com39Vo.java index a94b03b..2437929 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com39Vo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/Com39Vo.java @@ -1,10 +1,13 @@ package com.dy.common.mw.protocol.p206V1_0_0.downVos; +import lombok.Data; + /** * @Author: liurunyu * @Date: 2024/6/29 7:08 * @Description */ +@Data public class Com39Vo { public Double batteryVoltAlarm ;//鐢垫睜鐢靛帇鎶ヨ鍊�(澶т簬0.1) } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/ComXyVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/ComXyVo.java new file mode 100644 index 0000000..1b18051 --- /dev/null +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/downVos/ComXyVo.java @@ -0,0 +1,15 @@ +package com.dy.common.mw.protocol.p206V1_0_0.downVos; + +import lombok.Data; + +/** + * @author ZhuBaoMin + * @date 2024-07-20 9:35 + * @LastEditTime 2024-07-20 9:35 + * @Description + */ + +@Data +public class ComXyVo { + public String commandCode; // 鍛戒护鐮� +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java index f774726..95daca2 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java @@ -178,8 +178,9 @@ com.type = commandTypeOuter; com.rtuResultSendWebUrl = rtuResultSendWebUrl; - com.param = param; - + if(param != null) { + com.param = param; + } return com; } @@ -190,7 +191,7 @@ * @return */ protected BaseResponse<Data> dealWithCallBack(Long comId, Command com) { - CompletableFuture<Data> feature = new CompletableFuture<>(); + CompletableFuture<JSONObject> feature = new CompletableFuture<>(); features.put(comId, feature); try { // 鍙戦�佸懡浠� @@ -202,9 +203,10 @@ return BaseResponseUtils.buildErrorMsg(job_param.getString("message")); } - Data resultData = feature.get(180, TimeUnit.SECONDS); + JSONObject resultData = feature.get(180, TimeUnit.SECONDS); features.remove(comId); - Long commandId = Long.parseLong(resultData.getCommandId()); + + Long commandId = resultData.getLong("commandId"); if (commandId.equals(comId)) { return BaseResponseUtils.buildSuccess(resultData); } else { @@ -283,7 +285,8 @@ rmCommandHistory.setComId(comId); rmCommandHistory.setResult((byte) 0); rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); - return BaseResponseUtils.buildErrorMsg(response_CallBack.getContent().toString()); + //return BaseResponseUtils.buildErrorMsg(response_CallBack.getContent().toString()); + return BaseResponseUtils.buildErrorMsg(response_CallBack.getMsg()); } // 鍥炶皟瓒呮椂 @@ -301,27 +304,7 @@ return BaseResponseUtils.buildErrorMsg(CommandResultCode.GET_RESULT_IN_ONE_MINUTE.getMessage()); } - // 鍥炶皟鎴愬姛锛屽啀鍒ゆ柇鎵ц鏄惁鎴愬姛 - JSONObject job_content = (JSONObject) JSON.toJSON(response_CallBack.getContent()); - JSONObject job_subData = (JSONObject) job_content.getJSONObject("subData").getJSONObject("subData"); - Boolean dealResult = job_subData.getBoolean("success"); - if (!dealResult) { - /** - * 鎵ц澶辫触 - * 鏇存柊鎵ц缁撴灉銆佽繑鍥炵粨鏋滄椂闂淬�佺粨鏋滃唴瀹� - */ - rmCommandHistory = new RmCommandHistory(); - rmCommandHistory.setComId(comId); - rmCommandHistory.setResult((byte) 0); - rmCommandHistory.setResultTime(new Date()); - //rmCommandHistory.setResultText((JSONObject)JSON.toJSON(response_CallBack.getContent())); - rmCommandHistory.setResultText(response_CallBack.getContent().toString()); - rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); - return BaseResponseUtils.buildErrorMsg(response_CallBack.getContent().toString()); - } - /** - * 鎵ц鎴愬姛 * 濡傛灉鏄紑鍏抽榾锛氭洿鏀硅櫄鎷熷崱鐘舵�侊細鏄惁浣跨敤涓�佹渶鍚庢搷浣溿�佹渶鍚庢搷浣滄椂闂� * 鏇存柊鎵ц缁撴灉銆佽繑鍥炵粨鏋滄椂闂淬�佺粨鏋滃唴瀹� * 杩斿洖鍥炶皟鍐呭 @@ -340,8 +323,7 @@ } // 鍥炶皟杩斿洖鐨勫唴瀹癸紝鍥炶皟缁撴灉鍐欏叆鍛戒护鏃ュ織琛ㄧ殑浠诲姟鐢变腑闂翠欢瀹屾垚 - Data myData = (Data) response_CallBack.getContent(); - return BaseResponseUtils.buildSuccess(myData); + return response_CallBack; } } diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml index 41ba0b1..30f81cf 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml @@ -5,9 +5,9 @@ #name: pj type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://192.168.40.166:3306/pipIrr_pj?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull +# url: jdbc:mysql://192.168.40.166:3306/pipIrr_pj?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull # url: jdbc:mysql://127.0.0.1:3306/pipIrr_pj?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull -# url: jdbc:mysql://8.140.179.55:3306/pipIrr_pj?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull + url: jdbc:mysql://8.140.179.55:3306/pipIrr_pj?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull username: root password: dysql,;.abc!@# druid: diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-sp.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-sp.yml index 89a4fbc..1bbe4e2 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-sp.yml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-sp.yml @@ -5,9 +5,9 @@ #name: sp type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://192.168.40.166:3306/pipIrr_sp?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull +# url: jdbc:mysql://192.168.40.166:3306/pipIrr_sp?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull # url: jdbc:mysql://127.0.0.1:3306/pipIrr_sp?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull -# url: jdbc:mysql://8.140.179.55:3306/pipIrr_sp?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull + url: jdbc:mysql://8.140.179.55:3306/pipIrr_sp?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull username: root password: dysql,;.abc!@# druid: diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml index 3b1c640..1177808 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml @@ -5,9 +5,9 @@ #name: ym type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://192.168.40.166:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull +# url: jdbc:mysql://192.168.40.166:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull # url: jdbc:mysql://127.0.0.1:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull -# url: jdbc:mysql://8.140.179.55:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull + url: jdbc:mysql://8.140.179.55:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull username: root password: dysql,;.abc!@# druid: diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml index eee1c2a..6e0fed0 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml @@ -72,7 +72,7 @@ pipIrr: global: - dev: false #鏄惁寮�鍙戦樁娈碉紝true鎴杅alse + dev: true #鏄惁寮�鍙戦樁娈碉紝true鎴杅alse dsName: ym #寮�鍙戦樁娈碉紝璁剧疆涓存椂鐨勬暟鎹簱鍚嶇О mw: webPort: 8070 diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/MidResultActionError.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/MidResultActionError.java index 99ddf3d..21590fa 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/MidResultActionError.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/MidResultActionError.java @@ -1,26 +1,24 @@ package com.dy.rtuMw.server.forTcp; +import com.dy.common.mw.protocol.MidResult; +import com.dy.common.mw.protocol.MidResultAction; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import com.dy.common.mw.protocol.MidResult; -import com.dy.common.mw.protocol.MidResultError; -import com.dy.common.mw.protocol.MidResultAction; - public class MidResultActionError implements MidResultAction { - + private static Logger log = LogManager.getLogger(MidResultActionError.class.getName()); @Override public void doAction(MidResult result) { - if(result != null && result instanceof MidResultError){ - MidResultError rs = (MidResultError)result ; - log.error("瑙f瀽鎴栨瀯閫�" + (rs.protocolName==null?"":("閫氫俊鍗忚" + rs.protocolName + "鐨�")) + "RTU" + (rs.rtuAddr==null?"":("(鍦板潃" + rs.rtuAddr + ")" )) + "鏁版嵁鍑洪敊" + (rs.message == null?"":("锛�" + rs.message))); - if(rs.e != null){ - log.error(rs.e); - rs.e.printStackTrace(); - } - } + //if(result != null && result instanceof MidResultError){ + // MidResultError rs = (MidResultError)result ; + // log.error("瑙f瀽鎴栨瀯閫�" + (rs.protocolName==null?"":("閫氫俊鍗忚" + rs.protocolName + "鐨�")) + "RTU" + (rs.rtuAddr==null?"":("(鍦板潃" + rs.rtuAddr + ")" )) + "鏁版嵁鍑洪敊" + (rs.message == null?"":("锛�" + rs.message))); + // if(rs.e != null){ + // log.error(rs.e); + // rs.e.printStackTrace(); + // } + //} } -} +} \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml index 34bb341..9373985 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml @@ -3,9 +3,9 @@ datasource: #閰嶇疆鏁版嵁婧� type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://192.168.40.166:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull +# url: jdbc:mysql://192.168.40.166:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull # url: jdbc:mysql://127.0.0.1:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull -# url: jdbc:mysql://8.140.179.55:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull + url: jdbc:mysql://8.140.179.55:3306/pipIrr_ym?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull username: root password: dysql,;.abc!@# druid: diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandResultCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandResultCtrl.java index d9d64c5..e98153a 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandResultCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandResultCtrl.java @@ -1,8 +1,8 @@ package com.dy.pipIrrRemote.common; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; import com.dy.common.mw.protocol.Data; -import com.dy.common.webUtil.BaseResponse; -import com.dy.common.webUtil.BaseResponseUtils; import com.dy.pipIrrGlobal.command.ComSupport; import lombok.extern.slf4j.Slf4j; import org.springframework.http.MediaType; @@ -25,18 +25,21 @@ @RequestMapping(path="comRes") public class CommandResultCtrl extends ComSupport { @PostMapping(path = "receive", consumes = MediaType.APPLICATION_JSON_VALUE) - public BaseResponse<String> receive(@RequestBody Data data) { - Long comId = 0L; - if(data.getCommandId() != null) { - comId = Long.parseLong(data.getCommandId()); - } + public void receive(@RequestBody Data data) { + JSONObject job_data = (JSONObject) JSON.toJSON(data); + //System.out.println(job_data.toJSONString()); + JSONObject job_subData = job_data.getJSONObject("subData").getJSONObject("subData"); - CompletableFuture<Data> feature = (CompletableFuture<Data>) features.get(comId); + JSONObject job_response = new JSONObject(); + job_response.put("data", job_subData); + job_response.put("commandCode", job_data.getString("code")); + job_response.put("commandId", job_data.getString("commandId")); + + CompletableFuture<JSONObject> feature = (CompletableFuture<JSONObject>) features.get(job_data.getLong("commandId")); if(feature != null) { - feature.complete(data); + feature.complete(job_response); }else{ - log.error("feature is null"); + feature.complete(new JSONObject()); } - return BaseResponseUtils.buildSuccess("ok"); } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Alarm.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Alarm.java index 43917f6..5356c50 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Alarm.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Alarm.java @@ -1,5 +1,7 @@ package com.dy.pipIrrRemote.common.dto; +import jakarta.validation.constraints.DecimalMin; +import jakarta.validation.constraints.NotBlank; import lombok.Data; /** @@ -14,12 +16,20 @@ public static final long serialVersionUID = 202407041337001L; /** - * 鍓╀綑姘撮噺鎶ヨ鍊� + * 鍔熻兘鐮� */ - private Integer waterAlarm; + @NotBlank(message = "鍔熻兘鐮佷笉鑳戒负绌�") + private String commandCode; /** - * 鍓╀綑閲戦鎶ヨ鍊� + * 鐢垫睜鐢靛帇鎶ヨ鍊�(澶т簬0.1) */ - private Integer moneyAlarm; + @DecimalMin(value = "1.0", message = "鐢ㄦ埛浣欓鎶ヨ鍊间笉鑳藉皬浜�1.0") + public Double batteryVoltAlarm; + + /** + * 鐢ㄦ埛浣欓鎶ヨ鍊�(澶т簬1.0) + */ + @DecimalMin(value = "1.0", message = "鐢ㄦ埛浣欓鎶ヨ鍊间笉鑳藉皬浜�1.0") + private Double remainMoneyAlarm; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CollectPeriod.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CollectPeriod.java new file mode 100644 index 0000000..361c787 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CollectPeriod.java @@ -0,0 +1,31 @@ +package com.dy.pipIrrRemote.common.dto; + +import jakarta.validation.constraints.Min; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +/** + * @author ZhuBaoMin + * @date 2024-07-20 10:37 + * @LastEditTime 2024-07-20 10:37 + * @Description 閲囬泦鍛ㄦ湡瀵硅薄锛岀敤浜庤缃祦閲忛噰闆嗗懆鏈熸帴鍙� + */ + +@Data +public class CollectPeriod extends DtoBase { + public static final long serialVersionUID = 202407201038001L; + + /** + * 鍔熻兘鐮� + */ + @NotBlank(message = "鍔熻兘鐮佷笉鑳戒负绌�") + private String commandCode; + + /** + * 娴侀噺閲囬泦鍛ㄦ湡锛堢锛�(澶т簬1) + */ + @NotNull(message = "娴侀噺閲囬泦鍛ㄦ湡涓嶈兘涓虹┖") + @Min(value = 1, message = "娴侀噺閲囬泦鍛ㄦ湡涓嶈兘灏忎簬1") + private Integer seconds; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CommandDeal.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CommandGet.java similarity index 91% rename from pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CommandDeal.java rename to pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CommandGet.java index 05ce604..e6e8933 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CommandDeal.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/CommandGet.java @@ -11,7 +11,7 @@ */ @Data -public class CommandDeal extends DtoBase { +public class CommandGet extends DtoBase { public static final long serialVersionUID = 202407041401001L; /** diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Domain.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Domain.java index 9b0c15c..0ba8021 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Domain.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/dto/Domain.java @@ -1,5 +1,6 @@ package com.dy.pipIrrRemote.common.dto; +import jakarta.validation.constraints.NotBlank; import lombok.Data; /** @@ -14,6 +15,12 @@ public static final long serialVersionUID = 202407050857001L; /** + * 鍔熻兘鐮� + */ + @NotBlank(message = "鍔熻兘鐮佷笉鑳戒负绌�") + private String commandCode; + + /** * IP閫氶亾鍙凤紝鍙栧�艰寖鍥达細1,2 */ private Integer channel; 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 961b3f0..5768ebf 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 @@ -3,21 +3,25 @@ import com.alibaba.fastjson2.JSONObject; import com.dy.common.aop.SsoAop; import com.dy.common.mw.protocol.p206V1_0_0.CodeV1_0_1; -import com.dy.common.mw.protocol.p206V1_0_0.downVos.Com97Vo; +import com.dy.common.mw.protocol.p206V1_0_0.downVos.*; import com.dy.common.mw.protocol.p206V202404.CodeV202404; -import com.dy.common.mw.protocol.p206V202404.downVos.*; +import com.dy.common.mw.protocol.p206V202404.downVos.ComCdXyVo; import com.dy.common.util.IDLongGenerator; import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import com.dy.pipIrrGlobal.command.ComSupport; import com.dy.pipIrrGlobal.command.dto.Param; import com.dy.pipIrrRemote.common.CommandSv; -import com.dy.pipIrrRemote.common.dto.*; +import com.dy.pipIrrRemote.common.dto.Alarm; +import com.dy.pipIrrRemote.common.dto.CollectPeriod; +import com.dy.pipIrrRemote.common.dto.CommandGet; +import com.dy.pipIrrRemote.common.dto.Domain; import com.dy.pipIrrRemote.result.RemoteResultCode; import jakarta.validation.Valid; -import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; +import org.springframework.core.env.Environment; import org.springframework.http.MediaType; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.BindingResult; @@ -27,7 +31,9 @@ import org.springframework.web.bind.annotation.RestController; import java.util.Objects; -import java.util.Optional; + +//import com.dy.common.mw.protocol.p206V1_0_0.downVos.Com97Vo; +//import com.dy.common.mw.protocol.p206V1_0_0.downVos.ComXyVo; /** * @author ZhuBaoMin @@ -39,7 +45,7 @@ @Slf4j @RestController @RequestMapping(path="rtu") -@RequiredArgsConstructor +//@RequiredArgsConstructor public class RtuCtrl extends ComSupport { private final CommandSv commandSv; private final IDLongGenerator idLongGenerator; @@ -48,20 +54,38 @@ private String rtuCallbackUrl_rm; /** - * 閫氱敤澶勭悊鎺ュ彛 - * 97 娓呴櫎鐢ㄦ按璁板綍 - * 98 娓呴櫎鍏呭�艰褰� - * 99 娓呴櫎鏃ヨ褰� - * 9A 娓呴櫎骞寸敤姘撮噺 - * 50 鏌ヨ缁堢鍦板潃 - * @param po - * @param bindingResult - * @return + * pro_mw锛氬睘鎬� + * tag浠庢帶鍒跺櫒涓幏鍙� + * key_mw锛歶rl鐨刱ey */ - @PostMapping(path = "common_deal", consumes = MediaType.APPLICATION_JSON_VALUE) + private Environment env = null; + private String pro_mw = "mw"; + private String key_mw = "comSendUrl"; + + @Autowired + public RtuCtrl(CommandSv commandSv, IDLongGenerator idLongGenerator, Environment env) { + this.commandSv = commandSv; + this.idLongGenerator = idLongGenerator; + this.env = env; + } + + /** + * 閫氱敤鏌ヨ鎺ュ彛 + * p206V1_0_1 + * 66 鏌ヨIP鍜岀鍙� + * 67 鏌ヨ娴侀噺閲囬泦鍛ㄦ湡 + * 68 鏌ヨ鐢ㄦ埛浣欓鎶ヨ鍊� + * 69 鏌ヨ鐢垫睜鐢靛帇鎶ヨ鍊� + * 6A 鏌ヨ闃�闂ㄥ牭杞數娴佸�� + * 6B 鏌ヨ闃�闂ㄨ秴鏃舵椂闂� + * @param po 鏌ヨ浼犲叆瀵硅薄 + * @param bindingResult + * @return 鏌ヨ缁撴灉 + */ + @PostMapping(path = "common_get", consumes = MediaType.APPLICATION_JSON_VALUE) @Transactional(rollbackFor = Exception.class) @SsoAop() - public BaseResponse<Boolean> commonDeal(@RequestBody @Valid CommandDeal po, BindingResult bindingResult) { + public BaseResponse<Boolean> commonGet(@RequestBody @Valid CommandGet po, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } @@ -82,6 +106,8 @@ } String rtuAddr = job_rtu.getString("rtuAddr"); String protocol = job_rtu.getString("protocol"); + String orgTag = job_rtu.getString("orgTag"); + comSendUrl = env.getProperty(pro_mw + "." + orgTag + "." + key_mw); // 鑾峰彇鍔熻兘鐮� String commandCode = po.getCommandCode(); @@ -109,55 +135,8 @@ return dealWithCommandResult(myParam); } else if(protocol.equals("p206V1_0_1")) { // 鍒涘缓瑙嗗浘 - Com97Vo param = new Com97Vo() ; - return BaseResponseUtils.buildSuccess(""); - } else { - return BaseResponseUtils.buildFail("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); - } - } - - /** - * 璁剧疆璁惧缁堢鍦板潃 - * @param addr 璁剧疆璁惧缁堢鍦板潃浼犲叆瀵硅薄 - * @param bindingResult - * @return - */ - @PostMapping(path = "set_addr", consumes = MediaType.APPLICATION_JSON_VALUE) - @Transactional(rollbackFor = Exception.class) - @SsoAop() - public BaseResponse<Boolean> setAddr(@RequestBody @Valid Addr addr, BindingResult bindingResult) { - if(bindingResult != null && bindingResult.hasErrors()){ - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } - - Long intakeId = addr.getIntakeId(); - String newRtuAddr = addr.getNewRtuAddr(); - Long operator = addr.getOperator(); - Long comId = idLongGenerator.generate(); - - // 鑾峰彇绯荤粺鍙傛暟 - if(!setuped) { - setUp(); - } - - // 鍙栨按鍙D鎹㈤榾鎺у櫒鍦板潃鍙婇�氳鍗忚 - JSONObject job_rtu = getRtu(intakeId, null); - if(job_rtu == null) { - return BaseResponseUtils.buildErrorMsg(RemoteResultCode.RTU_NOT_EXIST.getMessage()); - } - String rtuAddr = job_rtu.getString("rtuAddr"); - String protocol = job_rtu.getString("protocol"); - - String commandCode = null; - if(protocol.equals("p206V202404")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV202404.cd_10; - - // 鍒涘缓瑙嗗浘 - ComCd10Vo param = new ComCd10Vo() ; - param.controllerType = controllerType; - param.projectNo = projectNo; - param.rtuNewAddr = newRtuAddr; + ComXyVo param = new ComXyVo(); + param.setCommandCode(commandCode); /** * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� @@ -166,44 +145,37 @@ */ Param myParam = new Param(); myParam.setComId(comId); + myParam.setComType((byte)2); myParam.setCommandCode(commandCode); - myParam.setCommandName(CodeV202404.getCodeName(commandCode)); + myParam.setCommandName(CodeV1_0_1.getCodeName(commandCode)); myParam.setIntakeId(intakeId); myParam.setRtuAddr(rtuAddr); myParam.setProtocol(protocol); + //myParam.setVcId(vcId); myParam.setParam(param); myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); myParam.setOperator(operator); return dealWithCommandResult(myParam); - } else if(protocol.equals("p206V1_0_1")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV1_0_1.cd_10; - - // 鍒涘缓瑙嗗浘 - Com97Vo param = new Com97Vo() ; - return BaseResponseUtils.buildSuccess(""); } else { return BaseResponseUtils.buildFail("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); } } /** - * 璁剧疆璁惧缁堢鍓╀綑姘撮噺鍜屽墿浣欓噾棰濇姤璀﹀�� + * 璁剧疆娴侀噺閲囬泦鍛ㄦ湡 * @param po * @param bindingResult * @return */ - @PostMapping(path = "set_alarm", consumes = MediaType.APPLICATION_JSON_VALUE) + @PostMapping(path = "set_collect_period", consumes = MediaType.APPLICATION_JSON_VALUE) @Transactional(rollbackFor = Exception.class) @SsoAop() - public BaseResponse<Boolean> setAlarm(@RequestBody @Valid Alarm po, BindingResult bindingResult) { + public BaseResponse<Boolean> setCollectPeriod(@RequestBody @Valid CollectPeriod po, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } Long intakeId = po.getIntakeId(); - Integer waterAlarm = Optional.ofNullable(po.getWaterAlarm()).orElse(0); - Integer moneyAlarm = Optional.ofNullable(po.getMoneyAlarm()).orElse(0); Long operator = po.getOperator(); Long comId = idLongGenerator.generate(); @@ -219,18 +191,17 @@ } String rtuAddr = job_rtu.getString("rtuAddr"); String protocol = job_rtu.getString("protocol"); + String orgTag = job_rtu.getString("orgTag"); + comSendUrl = env.getProperty(pro_mw + "." + orgTag + "." + key_mw); - String commandCode = null; + // 鑾峰彇鍔熻兘鐮� + String commandCode = po.getCommandCode(); if(protocol.equals("p206V202404")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV202404.cd_16; - + return BaseResponseUtils.buildSuccess(""); + } else if(protocol.equals("p206V1_0_1")) { // 鍒涘缓瑙嗗浘 - ComCd16Vo param = new ComCd16Vo(); - param.controllerType = controllerType; - param.projectNo = projectNo; - param.waterAlarm = waterAlarm; - param.moneyAlarm = moneyAlarm; + Com37Vo param = new Com37Vo(); + param.setSeconds(po.getSeconds()); /** * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� @@ -239,44 +210,37 @@ */ Param myParam = new Param(); myParam.setComId(comId); + myParam.setComType((byte)2); myParam.setCommandCode(commandCode); - myParam.setCommandName(CodeV202404.getCodeName(commandCode)); + myParam.setCommandName(CodeV1_0_1.getCodeName(commandCode)); myParam.setIntakeId(intakeId); myParam.setRtuAddr(rtuAddr); myParam.setProtocol(protocol); + //myParam.setVcId(vcId); myParam.setParam(param); myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); myParam.setOperator(operator); return dealWithCommandResult(myParam); - } else if(protocol.equals("p206V1_0_1")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV1_0_1.cd_10; - - // 鍒涘缓瑙嗗浘 - Com97Vo param = new Com97Vo() ; - return BaseResponseUtils.buildSuccess(""); } else { return BaseResponseUtils.buildFail("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); } } /** - * 璁剧疆鏈轰簳骞存渶澶у紑閲囬噺鍜屾按浣嶄笅闄� + * 璁剧疆鏈嶅姟绔疘P鍜岀鍙� * @param po * @param bindingResult * @return */ - @PostMapping(path = "set_well", consumes = MediaType.APPLICATION_JSON_VALUE) + @PostMapping(path = "set_ip_port", consumes = MediaType.APPLICATION_JSON_VALUE) @Transactional(rollbackFor = Exception.class) @SsoAop() - public BaseResponse<Boolean> setWell(@RequestBody @Valid DrivenWell po, BindingResult bindingResult) { + public BaseResponse<Boolean> setIpPort(@RequestBody @Valid Domain po, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } Long intakeId = po.getIntakeId(); - Integer maxAmountYear = Optional.ofNullable(po.getMaxAmountYear()).orElse(0); - Double limitLevel = Optional.ofNullable(po.getLimitLevel()).orElse(0.0); Long operator = po.getOperator(); Long comId = idLongGenerator.generate(); @@ -292,18 +256,18 @@ } String rtuAddr = job_rtu.getString("rtuAddr"); String protocol = job_rtu.getString("protocol"); + String orgTag = job_rtu.getString("orgTag"); + comSendUrl = env.getProperty(pro_mw + "." + orgTag + "." + key_mw); - String commandCode = null; + // 鑾峰彇鍔熻兘鐮� + String commandCode = po.getCommandCode(); if(protocol.equals("p206V202404")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV202404.cd_22; - + return BaseResponseUtils.buildSuccess(""); + } else if(protocol.equals("p206V1_0_1")) { // 鍒涘缓瑙嗗浘 - ComCd22Vo param = new ComCd22Vo(); - param.controllerType = controllerType; - param.projectNo = projectNo; - param.maxAmountYear = maxAmountYear; - param.limitLevel = limitLevel; + Com21Vo param = new Com21Vo(); + param.setIp(po.getIp()); + param.setPort(po.getPort()); /** * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� @@ -312,43 +276,37 @@ */ Param myParam = new Param(); myParam.setComId(comId); + myParam.setComType((byte)2); myParam.setCommandCode(commandCode); - myParam.setCommandName(CodeV202404.getCodeName(commandCode)); + myParam.setCommandName(CodeV1_0_1.getCodeName(commandCode)); myParam.setIntakeId(intakeId); myParam.setRtuAddr(rtuAddr); myParam.setProtocol(protocol); + //myParam.setVcId(vcId); myParam.setParam(param); myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); myParam.setOperator(operator); return dealWithCommandResult(myParam); - } else if(protocol.equals("p206V1_0_1")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV1_0_1.cd_10; - - // 鍒涘缓瑙嗗浘 - Com97Vo param = new Com97Vo() ; - return BaseResponseUtils.buildSuccess(""); } else { return BaseResponseUtils.buildFail("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); } } /** - * 璁剧疆璁惧缁堢骞寸敤姘撮噺 + * 璁剧疆鐢ㄦ埛浣欓鎶ヨ鍊� * @param po * @param bindingResult * @return */ - @PostMapping(path = "set_max_amount", consumes = MediaType.APPLICATION_JSON_VALUE) + @PostMapping(path = "set_remain_money_alarm", consumes = MediaType.APPLICATION_JSON_VALUE) @Transactional(rollbackFor = Exception.class) @SsoAop() - public BaseResponse<Boolean> setMaxAmount(@RequestBody @Valid WaterConsumption po, BindingResult bindingResult) { + public BaseResponse<Boolean> setRemainMoneyAlarm(@RequestBody @Valid Alarm po, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } Long intakeId = po.getIntakeId(); - Integer maxAmountYear = Optional.ofNullable(po.getMaxAmountYear()).orElse(0); Long operator = po.getOperator(); Long comId = idLongGenerator.generate(); @@ -364,17 +322,17 @@ } String rtuAddr = job_rtu.getString("rtuAddr"); String protocol = job_rtu.getString("protocol"); + String orgTag = job_rtu.getString("orgTag"); + comSendUrl = env.getProperty(pro_mw + "." + orgTag + "." + key_mw); - String commandCode = null; + // 鑾峰彇鍔熻兘鐮� + String commandCode = po.getCommandCode(); if(protocol.equals("p206V202404")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV202404.cd_26; - + return BaseResponseUtils.buildSuccess(""); + } else if(protocol.equals("p206V1_0_1")) { // 鍒涘缓瑙嗗浘 - ComCd26Vo param = new ComCd26Vo(); - param.controllerType = controllerType; - param.projectNo = projectNo; - param.maxAmountYear = maxAmountYear; + Com38Vo param = new Com38Vo(); + param.setRemainMoneyAlarm(po.getRemainMoneyAlarm()); /** * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� @@ -383,45 +341,37 @@ */ Param myParam = new Param(); myParam.setComId(comId); + myParam.setComType((byte)2); myParam.setCommandCode(commandCode); - myParam.setCommandName(CodeV202404.getCodeName(commandCode)); + myParam.setCommandName(CodeV1_0_1.getCodeName(commandCode)); myParam.setIntakeId(intakeId); myParam.setRtuAddr(rtuAddr); myParam.setProtocol(protocol); + //myParam.setVcId(vcId); myParam.setParam(param); myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); myParam.setOperator(operator); return dealWithCommandResult(myParam); - } else if(protocol.equals("p206V1_0_1")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV1_0_1.cd_10; - - // 鍒涘缓瑙嗗浘 - Com97Vo param = new Com97Vo() ; - return BaseResponseUtils.buildSuccess(""); } else { return BaseResponseUtils.buildFail("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); } } /** - * 璁剧疆璁惧缁堢IP鍦板潃 + * 璁剧疆鐢垫睜鐢靛帇鎶ヨ鍊� * @param po * @param bindingResult * @return */ - @PostMapping(path = "set_ip", consumes = MediaType.APPLICATION_JSON_VALUE) + @PostMapping(path = "set_battery_volt_alarm", consumes = MediaType.APPLICATION_JSON_VALUE) @Transactional(rollbackFor = Exception.class) @SsoAop() - public BaseResponse<Boolean> setIp(@RequestBody @Valid Domain po, BindingResult bindingResult) { + public BaseResponse<Boolean> setBatteryVoltAlarm(@RequestBody @Valid Alarm po, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } Long intakeId = po.getIntakeId(); - Integer channel = po.getChannel(); - String ip = po.getIp(); - Integer port = po.getPort(); Long operator = po.getOperator(); Long comId = idLongGenerator.generate(); @@ -437,19 +387,17 @@ } String rtuAddr = job_rtu.getString("rtuAddr"); String protocol = job_rtu.getString("protocol"); + String orgTag = job_rtu.getString("orgTag"); + comSendUrl = env.getProperty(pro_mw + "." + orgTag + "." + key_mw); - String commandCode = null; + // 鑾峰彇鍔熻兘鐮� + String commandCode = po.getCommandCode(); if(protocol.equals("p206V202404")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV202404.cd_21; - + return BaseResponseUtils.buildSuccess(""); + } else if(protocol.equals("p206V1_0_1")) { // 鍒涘缓瑙嗗浘 - ComCd21Vo param = new ComCd21Vo(); - param.controllerType = controllerType; - param.projectNo = projectNo; - param.channel = channel; - param.ip = ip; - param.port = port; + Com39Vo param = new Com39Vo(); + param.setBatteryVoltAlarm(po.getBatteryVoltAlarm()); /** * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� @@ -458,99 +406,20 @@ */ Param myParam = new Param(); myParam.setComId(comId); + myParam.setComType((byte)2); myParam.setCommandCode(commandCode); - myParam.setCommandName(CodeV202404.getCodeName(commandCode)); + myParam.setCommandName(CodeV1_0_1.getCodeName(commandCode)); myParam.setIntakeId(intakeId); myParam.setRtuAddr(rtuAddr); myParam.setProtocol(protocol); + //myParam.setVcId(vcId); myParam.setParam(param); myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); myParam.setOperator(operator); return dealWithCommandResult(myParam); - } else if(protocol.equals("p206V1_0_1")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV1_0_1.cd_10; - - // 鍒涘缓瑙嗗浘 - Com97Vo param = new Com97Vo() ; - return BaseResponseUtils.buildSuccess(""); } else { return BaseResponseUtils.buildFail("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); } } - /** - * 璁剧疆璁惧缁堢鍩熷悕 - * @param po - * @param bindingResult - * @return - */ - @PostMapping(path = "set_domain", consumes = MediaType.APPLICATION_JSON_VALUE) - @Transactional(rollbackFor = Exception.class) - @SsoAop() - public BaseResponse<Boolean> setDomain(@RequestBody @Valid Domain po, BindingResult bindingResult) { - if(bindingResult != null && bindingResult.hasErrors()){ - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } - - Long intakeId = po.getIntakeId(); - Integer channel = po.getChannel(); - String domain = po.getDomain(); - Integer port = po.getPort(); - Long operator = po.getOperator(); - Long comId = idLongGenerator.generate(); - - // 鑾峰彇绯荤粺鍙傛暟 - if(!setuped) { - setUp(); - } - - // 鍙栨按鍙D鎹㈤榾鎺у櫒鍦板潃鍙婇�氳鍗忚 - JSONObject job_rtu = getRtu(intakeId, null); - if(job_rtu == null) { - return BaseResponseUtils.buildErrorMsg(RemoteResultCode.RTU_NOT_EXIST.getMessage()); - } - String rtuAddr = job_rtu.getString("rtuAddr"); - String protocol = job_rtu.getString("protocol"); - - String commandCode = null; - if(protocol.equals("p206V202404")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV202404.cd_23; - - // 鍒涘缓瑙嗗浘 - ComCd23Vo param = new ComCd23Vo(); - param.controllerType = controllerType; - param.projectNo = projectNo; - param.channel = channel; - param.domain = domain; - param.port = port; - - /** - * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� - * 1 鍑嗗鍙傛暟 - * 2 璋冪敤鍏叡鏂规硶 - */ - Param myParam = new Param(); - myParam.setComId(comId); - myParam.setCommandCode(commandCode); - myParam.setCommandName(CodeV202404.getCodeName(commandCode)); - myParam.setIntakeId(intakeId); - myParam.setRtuAddr(rtuAddr); - myParam.setProtocol(protocol); - myParam.setParam(param); - myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); - myParam.setOperator(operator); - return dealWithCommandResult(myParam); - } else if(protocol.equals("p206V1_0_1")) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV1_0_1.cd_10; - - // 鍒涘缓瑙嗗浘 - Com97Vo param = new Com97Vo() ; - return BaseResponseUtils.buildSuccess(""); - } else { - return BaseResponseUtils.buildFail("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); - } - } } 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 3d6439f..06f622c 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 @@ -116,9 +116,11 @@ if(vc == null) { return BaseResponseUtils.buildErrorMsg(RemoteResultCode.PLEASE_SELECT_A_VC.getMessage()); } - if(vc.getInUse() == 1) { - return BaseResponseUtils.buildErrorMsg(RemoteResultCode.IN_USE_VC_CANNOT_OPEN_VALVE.getMessage()); - } + + //鍢夊唱鍏抽」鐩櫄鎷熷崱涓嶆墸璐癸紝涓嶅仛浣跨敤涓垽鏂� + //if(vc.getInUse() == 1) { + // return BaseResponseUtils.buildErrorMsg(RemoteResultCode.IN_USE_VC_CANNOT_OPEN_VALVE.getMessage()); + //} // 鑾峰彇姘翠环 Double waterPrice = commandSv.getPrice(); @@ -484,91 +486,91 @@ * @param bindingResult * @return */ - @PostMapping(path = "usability", consumes = MediaType.APPLICATION_JSON_VALUE) - @Transactional(rollbackFor = Exception.class) - @SsoAop() - public BaseResponse<Boolean> usability(@RequestBody @Valid Usability usability, BindingResult bindingResult) { - if(bindingResult != null && bindingResult.hasErrors()){ - return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } - - Long intakeId = usability.getIntakeId(); - Boolean valid = usability.getValid(); - Long operator = usability.getOperator(); - Long comId = idLongGenerator.generate(); - - // 鑾峰彇绯荤粺鍙傛暟 - if(!setuped) { - setUp(); - } - - // 鍙栨按鍙D鎹㈤榾鎺у櫒鍦板潃鍙婇�氳鍗忚 - JSONObject job_rtu = getRtu(intakeId, null); - if(job_rtu == null) { - return BaseResponseUtils.buildErrorMsg(RemoteResultCode.RTU_NOT_EXIST.getMessage()); - } - String rtuAddr = job_rtu.getString("rtuAddr"); - String protocol = job_rtu.getString("protocol"); - - String commandCode = null; - if(protocol.equals("p206V202404")) { - if(valid) { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV202404.cd_30; - - // 鍒涘缓瑙嗗浘 - ComCd31Vo param = new ComCd31Vo(); - param.controllerType = controllerType; - param.projectNo = projectNo; - param.valid = true; - - /** - * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� - * 1 鍑嗗鍙傛暟 - * 2 璋冪敤鍏叡鏂规硶 - */ - Param myParam = new Param(); - myParam.setComId(comId); - myParam.setCommandCode(commandCode); - myParam.setCommandName(CodeV202404.getCodeName(commandCode)); - myParam.setIntakeId(intakeId); - myParam.setRtuAddr(rtuAddr); - myParam.setProtocol(protocol); - myParam.setParam(param); - myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); - myParam.setOperator(operator); - return dealWithCommandResult(myParam); - }else { - // 鑾峰彇鍔熻兘鐮� - commandCode = CodeV202404.cd_31; - - // 鍒涘缓瑙嗗浘 - ComCd31Vo param = new ComCd31Vo(); - param.controllerType = controllerType; - param.projectNo = projectNo; - param.valid = false; - - /** - * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� - * 1 鍑嗗鍙傛暟 - * 2 璋冪敤鍏叡鏂规硶 - */ - Param myParam = new Param(); - myParam.setComId(comId); - myParam.setCommandCode(commandCode); - myParam.setCommandName(CodeV202404.getCodeName(commandCode)); - myParam.setIntakeId(intakeId); - myParam.setRtuAddr(rtuAddr); - myParam.setProtocol(protocol); - myParam.setParam(param); - myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); - myParam.setOperator(operator); - return dealWithCommandResult(myParam); - } - } else if(protocol.equals("p206V1_0_1")) { - return BaseResponseUtils.buildErrorMsg(RemoteResultCode.THE_DEVICE_DOES_NOT_HAVE_THIS_FUNCTION.getMessage()); - } else { - return BaseResponseUtils.buildErrorMsg("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); - } - } + //@PostMapping(path = "usability", consumes = MediaType.APPLICATION_JSON_VALUE) + //@Transactional(rollbackFor = Exception.class) + //@SsoAop() + //public BaseResponse<Boolean> usability(@RequestBody @Valid Usability usability, BindingResult bindingResult) { + // if(bindingResult != null && bindingResult.hasErrors()){ + // return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + // } + // + // Long intakeId = usability.getIntakeId(); + // Boolean valid = usability.getValid(); + // Long operator = usability.getOperator(); + // Long comId = idLongGenerator.generate(); + // + // // 鑾峰彇绯荤粺鍙傛暟 + // if(!setuped) { + // setUp(); + // } + // + // // 鍙栨按鍙D鎹㈤榾鎺у櫒鍦板潃鍙婇�氳鍗忚 + // JSONObject job_rtu = getRtu(intakeId, null); + // if(job_rtu == null) { + // return BaseResponseUtils.buildErrorMsg(RemoteResultCode.RTU_NOT_EXIST.getMessage()); + // } + // String rtuAddr = job_rtu.getString("rtuAddr"); + // String protocol = job_rtu.getString("protocol"); + // + // String commandCode = null; + // if(protocol.equals("p206V202404")) { + // if(valid) { + // // 鑾峰彇鍔熻兘鐮� + // commandCode = CodeV202404.cd_30; + // + // // 鍒涘缓瑙嗗浘 + // ComCd31Vo param = new ComCd31Vo(); + // param.controllerType = controllerType; + // param.projectNo = projectNo; + // param.valid = true; + // + // /** + // * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� + // * 1 鍑嗗鍙傛暟 + // * 2 璋冪敤鍏叡鏂规硶 + // */ + // Param myParam = new Param(); + // myParam.setComId(comId); + // myParam.setCommandCode(commandCode); + // myParam.setCommandName(CodeV202404.getCodeName(commandCode)); + // myParam.setIntakeId(intakeId); + // myParam.setRtuAddr(rtuAddr); + // myParam.setProtocol(protocol); + // myParam.setParam(param); + // myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); + // myParam.setOperator(operator); + // return dealWithCommandResult(myParam); + // }else { + // // 鑾峰彇鍔熻兘鐮� + // commandCode = CodeV202404.cd_31; + // + // // 鍒涘缓瑙嗗浘 + // ComCd31Vo param = new ComCd31Vo(); + // param.controllerType = controllerType; + // param.projectNo = projectNo; + // param.valid = false; + // + // /** + // * 鏋勯�犲懡浠ゃ�佸彂閫佸懡浠ゅ苟澶勭悊璇锋眰缁撴灉鍙婃墽琛岀粨鏋� + // * 1 鍑嗗鍙傛暟 + // * 2 璋冪敤鍏叡鏂规硶 + // */ + // Param myParam = new Param(); + // myParam.setComId(comId); + // myParam.setCommandCode(commandCode); + // myParam.setCommandName(CodeV202404.getCodeName(commandCode)); + // myParam.setIntakeId(intakeId); + // myParam.setRtuAddr(rtuAddr); + // myParam.setProtocol(protocol); + // myParam.setParam(param); + // myParam.setRtuResultSendWebUrl(rtuCallbackUrl_rm); + // myParam.setOperator(operator); + // return dealWithCommandResult(myParam); + // } + // } else if(protocol.equals("p206V1_0_1")) { + // return BaseResponseUtils.buildErrorMsg(RemoteResultCode.THE_DEVICE_DOES_NOT_HAVE_THIS_FUNCTION.getMessage()); + // } else { + // return BaseResponseUtils.buildErrorMsg("绯荤粺鏆備笉鏀寔璇ュ崗璁�"); + // } + //} } -- Gitblit v1.8.0