|
@@ -9,6 +9,7 @@ import com.rongwe.scentity.domian.AspSafeAttachmentsDo;
|
|
|
import com.rongwe.scentity.domian.CheckItemsDo;
|
|
|
import com.rongwe.scentity.vo.CheckAreaVo;
|
|
|
import com.rongwe.scentity.vo.ImportAspSafeAttachmentsVo;
|
|
|
+import com.rongwe.scentity.vo.SysNoticeVo;
|
|
|
import com.rongwe.scentity.vo.UserMailOrgVo;
|
|
|
import com.rongwei.rwadmincommon.system.domain.SysDictDo;
|
|
|
import com.rongwei.rwadmincommon.system.domain.SysOrganizationDo;
|
|
@@ -22,6 +23,7 @@ import com.rongwei.rwcommon.vo.MailDo;
|
|
|
import com.rongwei.rwcommonentity.commonservers.domain.SysFileItemDo;
|
|
|
import com.rongwei.safecommon.utils.CXCommonUtils;
|
|
|
import com.rongwei.sfcommon.sys.dao.AspSafeAttachmentsDao;
|
|
|
+import com.rongwei.sfcommon.sys.dao.AspSpecialEquipmentCertificateDao;
|
|
|
import com.rongwei.sfcommon.sys.dao.SaveCheckCommonDao;
|
|
|
import com.rongwei.sfcommon.sys.service.AspSafeAttachmentsService;
|
|
|
import com.rongwei.sfcommon.utils.ClassExcelVerifyHandler;
|
|
@@ -43,9 +45,11 @@ import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
import static com.rongwei.safecommon.utils.SaveConstans.*;
|
|
|
+import static com.rongwei.safecommon.utils.SaveConstans.NotifyContent.EQUIPMENT_CHECK_CONTENT;
|
|
|
import static com.rongwei.safecommon.utils.SaveConstans.NotifyContent.SAFETY_ATTACHMENT_VERIFICATION_CONTENT;
|
|
|
import static com.rongwei.safecommon.utils.SaveConstans.NotifyTitle.SAFETY_ATTACHMENT_VERIFICATION_TITLE;
|
|
|
import static com.rongwei.safecommon.utils.SaveConstans.NotifyType.SAFETY_ATTACHMENT_VERIFICATION;
|
|
|
+import static com.rongwei.safecommon.utils.SaveConstans.NotifyType.SPECIALEQUIPMENT;
|
|
|
|
|
|
/**
|
|
|
*
|
|
@@ -81,6 +85,8 @@ public class AspSafeAttachmentsServiceImpl extends ServiceImpl<AspSafeAttachment
|
|
|
private ClassExcelVerifyHandler verifyHandler;
|
|
|
@Resource
|
|
|
private SysConfigFeignService sysConfigFeignService;
|
|
|
+ @Resource
|
|
|
+ private AspSpecialEquipmentCertificateDao aspSpecialEquipmentCertificateDao;
|
|
|
|
|
|
@Override
|
|
|
public R stateUpdateScheduledTasks() {
|
|
@@ -130,8 +136,8 @@ public class AspSafeAttachmentsServiceImpl extends ServiceImpl<AspSafeAttachment
|
|
|
}
|
|
|
} else if (daysBetween <= 90) {
|
|
|
alertUser = userInfO.stream().filter(user -> SPECIAL_EQUIPMENT_ADMINISTRATOR.equals(user.getRoleCode())).map(UserMailOrgVo::getId).collect(Collectors.toList());
|
|
|
- sendNotifyMap.put(data, alertUser);
|
|
|
data.setReminderstate(MIDDLE);
|
|
|
+ sendNotifyMap.put(data, alertUser);
|
|
|
for (String userId : alertUser) {
|
|
|
if (sendMailMap.containsKey(userId)) {
|
|
|
List<String> dataIdList = sendMailMap.get(userId).stream().map(AspSafeAttachmentsDo::getId).collect(Collectors.toList());
|
|
@@ -207,11 +213,23 @@ public class AspSafeAttachmentsServiceImpl extends ServiceImpl<AspSafeAttachment
|
|
|
* @param sendNotifyMap
|
|
|
*/
|
|
|
public void sendNotify(Map<AspSafeAttachmentsDo, List<String>> sendNotifyMap) {
|
|
|
+ //查询所有该类型的、未读的 消息通知
|
|
|
+ List<SysNoticeVo> sysNoticeVo = aspSpecialEquipmentCertificateDao.selectMyNoticeByType(Arrays.asList(SAFETY_ATTACHMENT_VERIFICATION));
|
|
|
+
|
|
|
+
|
|
|
sendNotifyMap.forEach((k, v) -> {
|
|
|
+
|
|
|
+ String content = String.format(SAFETY_ATTACHMENT_VERIFICATION_CONTENT, k.getName() == null ? "" : k.getName(), k.getNumber() == null ? "" : k.getNumber(), k.getInspectiondate() == null ? "" : k.getInspectiondate(),
|
|
|
+ k.getNextinspectiondate() == null ? "" : k.getNextinspectiondate(), k.getResponsible() == null ? "" : k.getResponsible());
|
|
|
+ List<String> userIdList = v.stream().distinct().collect(Collectors.toList());
|
|
|
+ SysNoticeVo oldNoticeVo = sysNoticeVo.stream().filter(item -> item.getNotifycontent().equals(content) && item.getRoption().equals(k.getId())).distinct().findFirst().orElse(null);
|
|
|
+ if (ObjectUtil.isNotEmpty(oldNoticeVo) && ObjectUtil.isNotEmpty(oldNoticeVo.getUserIds())) {
|
|
|
+ userIdList.removeAll(oldNoticeVo.getUserIds());
|
|
|
+ }
|
|
|
+
|
|
|
// 发送消息提醒
|
|
|
CXCommonUtils.sendNotify(SAFETY_ATTACHMENT_VERIFICATION_TITLE,
|
|
|
- String.format(SAFETY_ATTACHMENT_VERIFICATION_CONTENT, k.getName(), k.getNumber(), k.getInspectiondate(),
|
|
|
- k.getNextinspectiondate(), k.getResponsible()), null, v.stream().distinct().collect(Collectors.toList()),
|
|
|
+ content, null, userIdList,
|
|
|
k.getId(), SAFETY_ATTACHMENT_VERIFICATION, false);
|
|
|
});
|
|
|
}
|