pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/msCenter/CenterMsReceiveCtrl.java
@@ -28,7 +28,8 @@
 */
@Slf4j
@Tag(name = "通信中间消息中心推送消息接收方", description = "通信中间消息中心推送消息接收方")
@Hidden //不公开接口,其只有通信中间件调用
@Tag(name = "通信中间件消息中心推送消息接收者", description = "通信中间件消息中心推送消息接收者")
@RestController
@RequestMapping(path="msCenter")
public class CenterMsReceiveCtrl{
@@ -37,16 +38,16 @@
    private CenterMsReceiveSv sv ;
    /**
     * 通信中间消息中心推送消息接收
     * @param list 消息集合
     * @return 操作结果
     * 通信中间件消息中心推送消息接收
     * @param list 消息数据集合
     * @return 无返回结果
     */
    @Hidden //不公开接口,其只有通信中间件调用
    @PostMapping(path = "receive", consumes = MediaType.APPLICATION_JSON_VALUE)
    public BaseResponse<Boolean> receive(@RequestBody List<JSONObject> list, HttpServletRequest req, HttpServletResponse rep) {
        //通信中间件传过来的机构tag,以用于查找数据源
        String token = req.getHeader(Constant.UserTokenKeyInHeader);
        DataSourceContext.set(token);
        String orgTag = req.getHeader(Constant.TokenKeyInHeader);
        DataSourceContext.set(orgTag);
        if(list != null && list.size() > 0){
            for (JSONObject jo : list) {
@@ -68,21 +69,21 @@
                    }
                }
            }
            sendByWebSocket(list) ;
            sendByWebSocket(orgTag, list) ;
        }
        return null ;
    }
    /**
     * 推送消息
     * 通过websocket把消息推送出去,当前接收方是前端的大屏展示模块
     * @param list
     */
    private void sendByWebSocket(List<JSONObject> list){
    private void sendByWebSocket(String orgTag, List<JSONObject> list){
        WebSocketMessage vo = new WebSocketMessage() ;
        vo.type = WebSocketMessage.TYPE_JSON ;
        vo.content = list ;
        try {
            WebSocketServer.sendAllMessage(JSON.toJSONString(vo));
            WebSocketServer.sendMessage2AllClient(orgTag, JSON.toJSONString(vo));
        }catch (Exception e){
            log.error("推送消息失败", e) ;
        }