package jnpf.message.util; import com.alibaba.fastjson.JSONObject; import jnpf.base.UserInfo; import jnpf.message.entity.MessageReceiveEntity; import org.springframework.stereotype.Component; import java.util.Map; import java.util.Objects; /** * 消息推送工具类 * * @author JNPF开发平台组 * @version V3.1.0 * @copyright 引迈信息技术有限公司(https://www.jnpfsoft.com) * @date 2021-07-07 */ @Component public class PushMessageUtil { /** * 工作流消息发送 * * * @param userInfo */ public static void pushMessage(Map map, UserInfo userInfo, int messageType){ for (String userId : map.keySet()) { for (OnlineUserModel item : OnlineUserProvider.getOnlineUserList()) { if (userId.equals(item.getUserId()) && Objects.equals(userInfo.getTenantId(), item.getTenantId())) { JSONObject jsonObject = new JSONObject(); jsonObject.put("method", "messagePush"); jsonObject.put("unreadNoticeCount", 1); jsonObject.put("messageType", messageType); jsonObject.put("userId", userInfo.getUserId()); jsonObject.put("toUserId", userId); jsonObject.put("title", map.get(userId).getTitle()); jsonObject.put("id",map.get(userId).getId()); jsonObject.put("messageDefaultTime", map.get(userId).getLastModifyTime() != null ? map.get(userId).getLastModifyTime().getTime() : null); OnlineUserProvider.sendMessage(item, jsonObject); } } } } }