update 企业端可以正常接收消息

This commit is contained in:
lijiarao
2021-09-29 17:09:12 +08:00
parent c819c46860
commit 200fb626b8
3 changed files with 34 additions and 10 deletions
@@ -18,6 +18,7 @@ import com.jero.modules.message.entity.SysMessageTemplate;
import com.jero.modules.message.handle.impl.EmailSendMsgHandle;
import com.jero.modules.message.service.ISysMessageTemplateService;
import com.jero.modules.message.websocket.WebSocket;
import com.jero.modules.pay.company.entity.PayContactsManagement;
import com.jero.modules.system.entity.SysAnnouncement;
import com.jero.modules.system.entity.SysAnnouncementSend;
import com.jero.modules.system.entity.SysUser;
@@ -27,6 +28,7 @@ import com.jero.modules.system.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -128,26 +130,33 @@ public class SendMessageServiceImpl implements SendMessageService {
announcement.setTemplateCode(sendMessageDTO.getTemplateCode());
sysAnnouncementService.save(announcement);
// 2.插入用户通告阅读标记表记录
String userId = toUser;
String[] userIds = userId.split(",");
String[] userIds = toUser.split(",");
String anntId = announcement.getId();
for(int i=0;i<userIds.length;i++) {
if(oConvertUtils.isNotEmpty(userIds[i])) {
SysUser sysUser = sysUserService.getUserByName(userIds[i]);
if(Objects.isNull(sysUser)) {
continue;
for (String id : userIds) {
if (oConvertUtils.isNotEmpty(id)) {
LoginUser user = new LoginUser();
SysUser sysUser = sysUserService.getUserByName(id);
if (Objects.isNull(sysUser)) {
PayContactsManagement contactsManagement = sysUserService.getPayContactsManagementByPhone(PasswordUtil.encrypt(id));
if (contactsManagement == null) {
continue;
} else {
BeanUtils.copyProperties(contactsManagement, user);
}
} else {
BeanUtils.copyProperties(sysUser, user);
}
SysAnnouncementSend announcementSend = new SysAnnouncementSend();
announcementSend.setAnntId(anntId);
announcementSend.setUserId(sysUser.getId());
announcementSend.setUserId(user.getId());
announcementSend.setReadFlag(CommonConstant.NO_READ_FLAG);
sysAnnouncementSendService.save(announcementSend);
JSONObject obj = new JSONObject();
obj.put(WebsocketConst.MSG_CMD, WebsocketConst.CMD_USER);
obj.put(WebsocketConst.MSG_USER_ID, sysUser.getId());
obj.put(WebsocketConst.MSG_USER_ID, user.getId());
obj.put(WebsocketConst.MSG_ID, announcement.getId());
obj.put(WebsocketConst.MSG_TXT, title);
webSocket.sendMessage(sysUser.getId(), obj.toJSONString());
webSocket.sendMessage(user.getId(), obj.toJSONString());
}
}
}catch (Exception e){
@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.api.vo.Result;
import com.jero.common.system.vo.SysUserCacheInfo;
import com.jero.modules.pay.company.entity.PayContactsManagement;
import com.jero.modules.system.entity.SysUser;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -250,4 +251,12 @@ public interface ISysUserService extends IService<SysUser> {
* @return
*/
List<SysUser> getRolesUser(List<String> roleCode);
/**
* 根据手机号查询企业联系人
* @param phone 手机号
* @author lijiarao
* @date 2021/9/29
* @return PayContactsManagement
*/
PayContactsManagement getPayContactsManagementByPhone(String phone);
}
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.exception.JeroBootException;
import com.jero.common.util.*;
import com.jero.modules.pay.company.entity.PayContactsManagement;
import com.jero.modules.system.model.SysLoginVO;
import com.jero.modules.system.vo.SysUserVo;
import lombok.extern.slf4j.Slf4j;
@@ -553,6 +554,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
return listSysUser;
}
@Override
public PayContactsManagement getPayContactsManagementByPhone(String phone) {
return userMapper.getPayContactsManagementByPhone(phone);
}
/**
* 忘记密码校验
* @param user