From 3c66b754ee314ae87d0f2eda2fa86a30ea2304e7 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 14 三月 2025 18:32:30 +0800
Subject: [PATCH] 修改809对接bug

---
 ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/CtrlMsgService.java |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/CtrlMsgService.java b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/CtrlMsgService.java
index fd77c08..3fab1cd 100644
--- a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/CtrlMsgService.java
+++ b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/CtrlMsgService.java
@@ -1,7 +1,6 @@
 package com.ruoyi.dataInterchange.server;
 
 import com.ruoyi.dataInterchange.model.CtrlMag;
-import com.ruoyi.dataInterchange.model.WarnMsg;
 import com.ruoyi.dataInterchange.model.enu.DataType;
 import com.ruoyi.dataInterchange.util.jtt809.common.Jtt809Util;
 import com.ruoyi.dataInterchange.util.jtt809.packet.common.OuterPacket;
@@ -9,7 +8,10 @@
 import io.netty.buffer.Unpooled;
 import io.netty.channel.ChannelHandlerContext;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
 
 /**
  * @author zhibing.pu
@@ -19,10 +21,19 @@
 @Component
 public class CtrlMsgService {
 	
-	public void up_ctrl_msg(ChannelHandlerContext ctx, OuterPacket out){
+	@Resource
+	private RedisTemplate redisTemplate;
+	
+	
+	public void up_ctrl_msg(ChannelHandlerContext ctx, OuterPacket out) {
+		if (!redisTemplate.hasKey("login:" + out.getGnsscenterId())) {
+			log.error("链路还未登录校验,拒绝连接");
+			ctx.close();
+			return;
+		}
 		CtrlMag ctrlMsg = getCtrlMsg(out);
 		DataType dataType = DataType.getDataType(ctrlMsg.getDataType());
-		switch (dataType){
+		switch (dataType) {
 			case UP_CTRL_MSG_MONITOR_VEHICLE_ACK:
 				log.info("车辆单向监听应答消息({}):{}", DataType.UP_CTRL_MSG_MONITOR_VEHICLE_ACK.getCode(), out);
 				break;
@@ -46,6 +57,7 @@
 	
 	/**
 	 * 解析子业务数据
+	 *
 	 * @param out
 	 * @return
 	 */

--
Gitblit v1.7.1