From a91f50ce8ce976743c11de98f9e3ed574bb3f78e Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 28 五月 2025 19:35:10 +0800
Subject: [PATCH] 添加海康威视实时监控对接功能
---
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPRealvideoMsgStartupAck.java | 43 ++++++++++++++++++++++++++++++++++++++++---
1 files changed, 40 insertions(+), 3 deletions(-)
diff --git a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPRealvideoMsgStartupAck.java b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPRealvideoMsgStartupAck.java
index 1624fee..060aa3d 100644
--- a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPRealvideoMsgStartupAck.java
+++ b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPRealvideoMsgStartupAck.java
@@ -1,6 +1,13 @@
package com.ruoyi.dataInterchange.model;
+import com.ruoyi.dataInterchange.pojo.BaseModel;
+import com.ruoyi.dataInterchange.util.jtt809.common.Jtt809Util;
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
import lombok.Data;
+import org.springframework.data.elasticsearch.annotations.Document;
+import org.springframework.data.elasticsearch.annotations.Field;
+import org.springframework.data.elasticsearch.annotations.FieldType;
/**
* 实时音视频请求应答
@@ -9,22 +16,27 @@
* @Date 2025/3/21 9:45
*/
@Data
-public class UPRealvideoMsgStartupAck {
+@Document(indexName = "up_realvideo_msg_startup_ack")
+public class UPRealvideoMsgStartupAck extends BaseModel {
/**
* 车牌号
*/
+ @Field(type = FieldType.Text)
private String vehicleNo;
/**
* 车牌颜色
*/
+ @Field(type = FieldType.Integer)
private Integer vehicleColor;
/**
* 子业务类型标识
*/
+ @Field(type = FieldType.Integer)
private Integer dataType;
/**
* 后续数据长度
*/
+ @Field(type = FieldType.Integer)
private Integer dataLength;
/**
* 应答结果
@@ -35,13 +47,38 @@
* 0x04: 失效口令错误
* 0x05: 不满足跨域条件
*/
- private Integer result;
+ @Field(type = FieldType.Integer)
+ private int result;
/**
* 企业视频服务器IP地址
*/
+ @Field(type = FieldType.Text)
private String serverIP;
/**
* 企业视频服务端口号
*/
- private Integer serverPort;
+ @Field(type = FieldType.Integer)
+ private int serverPort;
+
+ /**
+ * 解析报文
+ */
+ public UPRealvideoMsgStartupAck decode(RealVideoMsg realVideoMsg) {
+ try {
+ byte[] data = realVideoMsg.getData();
+ ByteBuf byteBuf = Unpooled.wrappedBuffer(data);
+ this.vehicleNo = realVideoMsg.getVehicleNo();
+ this.vehicleColor = realVideoMsg.getVehicleColor();
+ this.dataType = realVideoMsg.getDataType();
+ this.dataLength = realVideoMsg.getDataLength();
+
+ //报警处理结果
+ this.result = byteBuf.readByte();
+ this.serverIP = Jtt809Util.readGBKString(byteBuf, 32);
+ this.serverPort = byteBuf.readShort();
+ }catch (Exception e){
+ e.printStackTrace();
+ }
+ return this;
+ }
}
--
Gitblit v1.7.1