From 9a139b15be65dcd83ae187bb384627097c6a811a Mon Sep 17 00:00:00 2001 From: vince <757871790@qq.com> Date: 星期二, 26 十二月 2023 20:29:16 +0800 Subject: [PATCH] 修改解析,增加仓温仓湿度 --- src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java | 27 +++++++++++++++------------ 1 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java b/src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java index fb8b9ba..ed9e782 100644 --- a/src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java +++ b/src/main/java/com/fzzy/protocol/bhzn/analysis/AnalysisService.java @@ -98,21 +98,22 @@ private void analysisGrain(IoMessage message) { try { + //鏍规嵁鍒嗘満SN鑾峰彇璁惧閰嶇疆淇℃伅 + GatewayDevice gatewayDevice = GatewayUtils.getCacheByDeviceSn(message.getAddr()); + if (null == gatewayDevice) { + replayGrain(message); + log.error("涓绘満-------->>骞冲彴锛岃В鏋愮伯鎯呭け璐ワ紝鏈幏鍙栧埌绯荤粺璁惧閰嶇疆淇℃伅锛�" + message.getAddr()); + return; + } //鏍规嵁鍒嗘満鍦板潃鑾峰彇鍒嗘満淇℃伅 - ApiCommonDevice commonDevice = Constant.getCommonDeviceCache(message.getAddr()); + ApiCommonDevice commonDevice = Constant.getCommonDeviceCache(message.getIp()); if (commonDevice == null) { replayGrain(message); log.error("涓绘満-------->>骞冲彴锛岃В鏋愮伯鎯呭け璐ワ紝鏈幏鍙栧埌绯荤粺绮儏涓绘満閰嶇疆锛�" + message.getAddr()); return; } - //鏍规嵁鍒嗘満SN鑾峰彇璁惧閰嶇疆淇℃伅 - GatewayDevice gatewayDevice = GatewayUtils.getCacheByDeviceSn(commonDevice.getSn()); - if (null == gatewayDevice) { - replayGrain(message); - log.error("涓绘満-------->>骞冲彴锛岃В鏋愮伯鎯呭け璐ワ紝鏈幏鍙栧埌绯荤粺璁惧閰嶇疆淇℃伅锛�" + message.getAddr()); - return; - } + //鑾峰彇璇锋眰淇℃伅 BaseReqData reqData = ProtocolUtils.getSyncReq(gatewayDevice.getDepotIdSys()); @@ -189,7 +190,6 @@ } private void analysisGrain2(IoMessage message, BaseReqData reqData, String grainStr) { - GatewayDevice device = reqData.getDevice(); // 鑾峰彇瀹屾暣鐨勭伯鎯呭寘淇℃伅 String[] attCable = device.getCableRule().split("-"); @@ -229,7 +229,7 @@ THDto thDto = this.getTH(message); if (null != thDto) { - log.debug("-------THDto--={}", thDto); + log.info("-------THDto--={}", thDto); } //娓呯┖ String key = "GRAIN_" + message.getAddr(); @@ -323,7 +323,10 @@ outPut.setAvgTemperature(NumberUtil.keepPrecision((sumT / sumNum), 1) + ""); outPut.setMinTemperature(min + ""); outPut.setMaxTemperature(min + ""); + List<GrainTH> ths = new ArrayList<>(); + ths.add(new GrainTH(thDto.getTempIn()!=null?thDto.getTempIn()+"":"",thDto.getHumidityIn()!=null?thDto.getHumidityIn()+"":"","1")); + outPut.setTemperatureAndhumidity(ths); grain.setOutput(JSONObject.toJSONString(outPut)); GatewayDevice gatewayDeviceWeather = GatewayUtils.getCacheByDeviceTypeOne(GatewayDeviceType.TYPE_09.getCode()); @@ -376,8 +379,8 @@ try { THDto th = new THDto(); String data = message.getContent(); - String houseNo = data.substring(0, 4); - int depotId = BytesUtil.hexToInt(BytesUtil.tran_LH(houseNo)); + String houseNo = data.substring(0, 2); + int depotId = BytesUtil.hexToInt(houseNo); String t = data.substring(4, 8); String h = data.substring(8, 12); double humy; -- Gitblit v1.9.3