diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
new file mode 100644
index 0000000..f540980
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneOnlineRequestFrame extends BirmmBaseFrame {
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
new file mode 100644
index 0000000..f540980
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneOnlineRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
new file mode 100644
index 0000000..47fd65b
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
@@ -0,0 +1,4 @@
+package com.casic.missiles.frame.methane;
+
+public class MethaneSetResponseFrame {
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
new file mode 100644
index 0000000..f540980
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneOnlineRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
new file mode 100644
index 0000000..47fd65b
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
@@ -0,0 +1,4 @@
+package com.casic.missiles.frame.methane;
+
+public class MethaneSetResponseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
new file mode 100644
index 0000000..1f4d831
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneTrapRequestFrame extends BirmmBaseFrame {
+}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
new file mode 100644
index 0000000..f540980
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneOnlineRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
new file mode 100644
index 0000000..47fd65b
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
@@ -0,0 +1,4 @@
+package com.casic.missiles.frame.methane;
+
+public class MethaneSetResponseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
new file mode 100644
index 0000000..1f4d831
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneTrapRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
index a593eb8..e079239 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
@@ -4,7 +4,6 @@
package com.casic.missiles.netty.codec;
import com.casic.missiles.pojo.Msg;
-import com.casic.missiles.enums.FrameAttributeEnums;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import io.netty.buffer.ByteBufUtil;
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
new file mode 100644
index 0000000..f540980
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneOnlineRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
new file mode 100644
index 0000000..47fd65b
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
@@ -0,0 +1,4 @@
+package com.casic.missiles.frame.methane;
+
+public class MethaneSetResponseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
new file mode 100644
index 0000000..1f4d831
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneTrapRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
index a593eb8..e079239 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
@@ -4,7 +4,6 @@
package com.casic.missiles.netty.codec;
import com.casic.missiles.pojo.Msg;
-import com.casic.missiles.enums.FrameAttributeEnums;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import io.netty.buffer.ByteBufUtil;
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java b/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
index 11c542d..d3e7391 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
@@ -113,8 +113,11 @@
BirmmBaseTag tagBase = BirmmTagBuilderFactory.createTagByOid(oid);
if (null != tagBase) {
String valStr = BytesUtil.extractHexString(tagBytes, idx, tagLen);
+ tagBase.setOid(oid);
tagBase.setValueStr(valStr);
+ log.debug("解析Tag:{}", tagBase);
+
tagList.add(tagBase);
}
}
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
new file mode 100644
index 0000000..f540980
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneOnlineRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
new file mode 100644
index 0000000..47fd65b
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
@@ -0,0 +1,4 @@
+package com.casic.missiles.frame.methane;
+
+public class MethaneSetResponseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
new file mode 100644
index 0000000..1f4d831
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneTrapRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
index a593eb8..e079239 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
@@ -4,7 +4,6 @@
package com.casic.missiles.netty.codec;
import com.casic.missiles.pojo.Msg;
-import com.casic.missiles.enums.FrameAttributeEnums;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import io.netty.buffer.ByteBufUtil;
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java b/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
index 11c542d..d3e7391 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
@@ -113,8 +113,11 @@
BirmmBaseTag tagBase = BirmmTagBuilderFactory.createTagByOid(oid);
if (null != tagBase) {
String valStr = BytesUtil.extractHexString(tagBytes, idx, tagLen);
+ tagBase.setOid(oid);
tagBase.setValueStr(valStr);
+ log.debug("解析Tag:{}", tagBase);
+
tagList.add(tagBase);
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java b/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
index 118a8de..fda0518 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
@@ -57,7 +57,9 @@
// 获得业务字段tagList
List tagList = protocol.getTagList(plainBytes);
- System.out.println(tagList.size());
+
+ // 创建Frame
+ BirmmBaseFrame birmmFrame = BirmmFrameBuilderFactory.createBirmmFrame(pduType);
}
return null;
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
new file mode 100644
index 0000000..f540980
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneOnlineRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
new file mode 100644
index 0000000..47fd65b
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
@@ -0,0 +1,4 @@
+package com.casic.missiles.frame.methane;
+
+public class MethaneSetResponseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
new file mode 100644
index 0000000..1f4d831
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneTrapRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
index a593eb8..e079239 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
@@ -4,7 +4,6 @@
package com.casic.missiles.netty.codec;
import com.casic.missiles.pojo.Msg;
-import com.casic.missiles.enums.FrameAttributeEnums;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import io.netty.buffer.ByteBufUtil;
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java b/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
index 11c542d..d3e7391 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
@@ -113,8 +113,11 @@
BirmmBaseTag tagBase = BirmmTagBuilderFactory.createTagByOid(oid);
if (null != tagBase) {
String valStr = BytesUtil.extractHexString(tagBytes, idx, tagLen);
+ tagBase.setOid(oid);
tagBase.setValueStr(valStr);
+ log.debug("解析Tag:{}", tagBase);
+
tagList.add(tagBase);
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java b/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
index 118a8de..fda0518 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
@@ -57,7 +57,9 @@
// 获得业务字段tagList
List tagList = protocol.getTagList(plainBytes);
- System.out.println(tagList.size());
+
+ // 创建Frame
+ BirmmBaseFrame birmmFrame = BirmmFrameBuilderFactory.createBirmmFrame(pduType);
}
return null;
diff --git a/sensorhub-support/src/main/java/com/casic/missiles/enums/BirmmTagAttributeEnums.java b/sensorhub-support/src/main/java/com/casic/missiles/enums/BirmmTagAttributeEnums.java
index 1df2e90..911cbe0 100644
--- a/sensorhub-support/src/main/java/com/casic/missiles/enums/BirmmTagAttributeEnums.java
+++ b/sensorhub-support/src/main/java/com/casic/missiles/enums/BirmmTagAttributeEnums.java
@@ -9,12 +9,25 @@
*/
@Getter
public enum BirmmTagAttributeEnums {
- CELL_TAG("60000020", 1),
+ RETRY_TIMES_TAG("1000000A", 1),
+ DESTINATION_IP_TAG("10000022", -1),
+ DESTINATION_PORT_TAG("10000023", -1),
DATE_TAG("10000050", 3),
- PIC_TAG("60000511", 2),
+ DATETIME_TAG("10000051", 6),
+ UPLOAD_INTERVAL_TAG("10000062", 2),
+ START_TIME_TAG("10000104", 2),
+ COLLECT_INTERVAL_TAG("10000105", 2),
+ COLLECT_COUNT_TAG("10000106", 2),
+ LOWER_LIMIT_TAG("10000900", 4),
+ UPPER_LIMIMT_TAG("10000901", 4),
+
+ CELL_TAG("60000020", 1),
+ SOFTWARE_VERSION_TAG("60000500", -1),
+ PCI_TAG("60000511", 2),
RSRP_TAG("60000513", 2),
SNR_TAG("60000516", 2);
+
/**
* 名称
*/
diff --git a/casic-iot-web/src/main/resources/config/logback-spring.xml b/casic-iot-web/src/main/resources/config/logback-spring.xml
deleted file mode 100644
index 2d308a8..0000000
--- a/casic-iot-web/src/main/resources/config/logback-spring.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${CONSOLE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_error.log
-
-
-
-
-
- ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
- error
- ACCEPT
- DENY
-
-
-
-
-
-
-
- ${LOG_PATH}/missiles_total.log
-
-
-
-
-
- ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
-
-
-
- 10MB
-
-
-
-
- true
-
-
-
- ${FILE_LOG_PATTERN}
- utf-8
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/casic-iot-web/src/main/resources/logback-spring.xml b/casic-iot-web/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..2d308a8
--- /dev/null
+++ b/casic-iot-web/src/main/resources/logback-spring.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${CONSOLE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_error.log
+
+
+
+
+
+ ${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+ error
+ ACCEPT
+ DENY
+
+
+
+
+
+
+
+ ${LOG_PATH}/missiles_total.log
+
+
+
+
+
+ ${LOG_PATH}/total/log-total-%d{yyyy-MM-dd}.%i.log
+
+
+
+ 10MB
+
+
+
+
+ true
+
+
+
+ ${FILE_LOG_PATTERN}
+ utf-8
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
index 2285f9a..08ed720 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmBaseTag.java
@@ -8,4 +8,9 @@
private String oid;
private int tagLen;
private String valueStr;
+
+ @Override
+ public String toString() {
+ return "[name: " + getClass().getSimpleName() + "][oid: " + oid + "][hex: " + valueStr + "]";
+ }
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
index 95ebdab..86db0a3 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/BirmmTagBuilderFactory.java
@@ -9,21 +9,54 @@
BirmmTagAttributeEnums tag = BirmmTagAttributeEnums.toType(oid);
if (null != tag) {
switch (tag) {
- case CELL_TAG:
- return new CellTag();
+ case RETRY_TIMES_TAG:
+ return new RetryTimesTag();
+
+ case DESTINATION_IP_TAG:
+ return new DestIPTag();
+
+ case DESTINATION_PORT_TAG:
+ return new DestPortTag();
case DATE_TAG:
return new DateTag();
- case PIC_TAG:
- return new PCITag();
+ case DATETIME_TAG:
+ return new DateTimeTag();
- case SNR_TAG:
- return new SNRTag();
+ case UPLOAD_INTERVAL_TAG:
+ return new UploadIntervalTag();
+
+ case START_TIME_TAG:
+ return new StartTimeTag();
+
+ case COLLECT_INTERVAL_TAG:
+ return new CollectIntervalTag();
+
+ case COLLECT_COUNT_TAG:
+ return new CollectCountTag();
+
+ case LOWER_LIMIT_TAG:
+ return new LowerLimitTag();
+
+ case UPPER_LIMIMT_TAG:
+ return new UpperLimitTag();
+
+ case CELL_TAG:
+ return new CellTag();
+
+ case SOFTWARE_VERSION_TAG:
+ return new SoftwareVersionTag();
+
+ case PCI_TAG:
+ return new PCITag();
case RSRP_TAG:
return new RSRPTag();
+ case SNR_TAG:
+ return new SNRTag();
+
default:
return null;
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
index b0e0360..1448b5e 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CellTag.java
@@ -13,6 +13,11 @@
int cellVal;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + cellVal + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
cellVal = Integer.parseInt(valueStr, 16);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
new file mode 100644
index 0000000..11fc951
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectCountTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectCountTag extends BirmmBaseTag {
+
+ final String COLLECT_COUNT_TAG_OID = "10000106";
+
+ // TYPE_U16整型,数据上报的采集次数,范围: 1 – 1440
+ int count;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + count + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ count = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
new file mode 100644
index 0000000..dba7778
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/CollectIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CollectIntervalTag extends BirmmBaseTag {
+
+ final String COLLECT_INTERVAL_TAG_OID = "10000105";
+
+ // TYPE_U16整型,数据采集间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
index e8c5db4..1e5d1c6 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTag.java
@@ -6,6 +6,7 @@
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
@EqualsAndHashCode(callSuper = true)
@Data
@@ -16,15 +17,17 @@
LocalDate date;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
String hexY = valueStr.substring(0, 2);
String hexM = valueStr.substring(2, 4);
String hexD = valueStr.substring(4, 6);
- date = LocalDate.now();
- date = date.withYear(BytesUtil.hexStringToUInt(hexY) + 2000);
- date = date.withMonth(BytesUtil.hexStringToUInt(hexM));
- date = date.withDayOfMonth(BytesUtil.hexStringToUInt(hexD));
+ date = LocalDate.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD));
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
new file mode 100644
index 0000000..8cf6d81
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DateTimeTag.java
@@ -0,0 +1,38 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DateTimeTag extends BirmmBaseTag {
+
+ final String DATETIME_TAG_OID = "10000051";
+
+ LocalDateTime dateTime;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ String hexY = valueStr.substring(0, 2);
+ String hexM = valueStr.substring(2, 4);
+ String hexD = valueStr.substring(4, 6);
+
+ String hexH = valueStr.substring(6, 8);
+ String hexMin = valueStr.substring(8, 10);
+ String hexS = valueStr.substring(10, 12);
+
+ dateTime = LocalDateTime.of(BytesUtil.hexStringToUInt(hexY) + 2000, BytesUtil.hexStringToUInt(hexM), BytesUtil.hexStringToUInt(hexD),
+ BytesUtil.hexStringToUInt(hexH), BytesUtil.hexStringToUInt(hexMin), BytesUtil.hexStringToUInt(hexS));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
new file mode 100644
index 0000000..4e8297a
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestIPTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestIPTag extends BirmmBaseTag {
+
+ final String DESTINATION_IP_TAG_OID = "10000022";
+
+ String ip;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + ip + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ ip = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
new file mode 100644
index 0000000..90e001e
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/DestPortTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DestPortTag extends BirmmBaseTag {
+
+ final String DESTINATION_PORT_TAG_OID = "10000023";
+
+ String port;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + port + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ port = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
new file mode 100644
index 0000000..0c707b0
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/LowerLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class LowerLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000900";
+
+ // 单精度浮点数
+ float lowerLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + lowerLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ lowerLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
index 4433cea..7fc806a 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/PCITag.java
@@ -15,6 +15,11 @@
int pci;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + pci + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
pci = BytesUtil.hexStringToUInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
index d1bb0a8..7513c21 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RSRPTag.java
@@ -15,6 +15,11 @@
int rsrp;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + rsrp + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
rsrp = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
new file mode 100644
index 0000000..67631b6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/RetryTimesTag.java
@@ -0,0 +1,29 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.format.DateTimeFormatter;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class RetryTimesTag extends BirmmBaseTag {
+
+ final String RETRY_TIMES_TAG_OID = "1000000A";
+
+ // TYPE_U8整型,重传次数 1-10
+ int times;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + times + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ times = Integer.parseInt(valueStr, 16);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
index 3040799..c3ce539 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SNRTag.java
@@ -15,6 +15,11 @@
int snr;
@Override
+ public String toString() {
+ return super.toString() + "[value: " + snr + "]";
+ }
+
+ @Override
public void setValueStr(String valueStr) {
super.setValueStr(valueStr);
snr = BytesUtil.hexStringToSInt(valueStr);
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
new file mode 100644
index 0000000..f930e42
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/SoftwareVersionTag.java
@@ -0,0 +1,26 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class SoftwareVersionTag extends BirmmBaseTag {
+
+ final String SOFTWARE_VERSION_TAG_OID = "60000500";
+
+ String version;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + version + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ version = new String(BytesUtil.hexStringToBytes(valueStr));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
new file mode 100644
index 0000000..c899694
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/StartTimeTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class StartTimeTag extends BirmmBaseTag {
+
+ final String START_TIME_TAG_OID = "10000104";
+
+ // TYPE_U16整型,数据采集开始分钟,范围: 0 – 1440
+ int startMinute;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + startMinute + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ startMinute = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
new file mode 100644
index 0000000..c7555a6
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UploadIntervalTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UploadIntervalTag extends BirmmBaseTag {
+
+ final String UPLOAD_INTERVAL_TAG_OID = "10000062";
+
+ // TYPE_U16整型,数据上报间隔,范围: 3 – 1440
+ int interval;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + interval + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ interval = BytesUtil.hexStringToUInt(valueStr);
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
new file mode 100644
index 0000000..4e96926
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/commanTag/UpperLimitTag.java
@@ -0,0 +1,27 @@
+package com.casic.missiles.frame.commanTag;
+
+import com.casic.missiles.frame.BirmmBaseTag;
+import com.casic.missiles.util.BytesUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class UpperLimitTag extends BirmmBaseTag {
+
+ final String UPPER_LIMIT_TAG_OID = "10000901";
+
+ // 单精度浮点数
+ float upperLimit;
+
+ @Override
+ public String toString() {
+ return super.toString() + "[value: " + upperLimit + "]";
+ }
+
+ @Override
+ public void setValueStr(String valueStr) {
+ super.setValueStr(valueStr);
+ upperLimit = Float.intBitsToFloat(Integer.parseInt(BytesUtil.reverseHexString(valueStr), 16));
+ }
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
new file mode 100644
index 0000000..f540980
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneOnlineRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneOnlineRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
new file mode 100644
index 0000000..47fd65b
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneSetResponseFrame.java
@@ -0,0 +1,4 @@
+package com.casic.missiles.frame.methane;
+
+public class MethaneSetResponseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
new file mode 100644
index 0000000..1f4d831
--- /dev/null
+++ b/sensorhub-core/src/main/java/com/casic/missiles/frame/methane/MethaneTrapRequestFrame.java
@@ -0,0 +1,6 @@
+package com.casic.missiles.frame.methane;
+
+import com.casic.missiles.frame.BirmmBaseFrame;
+
+public class MethaneTrapRequestFrame extends BirmmBaseFrame {
+}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
index a593eb8..e079239 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/netty/codec/SensorhubEncoder.java
@@ -4,7 +4,6 @@
package com.casic.missiles.netty.codec;
import com.casic.missiles.pojo.Msg;
-import com.casic.missiles.enums.FrameAttributeEnums;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import io.netty.buffer.ByteBufUtil;
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java b/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
index 11c542d..d3e7391 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/parser/impl/BirmmProtocolParserImpl.java
@@ -113,8 +113,11 @@
BirmmBaseTag tagBase = BirmmTagBuilderFactory.createTagByOid(oid);
if (null != tagBase) {
String valStr = BytesUtil.extractHexString(tagBytes, idx, tagLen);
+ tagBase.setOid(oid);
tagBase.setValueStr(valStr);
+ log.debug("解析Tag:{}", tagBase);
+
tagList.add(tagBase);
}
}
diff --git a/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java b/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
index 118a8de..fda0518 100644
--- a/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
+++ b/sensorhub-core/src/main/java/com/casic/missiles/service/GeneralServiceImpl.java
@@ -57,7 +57,9 @@
// 获得业务字段tagList
List tagList = protocol.getTagList(plainBytes);
- System.out.println(tagList.size());
+
+ // 创建Frame
+ BirmmBaseFrame birmmFrame = BirmmFrameBuilderFactory.createBirmmFrame(pduType);
}
return null;
diff --git a/sensorhub-support/src/main/java/com/casic/missiles/enums/BirmmTagAttributeEnums.java b/sensorhub-support/src/main/java/com/casic/missiles/enums/BirmmTagAttributeEnums.java
index 1df2e90..911cbe0 100644
--- a/sensorhub-support/src/main/java/com/casic/missiles/enums/BirmmTagAttributeEnums.java
+++ b/sensorhub-support/src/main/java/com/casic/missiles/enums/BirmmTagAttributeEnums.java
@@ -9,12 +9,25 @@
*/
@Getter
public enum BirmmTagAttributeEnums {
- CELL_TAG("60000020", 1),
+ RETRY_TIMES_TAG("1000000A", 1),
+ DESTINATION_IP_TAG("10000022", -1),
+ DESTINATION_PORT_TAG("10000023", -1),
DATE_TAG("10000050", 3),
- PIC_TAG("60000511", 2),
+ DATETIME_TAG("10000051", 6),
+ UPLOAD_INTERVAL_TAG("10000062", 2),
+ START_TIME_TAG("10000104", 2),
+ COLLECT_INTERVAL_TAG("10000105", 2),
+ COLLECT_COUNT_TAG("10000106", 2),
+ LOWER_LIMIT_TAG("10000900", 4),
+ UPPER_LIMIMT_TAG("10000901", 4),
+
+ CELL_TAG("60000020", 1),
+ SOFTWARE_VERSION_TAG("60000500", -1),
+ PCI_TAG("60000511", 2),
RSRP_TAG("60000513", 2),
SNR_TAG("60000516", 2);
+
/**
* 名称
*/
diff --git a/sensorhub-support/src/main/java/com/casic/missiles/util/BytesUtil.java b/sensorhub-support/src/main/java/com/casic/missiles/util/BytesUtil.java
index c09b998..588b15b 100644
--- a/sensorhub-support/src/main/java/com/casic/missiles/util/BytesUtil.java
+++ b/sensorhub-support/src/main/java/com/casic/missiles/util/BytesUtil.java
@@ -34,4 +34,32 @@
public static int hexStringToSInt(String str) {
return hexStringToSInt(HexUtils.fromHexString(str));
}
+
+ public static byte[] hexStringToBytes(String str) {
+ if (str.length() % 2 == 1) {
+ str = "0" + str;
+ }
+
+ byte[] bytes = new byte[str.length() / 2];
+ for (int i = 0; i < bytes.length; i++) {
+ String s = str.substring(i * 2, i * 2 + 2);
+ bytes[i] = (byte) Integer.parseInt(s, 16);
+ }
+
+ return bytes;
+ }
+
+ public static String reverseHexString(String str) {
+ StringBuilder reverse = new StringBuilder();
+
+ if (str.length() % 2 == 1) {
+ str = "0" + str;
+ }
+ int len = str.length();
+ for (int i = 0; i < str.length() / 2; i++) {
+ reverse.append(str, len - 2 * (i+1), len - 2 * i);
+ }
+
+ return reverse.toString();
+ }
}