فهرست منبع

fengji 修改邮件配置tenantId

yanite 3 سال پیش
والد
کامیت
81203199b3
1فایلهای تغییر یافته به همراه10 افزوده شده و 10 حذف شده
  1. 10 10
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMessageServiceImpl.java

+ 10 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMessageServiceImpl.java

@@ -303,6 +303,7 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 	@Async
 	@Async
 	public void batchSendMessage(MessageSender messageSender, MessageTypeEnum type, Map<Integer, String> receivers, Date triggerTime, Integer readStatus,
 	public void batchSendMessage(MessageSender messageSender, MessageTypeEnum type, Map<Integer, String> receivers, Date triggerTime, Integer readStatus,
 			String url,String jpushType, Object... args) {
 			String url,String jpushType, Object... args) {
+		LOGGER.info("batchSendMessage {}, type {}, receivers {} ", messageSender, type, receivers);
 		if (receivers == null || receivers.size() == 0) {
 		if (receivers == null || receivers.size() == 0) {
 			LOGGER.error("接收地址不能为空");
 			LOGGER.error("接收地址不能为空");
 			return;
 			return;
@@ -312,10 +313,9 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 
 
 		// email data from database load, 使用接收者 tenantId, 假设发送者和接收者为同一机构
 		// email data from database load, 使用接收者 tenantId, 假设发送者和接收者为同一机构
 		if (Objects.equals(messageSender.getSendMode(), "EMAIL")) {
 		if (Objects.equals(messageSender.getSendMode(), "EMAIL")) {
-			Integer userId = receivers.keySet().stream().findFirst().orElse(-1);
-			loadEmailInfo(userId);
+			LOGGER.info("batch 发送邮件 {} ", simpleUserDto.getTenantId());
+			loadEmailInfo(simpleUserDto.getTenantId());
 			debugMode = false;
 			debugMode = false;
-			LOGGER.info("batch 发送邮件 {} ", userId);
 		}
 		}
 		if(StringUtils.isNotEmpty(jpushType) && jpushType == "STUDENT"){
 		if(StringUtils.isNotEmpty(jpushType) && jpushType == "STUDENT"){
 			//如果不是缴费信息
 			//如果不是缴费信息
@@ -450,6 +450,7 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 	@Override
 	@Override
 	@Async
 	@Async
 	public void sendMessage(MessageSender messageSender, Integer userId, String title, String content, String receiver, Date triggerTime, Integer readStatus, String url, String group,String jpushType) {
 	public void sendMessage(MessageSender messageSender, Integer userId, String title, String content, String receiver, Date triggerTime, Integer readStatus, String url, String group,String jpushType) {
+		LOGGER.info("batchSendMessage {}, userId {}, receivers {} ", messageSender, userId, receiver);
 		if (StringUtils.isBlank(receiver)) {
 		if (StringUtils.isBlank(receiver)) {
 			throw new BizException("接收地址不能为空");
 			throw new BizException("接收地址不能为空");
 		}
 		}
@@ -490,14 +491,13 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 		addMessage(receivers, title, content, triggerTime, mode, status, errorMsg, readStatus, url, null,jpushType);
 		addMessage(receivers, title, content, triggerTime, mode, status, errorMsg, readStatus, url, null,jpushType);
 	}
 	}
 
 
-	private void loadEmailInfo(Integer userId) {
-		SysUser user = sysUserFeignService.queryUserById(userId);
-		if (user == null) {
-			LOGGER.error("用户Id {} 找不到用户", userId);
-			return;
-		}
+	private void loadEmailInfo(Integer tenantId) {
 		try {
 		try {
-			SysEmail email1 = sysEmailService.getOne(new WrapperUtil<SysEmail>().hasEq("tenant_id_", user.getTenantId()).queryWrapper());
+			SysEmail email1 = sysEmailService.getOne(new WrapperUtil<SysEmail>().hasEq("tenant_id_", tenantId).queryWrapper());
+			if (email1 == null) {
+				LOGGER.error("未找到邮件配置 tenantId" + tenantId);
+				throw new RuntimeException("未找到邮件配置 tenantId" + tenantId);
+			}
 			messageSenderPluginContext.sysEmail.setHostName(email1.getHostName());
 			messageSenderPluginContext.sysEmail.setHostName(email1.getHostName());
 			messageSenderPluginContext.sysEmail.setSmtpPort(email1.getSmtpPort());
 			messageSenderPluginContext.sysEmail.setSmtpPort(email1.getSmtpPort());
 			messageSenderPluginContext.sysEmail.setUserName(email1.getUserName());
 			messageSenderPluginContext.sysEmail.setUserName(email1.getUserName());