From 48a8b0d3502e01cb00d5a913b7be4a0ed2e12fc0 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Wed, 10 Sep 2025 18:26:55 +0800
Subject: [PATCH] 新币数据调整

---
 trading-order-admin/src/main/java/com/yami/trading/api/websocket/WebSocketServer.java |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/websocket/WebSocketServer.java b/trading-order-admin/src/main/java/com/yami/trading/api/websocket/WebSocketServer.java
index fb37c44..70f773a 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/websocket/WebSocketServer.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/websocket/WebSocketServer.java
@@ -1,5 +1,9 @@
 package com.yami.trading.api.websocket;
 
+import cn.hutool.core.collection.CollectionUtil;
+import com.yami.trading.bean.item.domain.Item;
+import com.yami.trading.common.util.ApplicationContextUtils;
+import com.yami.trading.service.item.ItemService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 
@@ -8,6 +12,7 @@
 import javax.websocket.server.ServerEndpoint;
 import java.io.IOException;
 import java.util.Calendar;
+import java.util.List;
 import java.util.concurrent.ConcurrentHashMap;
 
 /**
@@ -35,14 +40,25 @@
 	public static ConcurrentHashMap<String, WebSocketSession> tradeMap = new ConcurrentHashMap<String, WebSocketSession>();
 	public static ConcurrentHashMap<String, WebSocketSession> depthMap = new ConcurrentHashMap<String, WebSocketSession>();
 
-
-
 	/**
 	 * 连接建立成功调用的方法
 	 */
 	@OnOpen
 	public void onOpen(@PathParam(value = "type") String type,
                        @PathParam(value = "param") String param, Session session) {
+		//停牌断开连接
+		if (WebSocketEnum.SOCKET_ENUM_DEPTH.getCode().equals(type)) {
+			List<Item> items = ApplicationContextUtils.getApplicationContext().getBean(ItemService.class).list();
+			if (CollectionUtil.isNotEmpty(items)) {
+				Item item = items.stream().filter(i -> param.equalsIgnoreCase(i.getSymbol())).findFirst().orElse(null);
+				if (item != null) {
+					if (item.getStatus() != null && item.getStatus() == 0) {
+						return;
+					}
+				}
+			}
+
+		}
 
 		WebSocketSession webSocketSession = new WebSocketSession(session,  getTimeInMillis(), type, param);
 		// 加入set中

--
Gitblit v1.9.3