From f168bcdbd879b90bafe80632509c1f9b271fa1df Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Thu, 29 Sep 2022 14:07:32 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E5=AE=9A=E6=97=B6=E6=8A=A5=E5=91=8A):=20?= =?UTF-8?q?=E9=83=A8=E5=88=86=E6=B8=A0=E9=81=93=E6=B6=88=E6=81=AF=E5=8F=91?= =?UTF-8?q?=E9=80=81=E5=A4=B1=E8=B4=A5=E4=BC=9A=E4=B8=AD=E6=96=AD=E5=90=8E?= =?UTF-8?q?=E9=9D=A2=E5=85=B6=E4=BB=96=E6=B8=A0=E9=81=93=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../strategy/impl/EmailTaskHandler.java | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/backend/src/main/java/io/dataease/job/sechedule/strategy/impl/EmailTaskHandler.java b/backend/src/main/java/io/dataease/job/sechedule/strategy/impl/EmailTaskHandler.java index 0b7560cff0..c6625dc5b7 100644 --- a/backend/src/main/java/io/dataease/job/sechedule/strategy/impl/EmailTaskHandler.java +++ b/backend/src/main/java/io/dataease/job/sechedule/strategy/impl/EmailTaskHandler.java @@ -5,7 +5,6 @@ import io.dataease.auth.entity.TokenInfo; import io.dataease.auth.service.AuthUserService; import io.dataease.auth.service.impl.AuthUserServiceImpl; import io.dataease.auth.util.JWTUtils; -import io.dataease.commons.exception.DEException; import io.dataease.dto.PermissionProxy; import io.dataease.ext.ExtTaskMapper; import io.dataease.commons.utils.CommonBeanFactory; @@ -214,13 +213,17 @@ public class EmailTaskHandler extends TaskHandler implements Job { channels = Arrays.stream(recisetting.split(",")).collect(Collectors.toList()); } - + List errorMsgs = new ArrayList<>(); for (int i = 0; i < channels.size(); i++) { String channel = channels.get(i); switch (channel) { case "email": if (StringUtils.isNotBlank(recipients)) - emailService.sendWithImageAndFiles(recipients, emailTemplateDTO.getTitle(), contentStr, bytes, files); + try { + emailService.sendWithImageAndFiles(recipients, emailTemplateDTO.getTitle(), contentStr, bytes, files); + } catch (Exception e) { + errorMsgs.add("email: " + e.getMessage()); + } break; case "wecom": if (SpringContextUtil.getBean(AuthUserService.class).supportWecom()) { @@ -233,14 +236,14 @@ public class EmailTaskHandler extends TaskHandler implements Job { SysUserAssist sysUserAssist = sysUserService.assistInfo(userId); if (ObjectUtils.isEmpty(sysUserAssist) || StringUtils.isBlank(sysUserAssist.getWecomId())) continue; - wecomUsers.add(sysUserAssist.getLarkId()); + wecomUsers.add(sysUserAssist.getWecomId()); } if (CollectionUtils.isNotEmpty(wecomUsers)) { WecomXpackService wecomXpackService = SpringContextUtil.getBean(WecomXpackService.class); WecomMsgResult wecomMsgResult = wecomXpackService.pushOaMsg(wecomUsers, emailTemplateDTO.getTitle(), contentStr, bytes, files); if (wecomMsgResult.getErrcode() != 0) { - DEException.throwException(wecomMsgResult.getErrmsg()); + errorMsgs.add("wecom: " + wecomMsgResult.getErrmsg()); } } @@ -257,14 +260,14 @@ public class EmailTaskHandler extends TaskHandler implements Job { SysUserAssist sysUserAssist = sysUserService.assistInfo(userId); if (ObjectUtils.isEmpty(sysUserAssist) || StringUtils.isBlank(sysUserAssist.getDingtalkId())) continue; - dingTalkUsers.add(sysUserAssist.getLarkId()); + dingTalkUsers.add(sysUserAssist.getDingtalkId()); } if (CollectionUtils.isNotEmpty(dingTalkUsers)) { DingtalkXpackService dingtalkXpackService = SpringContextUtil.getBean(DingtalkXpackService.class); DingtalkMsgResult dingtalkMsgResult = dingtalkXpackService.pushOaMsg(dingTalkUsers, emailTemplateDTO.getTitle(), contentStr, bytes, files); if (dingtalkMsgResult.getErrcode() != 0) { - DEException.throwException(dingtalkMsgResult.getErrmsg()); + errorMsgs.add("dingtalk: " + dingtalkMsgResult.getErrmsg()); } } @@ -288,7 +291,7 @@ public class EmailTaskHandler extends TaskHandler implements Job { LarkXpackService larkXpackService = SpringContextUtil.getBean(LarkXpackService.class); LarkMsgResult larkMsgResult = larkXpackService.pushOaMsg(larkUsers, emailTemplateDTO.getTitle(), contentStr, bytes, files); if (larkMsgResult.getCode() != 0) { - DEException.throwException(larkMsgResult.getMsg()); + errorMsgs.add("lark: " + larkMsgResult.getMsg()); } } @@ -298,6 +301,11 @@ public class EmailTaskHandler extends TaskHandler implements Job { break; } } + if (CollectionUtils.isNotEmpty(errorMsgs)) { + String msg = errorMsgs.stream().collect(Collectors.joining(" \n ")); + Exception exception = new RuntimeException(msg); + throw exception; + } success(taskInstance); } catch (Exception e) { error(taskInstance, e);