From 8d9eca3f5e9f884a14f41d04d1898e2ee7bf9078 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期二, 11 六月 2024 16:08:08 +0800 Subject: [PATCH] 1.提交【管理后台】-营销管理-积分管理相关接口 2.修改websocket代码,增加用户端、拍卖师端类型区分 --- ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/util/WebSocketUsers.java | 61 +++++++++--------------------- 1 files changed, 19 insertions(+), 42 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/util/WebSocketUsers.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/util/WebSocketUsers.java index 5d8a44b..c69232e 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/util/WebSocketUsers.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/util/WebSocketUsers.java @@ -16,34 +16,17 @@ */ public class WebSocketUsers { - /** - * WebSocketUsers 日志控制器 - */ private static final Logger LOGGER = LoggerFactory.getLogger(WebSocketUsers.class); - /** - * 用户集 - */ - private static Map<String, Session> USERS = new ConcurrentHashMap<String, Session>(); + private static Map<String, Session> USERS = new ConcurrentHashMap<>(); + private static Map<String, Integer> USER_TYPES = new ConcurrentHashMap<>(); - /** - * 存储用户 - * - * @param key 唯一键 - * @param session 用户信息 - */ - public static void put(String key, Session session) + public static void put(String key, Session session, Integer clientType) { USERS.put(key, session); + USER_TYPES.put(key, clientType); } - /** - * 移除用户 - * - * @param session 用户信息 - * - * @return 移除结果 - */ public static boolean remove(Session session) { String key = null; @@ -68,15 +51,11 @@ return remove(key); } - /** - * 移出用户 - * - * @param key 键 - */ public static boolean remove(String key) { LOGGER.info("\n 正在移出用户 - {}", key); Session remove = USERS.remove(key); + USER_TYPES.remove(key); if (remove != null) { boolean containsValue = USERS.containsValue(remove); @@ -89,21 +68,15 @@ } } - /** - * 获取在线用户列表 - * - * @return 返回用户集合 - */ public static Map<String, Session> getUsers() { return USERS; } - /** - * 群发消息文本消息 - * - * @param message 消息内容 - */ + public static Integer getUserType(String key) { + return USER_TYPES.get(key); + } + public static void sendMessageToUsersByText(String message) { Collection<Session> values = USERS.values(); @@ -113,12 +86,6 @@ } } - /** - * 发送文本消息 - * - * @param session 自己的用户名 - * @param message 消息内容 - */ public static void sendMessageToUserByText(Session session, String message) { if (session != null) @@ -137,4 +104,14 @@ LOGGER.info("\n[你已离线]"); } } + + public static void sendMessageToUsersByType(Integer clientType, String message) { + for (Map.Entry<String, Session> entry : USERS.entrySet()) { + String key = entry.getKey(); + Session session = entry.getValue(); + if (clientType.equals(USER_TYPES.get(key))) { + sendMessageToUserByText(session, message); + } + } + } } -- Gitblit v1.7.1