|
|
|
@ -52,7 +52,7 @@ public class MessageMailQueueReceiver {
|
|
|
|
|
@RabbitListener(queues = PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE)
|
|
|
|
|
public void processImppMail(SysMessage msg, Channel channel, Message message) {
|
|
|
|
|
try {
|
|
|
|
|
LOGGER.info("【MQ-IMPP_MESSAGE_MAIL_QUEUE】数据接收成功:{}",msg);
|
|
|
|
|
LOGGER.info("【MQ-IMPP_MESSAGE_MAIL_QUEUE】数据接收成功:{}", msg);
|
|
|
|
|
if (msg.getMessageSendTime() == null) {
|
|
|
|
|
msg.setMessageSendTime(TimeTool.getNowTime(true));
|
|
|
|
|
}
|
|
|
|
@ -63,51 +63,54 @@ public class MessageMailQueueReceiver {
|
|
|
|
|
mailUtil.setSubject(msg.getMessageTitle());
|
|
|
|
|
mailUtil.setContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.valueOfDescription(msg.getMessageContentType()));
|
|
|
|
|
mailUtil.setBody(msg.getMessageContent());
|
|
|
|
|
|
|
|
|
|
if(msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.URGENT.getValue()){
|
|
|
|
|
// 判断是否为系统紧急提示 微服注册状态提示
|
|
|
|
|
mailUtil.setTo(sysConfigService.getSysConfigByCode(PlatformConstWords.CONTACT_MAIL).getConfigValue());
|
|
|
|
|
// 次数过于频繁
|
|
|
|
|
if(msg.getMessageReceiverType() != null){
|
|
|
|
|
if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.URGENT.getValue()) {
|
|
|
|
|
// 判断是否为系统紧急提示 微服注册状态提示
|
|
|
|
|
mailUtil.setTo(sysConfigService.getSysConfigByCode(PlatformConstWords.CONTACT_MAIL).getConfigValue());
|
|
|
|
|
// 次数过于频繁
|
|
|
|
|
// mailUtil.send();
|
|
|
|
|
|
|
|
|
|
} else if(msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.EXTERNAL.getValue()){
|
|
|
|
|
//判断是否为外部邮件
|
|
|
|
|
mailUtil.setTo(StringUtils.split(msg.getMessageReceiversNameRdd(),","));
|
|
|
|
|
mailUtil.send();
|
|
|
|
|
} else if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.EXTERNAL.getValue()) {
|
|
|
|
|
//判断是否为外部邮件
|
|
|
|
|
mailUtil.setTo(StringUtils.split(msg.getMessageReceiversNameRdd(), ","));
|
|
|
|
|
mailUtil.send();
|
|
|
|
|
|
|
|
|
|
} else if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()) {
|
|
|
|
|
// 收件人信息
|
|
|
|
|
String[] messageReceiver = msg.getMessageReceiversId().split(",");
|
|
|
|
|
String[] receiverName = new String[messageReceiver.length];
|
|
|
|
|
} else if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()) {
|
|
|
|
|
// 收件人信息
|
|
|
|
|
String[] messageReceiver = msg.getMessageReceiversId().split(",");
|
|
|
|
|
String[] receiverName = new String[messageReceiver.length];
|
|
|
|
|
|
|
|
|
|
SysRefUserMessage refUserMessage;
|
|
|
|
|
SysUser sysUser;
|
|
|
|
|
SysRefUserMessage refUserMessage;
|
|
|
|
|
SysUser sysUser;
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < messageReceiver.length; i++) {
|
|
|
|
|
sysUser = sysUserService.getSysUserById(Long.parseLong(messageReceiver[i]));
|
|
|
|
|
receiverName[i] = sysUser.getUserName();
|
|
|
|
|
for (int i = 0; i < messageReceiver.length; i++) {
|
|
|
|
|
sysUser = sysUserService.getSysUserById(Long.parseLong(messageReceiver[i]));
|
|
|
|
|
receiverName[i] = sysUser.getUserName();
|
|
|
|
|
|
|
|
|
|
refUserMessage = new SysRefUserMessage();
|
|
|
|
|
refUserMessage.setMessageId(msg.getId());
|
|
|
|
|
refUserMessage.setMessageTitleRdd(msg.getMessageTitle());
|
|
|
|
|
refUserMessage.setMessageTypeRdd(msg.getMessageType());
|
|
|
|
|
refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd());
|
|
|
|
|
refUserMessage.setReceiverId(sysUser.getId());
|
|
|
|
|
refUserMessage.setReceiverNameRdd(sysUser.getUserName());
|
|
|
|
|
refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue());
|
|
|
|
|
refUserMessage.setReceiverTime(TimeTool.getNowTime(true));
|
|
|
|
|
refUserMessage = new SysRefUserMessage();
|
|
|
|
|
refUserMessage.setMessageId(msg.getId());
|
|
|
|
|
refUserMessage.setMessageTitleRdd(msg.getMessageTitle());
|
|
|
|
|
refUserMessage.setMessageTypeRdd(msg.getMessageType());
|
|
|
|
|
refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd());
|
|
|
|
|
refUserMessage.setReceiverId(sysUser.getId());
|
|
|
|
|
refUserMessage.setReceiverNameRdd(sysUser.getUserName());
|
|
|
|
|
refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue());
|
|
|
|
|
refUserMessage.setReceiverTime(TimeTool.getNowTime(true));
|
|
|
|
|
|
|
|
|
|
sysMessageService.insertSysRefUserMessage(refUserMessage);
|
|
|
|
|
sysMessageService.insertSysRefUserMessage(refUserMessage);
|
|
|
|
|
|
|
|
|
|
mailUtil.setTo(sysUser.getUserEmail());
|
|
|
|
|
mailUtil.send();
|
|
|
|
|
}
|
|
|
|
|
mailUtil.setTo(sysUser.getUserEmail());
|
|
|
|
|
mailUtil.send();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
msg.setMessageReceiversNameRdd(StringUtils.join(receiverName, ","));
|
|
|
|
|
sysMessageService.updateSysMessage(msg);
|
|
|
|
|
msg.setMessageReceiversNameRdd(StringUtils.join(receiverName, ","));
|
|
|
|
|
sysMessageService.updateSysMessage(msg);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//信息已处理
|
|
|
|
|
channel.basicAck(message.getMessageProperties().getDeliveryTag(),false);
|
|
|
|
|
channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
|
|
|
|
|
}catch (NullPointerException e){
|
|
|
|
|
LOGGER.error(e.getMessage());
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错:{}",e.getMessage(),e);
|
|
|
|
|
//丢弃这条消息
|
|
|
|
|