From 6105a2d7b44ad0bf0d73d19df34158e9acff75af Mon Sep 17 00:00:00 2001
From: YYC <1833023622@qq.com>
Date: 星期四, 06 七月 2023 09:00:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/lpr/AlarmLpr.java | 2
igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/verb/analysis/AnalysisGas.java | 14 +++
igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/HkApiInoutService.java | 5
igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/common/LPRCallBask_V31.java | 8 +
igds-core/src/main/java/com/ld/igds/common/manager/CommonManager.java | 5
igds-inout/src/main/java/com/ld/igds/inout/manager/InoutEventControlManager.java | 40 ++++++---
igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/inout/BHZNWeightServiceImpl.java | 101 +++++++++++++++++-------
igds-web/pom.xml | 16 +++
8 files changed, 138 insertions(+), 53 deletions(-)
diff --git a/igds-core/src/main/java/com/ld/igds/common/manager/CommonManager.java b/igds-core/src/main/java/com/ld/igds/common/manager/CommonManager.java
index 2f36ca3..68dee3b 100644
--- a/igds-core/src/main/java/com/ld/igds/common/manager/CommonManager.java
+++ b/igds-core/src/main/java/com/ld/igds/common/manager/CommonManager.java
@@ -562,8 +562,9 @@
log.debug("----------------鏍规嵁鐢ㄦ埛IP鑾峰彇閫夋嫨-鍦扮----{}", userIp);
String key = "INOUT:WEIGHT:" + userIp;
-
- return (String) redisUtil.get(key);
+ String sort = (String)redisUtil.get(key);
+ if(StringUtils.isEmpty(sort))sort="1";
+ return sort;
}
/**
diff --git a/igds-inout/src/main/java/com/ld/igds/inout/manager/InoutEventControlManager.java b/igds-inout/src/main/java/com/ld/igds/inout/manager/InoutEventControlManager.java
index 3c7ba24..780d073 100644
--- a/igds-inout/src/main/java/com/ld/igds/inout/manager/InoutEventControlManager.java
+++ b/igds-inout/src/main/java/com/ld/igds/inout/manager/InoutEventControlManager.java
@@ -6,6 +6,7 @@
import com.ld.igds.camera.data.ApiCameraResp;
import com.ld.igds.camera.data.ApiSnapReq;
import com.ld.igds.constant.BizType;
+import com.ld.igds.constant.DeviceType;
import com.ld.igds.data.SnapImgDto;
import com.ld.igds.file.CoreFileService;
import com.ld.igds.inout.ApiInoutManager;
@@ -420,30 +421,41 @@
public void onReceivePlateNum(ApiInoutData data) {
InoutConf conf = this.getInoutConfBySn(data.getCompanyId(), data.getDeptId(), data.getSn());
-
- if (null == conf) return;
-
+ if (null == conf) {
+ log.error("娌℃湁鑾峰彇鍒板嚭鍏ュ簱閰嶇疆CONF锛�"+data.toString());
+ return;
+ }
+ log.info(conf.toString());
if (0 == conf.getInOrder()) return;
data = new ApiInoutData(conf);
-
- ApiInoutService inoutApiService = apiInoutManager.getApiService(conf.getProtocol());
-
+ log.info(data.toString());
+ ApiInoutService inoutApiService = null;
+ InoutConf gateconf = null;
//鑾峰彇杞︾墝淇℃伅锛屽紑闂告満
if (InoutApiConstant.DEVICE_CODE_1002 == data.getDeviceCode()) {
+ gateconf = this.getWeightGateway(data.getCompanyId(), data.getDeptId(), null);
+ if (null == gateconf) {
+ log.info("----------娌℃湁鑾峰彇鍒扮О閲嶆帶鍒跺櫒--------------");
+ }
+ data = new ApiInoutData(gateconf);
//寮�鍏ュ彛澶勯亾闂�
+ inoutApiService = apiInoutManager.getApiService(gateconf.getProtocol());
data.setDeviceCode(InoutApiConstant.DEVICE_CODE_2002);
data.setActionCode(InoutApiConstant.ACTION_CODE_1);
-
inoutApiService.gateControl(data);
}
-
if (InoutApiConstant.DEVICE_CODE_1003 == data.getDeviceCode()) {
+ gateconf = this.getWeightGateway(data.getCompanyId(), data.getDeptId(), null);
+ if (null == gateconf) {
+ log.info("----------娌℃湁鑾峰彇鍒扮О閲嶆帶鍒跺櫒--------------");
+ }
//寮�鍏ュ彛澶勯亾闂�
+ data = new ApiInoutData(gateconf);
+ inoutApiService = apiInoutManager.getApiService(gateconf.getProtocol());
data.setDeviceCode(InoutApiConstant.DEVICE_CODE_2003);
data.setActionCode(InoutApiConstant.ACTION_CODE_1);
-
inoutApiService.gateControl(data);
}
@@ -464,7 +476,7 @@
ApiInoutData apiInoutData;
ApiInoutService inoutApiService;
for (InoutConf conf : listInoutConf) {
- if (InoutConstant.CONF_TYPE_10.equals(conf.getType()) && sort.equals(conf.getSort())) {
+ if (InoutConstant.PROGRESS_WEIGHT_TAG.equals(conf.getInoutProgress())&&InoutConstant.CONF_TYPE_10.equals(conf.getType()) && sort.equals(conf.getSort())) {
apiInoutData = new ApiInoutData(conf);
inoutApiService = apiInoutManager.getApiService(conf.getProtocol());
inoutApiService.initLpr(apiInoutData);
@@ -515,9 +527,9 @@
if (InoutConstant.TYPE_IN.equals(data.getType())) {
//缁撶畻閲嶉噺澶т簬0琛ㄧず浜屾绉伴噸
if (data.getNetWeight() > 0) {
- apiData.setDeviceCode(InoutApiConstant.DEVICE_CODE_1002);
+ apiData.setDeviceCode(InoutApiConstant.DEVICE_CODE_2002);
} else {
- apiData.setDeviceCode(InoutApiConstant.DEVICE_CODE_1003);
+ apiData.setDeviceCode(InoutApiConstant.DEVICE_CODE_2003);
}
apiData.setActionCode(InoutApiConstant.ACTION_CODE_1);
@@ -525,9 +537,9 @@
} else {
//缁撶畻閲嶉噺澶т簬0琛ㄧず浜屾绉伴噸
if (data.getNetWeight() > 0) {
- apiData.setDeviceCode(InoutApiConstant.DEVICE_CODE_1003);
+ apiData.setDeviceCode(InoutApiConstant.DEVICE_CODE_2002);
} else {
- apiData.setDeviceCode(InoutApiConstant.DEVICE_CODE_1002);
+ apiData.setDeviceCode(InoutApiConstant.DEVICE_CODE_2003);
}
apiData.setActionCode(InoutApiConstant.ACTION_CODE_1);
inoutApiService.gateControl(apiData);
diff --git a/igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/inout/BHZNWeightServiceImpl.java b/igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/inout/BHZNWeightServiceImpl.java
index b198afc..6ed27b6 100644
--- a/igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/inout/BHZNWeightServiceImpl.java
+++ b/igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/inout/BHZNWeightServiceImpl.java
@@ -1,16 +1,23 @@
package com.ld.igds.protocol.bhzn.inout;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
import com.ld.igds.inout.ApiInoutService;
+import com.ld.igds.inout.InoutApiConstant;
+import com.ld.igds.inout.InoutConstant;
import com.ld.igds.inout.dto.ApiInoutData;
import com.ld.igds.inout.dto.InoutData;
import com.ld.igds.io.constant.ProtocolEnum;
import com.ld.igds.protocol.bhzn.inout.client.BHZNClientEngine;
import com.ld.igds.protocol.bhzn.utils.CRC16;
import com.ld.igds.util.BytesUtil;
+import com.ld.io.api.InvokeResult;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.io.UnsupportedEncodingException;
+import java.util.HashMap;
+import java.util.Map;
/**
* @Desc: 鍦扮涓绘帶鍗忚瀹炵幇锛屽嚭鍏ュ簱鐩稿叧鎺ュ彛
@@ -57,18 +64,41 @@
@Override
public String gateControl(ApiInoutData param) {
try{
-// ReqGate reqGate = new ReqGate();
+ log.info("BHZN鍑哄叆搴撴帶鍒跺櫒鎺у埗閬撻椄寮�濮�");
+ String actionCode = param.getActionCode();
BHZNClientEngine test = new BHZNClientEngine(
param.getIp(), param.getPort());
test.start();
- String msg = "<BHZN>{\"cmd\":226,\"content\":{" +
- "\"value\":[1,1]," +
- "\"LEDValue\":[1,1]" +
- "},\"orderId\":\"5009\",\"result\":\"\",\"sign\":\"0000\",\"stNum\":1,\"version\":\"V1.0000000\"}<END>";
+ Integer[] value = new Integer[]{0,0};
+ Map<String,Object> message = new HashMap<>();
+ message.put("Cmd",226);
+ message.put("orderId","5009");
+ message.put("result","0");
+ message.put("sign","0000");
+ message.put("stNum",100);
+ message.put("version","V1.0000000");
+ message.put("sn","1000000001");
+ Map<String,Object> content = new HashMap<>();
+// String msg = "<BHZN>{\"cmd\":226,\"content\":{" ;
+ if(InoutApiConstant.DEVICE_CODE_2002 == param.getDeviceCode()){
+ content.put("value",new Integer[]{1,0});
+ content.put("LEDValue",new Integer[]{1,0});
+// msg += "\"value\":[1,0]," ;
+// msg+= "\"LEDValue\":[1,0]" ;
+ }
+ if(InoutApiConstant.DEVICE_CODE_2003 == param.getDeviceCode()){
+ content.put("value",new Integer[]{0,1});
+ content.put("LEDValue",new Integer[]{0,1});
+ }
+ message.put("content", content);
+// msg+= "},\"orderId\":\"5009\",\"result\":\"\",\"sign\":\"0000\",\"stNum\":100,\"version\":\"V1.0000000\"}<END>";
- // Thread.sleep(3000L);
+ Thread.sleep(3000L);
+ String msg = "<BHZN>" + JSON.toJSONString(message) + "<END>" ;
+ InvokeResult result = test.send(msg.getBytes());
+ log.info("BHZN鍑哄叆搴撴帶鍒跺櫒鎺у埗閬撻椄缁撴潫,MSG=" +msg);
+ log.info("result=" +result.getMessage());
- test.send(BytesUtil.hexStrToBytes(msg));
}catch (Exception e){
log.error(e.getMessage(),e);
return "ERROR";
@@ -129,30 +159,41 @@
public static void main(String[] args) {
- try{
- String str1 = "璁稿浆",str2="绮123456",str3 = "3鍙蜂粨" ,str4 = "灏忛害",str5="286000",str6 = "30000",str7 ="鍚堟牸";
- String test = "鎴戠埍涓埅杞欢";
- //78340100290000000000000000 1400 0B00 01 02 00 01 0C 00
+// try{
+// String str1 = "璁稿浆",str2="绮123456",str3 = "3鍙蜂粨" ,str4 = "灏忛害",str5="286000",str6 = "30000",str7 ="鍚堟牸";
+// String test = "鎴戠埍涓埅杞欢";
+// //78340100290000000000000000 1400 0B00 01 02 00 01 0C 00
+// String start = "FFFFFFFFFF00000000";
+// String lengh = BytesUtil.tran_LH(BytesUtil.intToHexStr(8+(test.length() * 2)));
+// String msg = "78340100290000000000000000" + lengh+ "0B00010201010C00";
+// msg = msg + convertStr(test);
+// msg = msg.toUpperCase();
+//
+//// String t = "78 34 01 00 29 BC FD 00 00 00 00 00 00 14 00 01 00 01 02 06 01 0C 00 CE D2 B0 AE D6 D0 BA BD C8 ED BC FE";
+//// t = t.replaceAll(" ","");
+// String check = BytesUtil.tran_LH(BytesUtil.intToHexStr(CRC16.calcCrc16(BytesUtil.hexStrToBytes(msg))));
+// System.out.println(check);
+//
+// msg+=check;
+// msg += "A5";
+// msg = start +msg;
+// System.out.println(msg);
+// }catch (Exception e){
+// e.printStackTrace();
+// }
- String lengh = BytesUtil.tran_LH(BytesUtil.intToHexStr(8+test.length()));
- String msg = "78340100290000000000000000 " + lengh+ "0B00010200010C00";
- msg = msg + convertStr(test);
- msg = msg.toUpperCase();
-
-// String t = "78 34 01 00 29 BC FD 00 00 00 00 00 00 14 00 01 00 01 02 06 01 0C 00 CE D2 B0 AE D6 D0 BA BD C8 ED BC FE";
-// t = t.replaceAll(" ","");
- String check = BytesUtil.tran_LH(BytesUtil.intToHexStr(CRC16.calcCrc16(BytesUtil.hexStrToBytes(msg))));
- System.out.println(check);
-
- msg+=check;
- msg += "A5";
-
- System.out.println(msg);
- }catch (Exception e){
- e.printStackTrace();
- }
-
-
+ Map<String,Object> message = new HashMap<>();
+ message.put("cmd",226);
+ message.put("orderId","5009");
+ message.put("result","0");
+ message.put("sign","0000");
+ message.put("stNum",100);
+ message.put("version","V1.0000000");
+ Map<String,Object> content = new HashMap<>();
+ content.put("value",new Integer[]{0,1});
+ content.put("LEDValue",new Integer[]{0,1});
+ message.put("content", content);
+ System.out.println(JSON.toJSONString(message));
}
diff --git a/igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/verb/analysis/AnalysisGas.java b/igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/verb/analysis/AnalysisGas.java
index efb1855..d787fa3 100644
--- a/igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/verb/analysis/AnalysisGas.java
+++ b/igds-protocol-bhzn/src/main/java/com/ld/igds/protocol/bhzn/verb/analysis/AnalysisGas.java
@@ -18,6 +18,7 @@
import com.ld.igds.temp.dto.TempParam;
import com.ld.igds.util.BytesUtil;
import com.ld.igds.util.ContextUtil;
+import com.ld.igds.util.NumberUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -79,6 +80,7 @@
Integer[] n2ValArray = res209.getN2ValArray();
Integer[] pH3ValArray = res209.getPH3ValArray();
Integer[] cO2ValArray = res209.getCO2ValArray();
+ double sumO2 = 0.0, sumCo2 = 0.0, sumPh3 = 0.0, sumN2 = 0.0;
for (int i=0;i<res209.getCO2ValArray().length;i++){
info = new GasInfo();
info.setId(ContextUtil.buildInfoId(gas.getCompanyId(), gas.getDepotId(), gas.getBatchId()));
@@ -130,7 +132,10 @@
if (info.getPerN2() < gas.getPerN2Min()) {
gas.setPerN2Min(info.getPerN2());
}
-
+ sumO2 += info.getPerO2();
+ sumCo2 += info.getPerCo2();
+ sumPh3 += info.getPerPh3();
+ sumN2 += info.getPerN2();
//鍥哄畾涓猴細passCode,co2,o2,ph3,n2;passCode,co2,o2,ph3,n2;"
sb.append(info.getPassCode());
sb.append(",");
@@ -143,6 +148,13 @@
sb.append(info.getPerN2());
sb.append(";");
}
+
+ if(res209.getCO2ValArray().length>1){
+ gas.setPerCo2(NumberUtil.keepPrecision(sumCo2/res209.getCO2ValArray().length, 2));
+ gas.setPerO2(NumberUtil.keepPrecision(sumO2/res209.getCO2ValArray().length, 2));
+ gas.setPerN2(NumberUtil.keepPrecision(sumN2/res209.getCO2ValArray().length, 2));
+ gas.setPerPh3(NumberUtil.keepPrecision(sumPh3/res209.getCO2ValArray().length, 2));
+ }
gas.setPoints(sb.toString());
gasService.saveInfoGas(items);
diff --git a/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/HkApiInoutService.java b/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/HkApiInoutService.java
index 3f75554..70cf15b 100644
--- a/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/HkApiInoutService.java
+++ b/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/HkApiInoutService.java
@@ -77,7 +77,7 @@
}
// 鐧婚檰
- msg = alarmLpr.login(param.getDeviceCode(), param.getIp(), param.getPort(), param.getLoginId(), param.getPwd());
+ msg = alarmLpr.login(param.getChanNum(), param.getIp(), param.getPort(), param.getLoginId(), param.getPwd());
if (HKConstant.RESULT_SUCCESS.equals(msg)) {
param.setStatus(Constant.YN_Y);
@@ -90,7 +90,8 @@
return msg;
} catch (Exception e) {
- log.error("----------------鍒濆鍖栬溅鐗岃瘑鍒墽琛岃瘑鍒�----------------------");
+ log.error("----------------鍒濆鍖栬溅鐗岃瘑鍒墽琛岃瘑鍒け璐�----------------------");
+ log.error(e.getMessage(),e);
}
return null;
diff --git a/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/common/LPRCallBask_V31.java b/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/common/LPRCallBask_V31.java
index a199faa..d8d3c80 100644
--- a/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/common/LPRCallBask_V31.java
+++ b/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/common/LPRCallBask_V31.java
@@ -65,7 +65,9 @@
log.info("杞︾墝鍙凤細" + sLicense + ":杞﹁締绫诲瀷锛�" + VehicleType + ":鐩戞帶鐐圭紪鍙凤細" + MonitoringSiteID + "-璁惧IP=" + deviceIp + "-SN=" + deviceSn);
ApiInoutData data = HKConstant.getDataBySn(deviceSn);
+
if (null != data) {
+ log.info(data.toString());
data.setPlateNum(sLicense.substring(1));
data.setErrorMsg(HKConstant.RESULT_SUCCESS);
data.setTime(new Date());
@@ -73,9 +75,11 @@
if (inoutEventControlManager == null) {
inoutEventControlManager = SpringUtil.getBean(InoutEventControlManager.class);
- inoutEventControlManager.onReceivePlateNum(data);
- }
+ }
+ inoutEventControlManager.onReceivePlateNum(data);
+ }else{
+ log.error("娌℃湁鑾峰彇鍒拌溅鐗岃瘑鍒殑閰嶇疆锛�");
}
} catch (IOException e) {
diff --git a/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/lpr/AlarmLpr.java b/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/lpr/AlarmLpr.java
index 5d9f2c6..2889d00 100644
--- a/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/lpr/AlarmLpr.java
+++ b/igds-protocol-sdk/src/main/java/com/ld/igds/protocol/hk/lpr/AlarmLpr.java
@@ -164,7 +164,7 @@
}
- log.debug(ip + ":璁惧鐧诲綍鎴愬姛锛�");
+ log.info(ip + ":杞︾墝璇嗗埆璁惧鐧诲綍鎴愬姛锛�");
return HKConstant.RESULT_SUCCESS;
}
diff --git a/igds-web/pom.xml b/igds-web/pom.xml
index ed614ca..a09eb36 100644
--- a/igds-web/pom.xml
+++ b/igds-web/pom.xml
@@ -183,7 +183,21 @@
</exclusion>
</exclusions>
</dependency>
-
+ <dependency>
+ <groupId>com.ld.igds</groupId>
+ <artifactId>igds-protocol-sdk</artifactId>
+ <version>${igds.version}</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>slf4j-log4j12</artifactId>
+ <groupId>org.slf4j</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>log4j</artifactId>
+ <groupId>log4j</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
</dependencies>
<dependencyManagement>
--
Gitblit v1.9.3