From 87c2f1ec41e244dfdd4722884fcdf285a1fe9b41 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 24 三月 2025 14:41:25 +0800
Subject: [PATCH] 完成音视频协议接口对接

---
 ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPPlaybackMsgStartupAck.java |   39 ++++++++++++++++++++++++++++++++++++---
 1 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPPlaybackMsgStartupAck.java b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPPlaybackMsgStartupAck.java
index 0e39970..d27e30a 100644
--- a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPPlaybackMsgStartupAck.java
+++ b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPPlaybackMsgStartupAck.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,31 +16,38 @@
  * @Date 2025/3/21 10:04
  */
 @Data
-public class UPPlaybackMsgStartupAck {
+@Document(indexName = "up_playback_msg_startup_ack")
+public class UPPlaybackMsgStartupAck 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;
 	/**
 	 * 企业视频服务器IP地址
 	 */
+	@Field(type = FieldType.Text)
 	private String serverIP;
 	/**
 	 * 企业视频服务端口号
 	 */
-	private Integer serverPort;
+	@Field(type = FieldType.Integer)
+	private int serverPort;
 	/**
 	 * 应答结果
 	 * 0x00: 成功
@@ -43,5 +57,24 @@
 	 * 0x04: 失效口令错误
 	 * 0x05: 不满足跨域条件
 	 */
-	private Integer result;
+	@Field(type = FieldType.Integer)
+	private int result;
+	
+	
+	/**
+	 * 解析报文
+	 */
+	public UPPlaybackMsgStartupAck decode(PlaybackMsg playbackMsg) {
+		byte[] data = playbackMsg.getData();
+		ByteBuf byteBuf = Unpooled.wrappedBuffer(data);
+		this.vehicleNo = playbackMsg.getVehicleNo();
+		this.vehicleColor = playbackMsg.getVehicleColor();
+		this.dataType = playbackMsg.getDataType();
+		this.dataLength = playbackMsg.getDataLength();
+		
+		this.serverIP = Jtt809Util.readGBKString(byteBuf, 32);
+		this.serverPort = byteBuf.readShort();
+		this.result = byteBuf.readByte();
+		return this;
+	}
 }

--
Gitblit v1.7.1