From 75bdadc0c4e468217b93142d965cd92ee52838ec Mon Sep 17 00:00:00 2001
From: vince <757871790@qq.com>
Date: 星期一, 20 五月 2024 09:01:27 +0800
Subject: [PATCH] 粮情协议优化
---
src/main/java/com/fzzy/protocol/wujia/analysis/AnalysisService.java | 26 +++++++++++++++++---------
1 files changed, 17 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/fzzy/protocol/wujia/analysis/AnalysisService.java b/src/main/java/com/fzzy/protocol/wujia/analysis/AnalysisService.java
index e5d8c2a..53a2974 100644
--- a/src/main/java/com/fzzy/protocol/wujia/analysis/AnalysisService.java
+++ b/src/main/java/com/fzzy/protocol/wujia/analysis/AnalysisService.java
@@ -59,10 +59,17 @@
* data1L data1H-----18B20杩斿洖娓╁害
* 娉ㄦ剰锛氱伯娓╄繑鍥炴暟鎹珮浣嶅湪鍚庯紝浣庝綅鍦ㄥ墠锛岃浆鎹负鍗佽繘鍒跺悗涔樹互0.0625锛屽緱鍒板疄闄呮俯搴﹀��
* 浠撴俯婀垮害楂樹綅鍦ㄥ墠锛屼綆浣嶅湪鍚庯紝杞崲涓哄崄杩涘埗鍚庝箻浠�0.1寰楀埌瀹為檯娓╂箍搴﹀��
- *
+ * 02
+ * 89 00 7A 00 E2 00 8C 00 7D 00 E9 00 99 00 82 00 EC 00 87 00 87 00 ED 00 83 00 77 00 EF 00 92 00 7D 00 08 01 87 00 77 00 03 01 7F 00 7A 00 F6 00
+ * 9B 00 5D 00 D1 00
+ * 84 00 65 00 D4 00 8D 00 6D 00 D6 00 89 00 6E 00 DD 00 87 00 61 00 CA 00 81 00 6B 00 DA 00 81 00 68 00 E2 00 86 00 69 00 D0 00
+ * 87 00 6D 00 E4 00 88 00 71 00 07 01 8E 00 76 00 13 01 82 00 75 00 EB 00 86 00 6D 00 DB 00 83 00 71 00 F1 00 87 00 7B 00 03 01 79 00 7D 00 F7 00
+ * 02 C1 00 6D AA BB CC
* @param strMsg
*/
private void analysisGrainStep1(InetAddress address, String strMsg) {
+ strMsg = strMsg.substring(0,strMsg.length()-6);
+ log.info("瀹屾暣鐨勬暟鎹綋锛�"+strMsg);
int start = 0;
int len = 1 * 2;
String tag = strMsg.substring(start, start + 2);
@@ -78,13 +85,13 @@
//浠撳唴婀垮害
start = 1 * 2;
len = 2 * 2;
- tag = strMsg.substring(start, start + len);
+ tag = strMsg.substring(strMsg.length()-8,strMsg.length() -4);
double hIn = BytesUtil.hexToInt(tag) * 0.1;
//浠撳唴娓╁害
start = 3 * 2;
len = 2 * 2;
- tag = strMsg.substring(start, start + len);
+ tag = strMsg.substring(strMsg.length()-4,strMsg.length() );
double tIn = BytesUtil.hexToInt(tag) * 0.1;
GatewayDevice device = reqData.getDevice();
@@ -97,12 +104,12 @@
int sumNum = cableZ * cableY * cableX;
//绮俯淇℃伅
- start = 5 * 2;
+ start = 2;
len = 2 * 2;
List<Double> points = new ArrayList<>();
double temp = 0.0;
for (int i = 0; i < sumNum; i++) {
- start = start + i * 2 * 2;
+ start = i * 2 * 2 +2;
tag = strMsg.substring(start, start + len);
temp = BytesUtil.hexToInt(BytesUtil.tran_LH(tag)) * 0.0625;
temp = NumberUtil.keepPrecision(temp, 1);
@@ -176,7 +183,7 @@
outPut.setTemperature(temperature);
outPut.setAvgTemperature(NumberUtil.keepPrecision((sumT / sumNum), 1) + "");
outPut.setMinTemperature(min + "");
- outPut.setMaxTemperature(min + "");
+ outPut.setMaxTemperature(max + "");
List<GrainTH> ths = new ArrayList<>();
@@ -216,17 +223,18 @@
reqData.setData(JSONObject.toJSONString(grain));
- doPushGrain(reqData);
+ doPushGrain(reqData,grain);
}
- private void doPushGrain(BaseReqData reqData) {
+ private void doPushGrain(BaseReqData reqData,GrainData grainData) {
GatewayDeviceReportService reportService = gatewayRemoteManager.getDeviceReportService(reqData.getDevice().getPushProtocol());
if (null == reportService) {
log.error("------------绮儏鎺ㄩ�佸け璐ワ紝绯荤粺涓嶅瓨鍦ㄥ綋鍓嶅崗璁墽琛岀被----{}", reqData.getDevice().getDeviceName());
return;
}
-
reportService.reportGrainData(reqData);
+ reqData.setData(reportService.grainData2GatewayApiInfoKafka(grainData,reqData.getDevice()).getData());
+ reportService.reportGrainDataByKafka(reqData);
}
}
--
Gitblit v1.9.3