diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java index c1ca2f6e..f43fcdee 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java @@ -823,26 +823,35 @@ public class EsRevisionServiceImpl extends ServiceImpl advices = revision.getAdvices(); - // 发送消息 - for (EsRevisionAdvice advice : advices) { - // 采纳的不发消息 - if (HandleAdviceEnum.AGREE.getValue().equals(advice.getHandleAdvice())) { - continue; - } + Map> adviceMap = advices.stream() + .collect(Collectors.groupingBy(EsRevisionAdvice::getCreateUserId)); + // 按照Map的Key遍历 + for (String userId : adviceMap.keySet()) { + List adviceList = adviceMap.get(userId); SendMessageDTO sendMessageDTO = new SendMessageDTO(); sendMessageDTO.setTemplateCode(MessageTemplateCodeCommon.ES_REVISION_ADVICE); - sendMessageDTO.setToUserId(advice.getCreateUserId()); + sendMessageDTO.setToUserId(userId); Map sendMap = new HashMap<>(); sendMap.put("prcNum", processAll.getPrcNum()); sendMap.put("prcName", processAll.getPrcName()); - sendMap.put("clauseNum", advice.getClauseNum()); - sendMap.put("clauseName", advice.getClauseName()); - if (HandleAdviceEnum.DISAGREE.getValue().equals(advice.getHandleAdvice())) { - sendMap.put("result", "未被采纳"); - } else { - sendMap.put("result", "被部分采纳"); + StringBuilder msg = new StringBuilder(); + for (EsRevisionAdvice advice : adviceList) { + msg.append(advice.getClauseNum()).append(" ").append(advice.getClauseName()); + // 采纳的不发消息 + if (HandleAdviceEnum.AGREE.getValue().equals(advice.getHandleAdvice())) { + continue; + } + msg.append(advice.getClauseNum()).append(" ").append(advice.getClauseName()); + if (HandleAdviceEnum.DISAGREE.getValue().equals(advice.getHandleAdvice())) { + msg.append(" 未被采纳,"); + } else { + msg.append(" 被部分采纳,"); + } + msg.append("理由为:").append(advice.getReason()).append(";"); } - sendMap.put("reason", advice.getReason()); + // 去除最后一个分号 + msg.deleteCharAt(msg.length() - 1); + sendMap.put("msg", msg.toString()); sendMessageDTO.setMap(sendMap); sendMessageAPI.sendMessage(sendMessageDTO); }