24282 1 år sedan
förälder
incheckning
ff43048de4

+ 2 - 0
hx-socket/src/main/java/com/fjhx/socket/core/WebSocketPush.java

@@ -115,6 +115,7 @@ public class WebSocketPush {
      * 保存消息
      */
     private static void savePushInfo(PushTypeEnum pushTypeEnum, PushParam pushParam) {
+        DynamicDataSourceContextHolder.push(BaseSourceConstant.BASE);
         PushInfo pushInfo = new PushInfo();
         pushInfo.setId(pushParam.getPushId());
         pushInfo.setType(pushTypeEnum.getType());
@@ -125,6 +126,7 @@ public class WebSocketPush {
         pushInfo.setPushUserId(pushParam.getUserId());
         pushInfo.setPushRead(StatusConstant.NO);
         pushInfoService.save(pushInfo);
+        DynamicDataSourceContextHolder.poll();
     }
 
 }

+ 3 - 3
hx-socket/src/main/java/com/fjhx/socket/core/WebSocketServer.java

@@ -1,8 +1,8 @@
 package com.fjhx.socket.core;
 
 import cn.hutool.extra.spring.SpringUtil;
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson2.JSONObject;
+import com.alibaba.fastjson2.JSONWriter;
 import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.fjhx.socket.core.event.WebSocketOnMessageEvent;
@@ -183,7 +183,7 @@ public class WebSocketServer {
         }
 
         try {
-            this.session.getBasicRemote().sendText(JSON.toJSONString(msg.toJSONString()));
+            this.session.getBasicRemote().sendText(msg.toJSONString(JSONWriter.Feature.WriteLongAsString));
             applicationContext.publishEvent(new WebSocketSendSuccessEvent(pushTypeEnum, pushParam));
         } catch (IOException e) {
             applicationContext.publishEvent(new WebSocketSendFailEvent(pushTypeEnum, pushParam));