Kaynağa Gözat

安全生产-发送邮件增加重复过滤

sucheng 11 ay önce
ebeveyn
işleme
feafb559ec

+ 8 - 2
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/AspSafeAttachmentsServiceImpl.java

@@ -122,7 +122,10 @@ public class AspSafeAttachmentsServiceImpl extends ServiceImpl<AspSafeAttachment
                     sendNotifyMap.put(data, alertUser);
                     for (String userId : alertUser) {
                         if (sendMailMap.containsKey(userId)) {
-                            sendMailMap.get(userId).add(data);
+                            List<String> dataIdList = sendMailMap.get(userId).stream().map(AspSafeAttachmentsDo::getId).collect(Collectors.toList());
+                            if (!dataIdList.contains(data.getId())) {
+                                sendMailMap.get(userId).add(data);
+                            }
                         }
                     }
                 } else if (daysBetween <= 90) {
@@ -131,7 +134,10 @@ public class AspSafeAttachmentsServiceImpl extends ServiceImpl<AspSafeAttachment
                     data.setReminderstate(MIDDLE);
                     for (String userId : alertUser) {
                         if (sendMailMap.containsKey(userId)) {
-                            sendMailMap.get(userId).add(data);
+                            List<String> dataIdList = sendMailMap.get(userId).stream().map(AspSafeAttachmentsDo::getId).collect(Collectors.toList());
+                            if (!dataIdList.contains(data.getId())) {
+                                sendMailMap.get(userId).add(data);
+                            }
                         }
                     }
                 } else {

+ 9 - 2
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/AspSpecialEquipmentCertificateServiceImpl.java

@@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.rongwe.scentity.domian.AspSafeAttachmentsDo;
 import com.rongwe.scentity.domian.AspSpecialEquipmentCertificateDo;
+import com.rongwe.scentity.domian.CheckItemsDo;
 import com.rongwe.scentity.vo.UserMailOrgVo;
 import com.rongwei.rwadmincommon.system.domain.SysDictDo;
 import com.rongwei.rwadmincommon.system.service.SysConfigFeignService;
@@ -99,7 +100,10 @@ public class AspSpecialEquipmentCertificateServiceImpl extends ServiceImpl<AspSp
                     sendNotifyMap.put(data, alertUser);
                     for (String userId : alertUser) {
                         if (sendMailMap.containsKey(userId)) {
-                            sendMailMap.get(userId).add(data);
+                            List<String> dataIdList = sendMailMap.get(userId).stream().map(AspSpecialEquipmentCertificateDo::getId).collect(Collectors.toList());
+                            if (!dataIdList.contains(data.getId())) {
+                                sendMailMap.get(userId).add(data);
+                            }
                         }
                     }
                 } else if (daysBetween <= 90) {
@@ -108,7 +112,10 @@ public class AspSpecialEquipmentCertificateServiceImpl extends ServiceImpl<AspSp
                     data.setReminderstate(MIDDLE);
                     for (String userId : alertUser) {
                         if (sendMailMap.containsKey(userId)) {
-                            sendMailMap.get(userId).add(data);
+                            List<String> dataIdList = sendMailMap.get(userId).stream().map(AspSpecialEquipmentCertificateDo::getId).collect(Collectors.toList());
+                            if (!dataIdList.contains(data.getId())) {
+                                sendMailMap.get(userId).add(data);
+                            }
                         }
                     }
                 } else {

+ 8 - 2
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/CheckItemsServiceImpl.java

@@ -226,7 +226,10 @@ public class CheckItemsServiceImpl extends ServiceImpl<CheckItemsDao, CheckItems
                     sendNotifyMap.put(data, alertUser);
                     for (String userId : alertUser) {
                         if (sendMailMap.containsKey(userId)) {
-                            sendMailMap.get(userId).add(data);
+                            List<String> dataIdList = sendMailMap.get(userId).stream().map(CheckItemsDo::getId).collect(Collectors.toList());
+                            if (!dataIdList.contains(data.getId())) {
+                                sendMailMap.get(userId).add(data);
+                            }
                         }
                     }
                 } else if (daysBetween <= 90) {
@@ -235,7 +238,10 @@ public class CheckItemsServiceImpl extends ServiceImpl<CheckItemsDao, CheckItems
                     data.setReminderstate(MIDDLE);
                     for (String userId : alertUser) {
                         if (sendMailMap.containsKey(userId)) {
-                            sendMailMap.get(userId).add(data);
+                            List<String> dataIdList = sendMailMap.get(userId).stream().map(CheckItemsDo::getId).collect(Collectors.toList());
+                            if (!dataIdList.contains(data.getId())) {
+                                sendMailMap.get(userId).add(data);
+                            }
                         }
                     }
                 } else {