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/UPLinkTestReqService.java |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/UPLinkTestReqService.java b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/UPLinkTestReqService.java
index 147c7f3..cddbd25 100644
--- a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/UPLinkTestReqService.java
+++ b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/UPLinkTestReqService.java
@@ -6,7 +6,10 @@
 import com.ruoyi.dataInterchange.util.jtt809.packet.common.OuterPacket;
 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;
 
 
 /**
@@ -17,6 +20,9 @@
 @Component
 public class UPLinkTestReqService {
 	
+	@Resource
+	private RedisTemplate redisTemplate;
+	
 	
 	/**
 	 * 主链路连接保持
@@ -25,11 +31,15 @@
 	 * @param out
 	 */
 	public void linkTest(ChannelHandlerContext ctx, OuterPacket out) {
+		if (!redisTemplate.hasKey("login:" + out.getGnsscenterId())) {
+			log.error("链路还未登录校验,拒绝连接");
+			ctx.close();
+			return;
+		}
 		int gnsscenterId = out.getGnsscenterId();
 		ChannelMap.addServerChannel(gnsscenterId, ctx.channel());
 		OuterPacket rep = new OuterPacket(DataType.UP_LINKTEST_RSP.getCode(), null);
 		log.info("主链路连接保持应答({}):{}", DataType.UP_LINKTEST_RSP.getCode(), JSON.toJSONString(rep));
 		ctx.writeAndFlush(rep);
-		ctx.flush();
 	}
 }

--
Gitblit v1.7.1