|
@@ -10,6 +10,7 @@ import com.rongwei.rwcommon.base.BaseDo;
|
|
|
import com.rongwei.rwcommon.base.R;
|
|
|
import com.rongwei.rwcommon.utils.StringUtils;
|
|
|
import com.rongwei.rwcommon.vo.MailDo;
|
|
|
+import com.rongwei.safecommon.utils.CXCommonUtils;
|
|
|
import com.rongwei.sfcommon.sys.dao.SaveCheckCommonDao;
|
|
|
import com.rongwei.sfcommon.sys.service.HiddenDangerTaskService;
|
|
|
import org.slf4j.Logger;
|
|
@@ -20,6 +21,7 @@ import org.springframework.stereotype.Service;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
+import static com.rongwei.safecommon.utils.SaveConstans.NotifyType.DANGERTASKS;
|
|
|
import static com.rongwei.sfcommon.utils.MlConstants.SECTION_SUPERVISOR_CODE;
|
|
|
|
|
|
/**
|
|
@@ -47,6 +49,10 @@ public class HiddenDangerTaskServiceImpl implements HiddenDangerTaskService {
|
|
|
* 隐患跟踪任务验证提醒标题
|
|
|
*/
|
|
|
public static final String VERIFICATION_MAIL_TITLE = "隐患跟踪任务验证提醒";
|
|
|
+ /**
|
|
|
+ * 隐患跟踪任务确认提醒标题
|
|
|
+ */
|
|
|
+ public static final String AFFIRM_MAIL_TITLE = "隐患跟踪任务确认提醒";
|
|
|
/**
|
|
|
* 隐患跟踪任务整改提醒内容
|
|
|
*/
|
|
@@ -64,6 +70,17 @@ public class HiddenDangerTaskServiceImpl implements HiddenDangerTaskService {
|
|
|
*/
|
|
|
public static final String RECTIFICATE_MAIL_CONTENT = "总编号:%s \n 发现时间:%tF \n 发现人:%s \n 发现项:%s \n 限整改期:%tF \n 整改验证未通过,请您重新整改 \n详见智能安全监控平台:http://192.168.0.205:8000";
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 隐患跟踪任务验证完成提醒内容
|
|
|
+ */
|
|
|
+ public static final String VERIFICATION_SYSTEM_CONTENT = "%s 整改确认未通过,请您重新验证\n详见智能安全监控平台:http://192.168.0.205:8000";
|
|
|
+ /**
|
|
|
+ * 隐患跟踪任务验证完成提醒内容
|
|
|
+ */
|
|
|
+ public static final String AFFIRM_REMIND_MAIL_CONTENT = "%s 已验证完成,请您确认关闭\n详见智能安全监控平台:http://192.168.0.205:8000";
|
|
|
+
|
|
|
/**
|
|
|
* 发送隐患跟踪任务整改提醒
|
|
|
*
|
|
@@ -227,4 +244,142 @@ public class HiddenDangerTaskServiceImpl implements HiddenDangerTaskService {
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void rectificationSystem() {
|
|
|
+ List<HiddenDangerTrackDo> hiddenDangerTrackList = hiddenDangerTrackService.list(new LambdaQueryWrapper<HiddenDangerTrackDo>()
|
|
|
+ .eq(BaseDo::getDeleted, 0)
|
|
|
+ .eq(HiddenDangerTrackDo::getStatus, 20)
|
|
|
+ .isNotNull(HiddenDangerTrackDo::getTrackuserid)
|
|
|
+ );
|
|
|
+ rectificationNotify(hiddenDangerTrackList);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void verifySystem() {
|
|
|
+ List<HiddenDangerTrackDo> hiddenDangerTrackList = hiddenDangerTrackService.list(new LambdaQueryWrapper<HiddenDangerTrackDo>()
|
|
|
+ .eq(BaseDo::getDeleted, 0)
|
|
|
+ .eq(HiddenDangerTrackDo::getStatus, 30)
|
|
|
+ .isNotNull(HiddenDangerTrackDo::getShopfacilitatorid)
|
|
|
+ );
|
|
|
+ verifyNotify(hiddenDangerTrackList);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void affirmSystem() {
|
|
|
+ List<HiddenDangerTrackDo> hiddenDangerTrackDos = hiddenDangerTrackService.list(new LambdaQueryWrapper<HiddenDangerTrackDo>()
|
|
|
+ .eq(BaseDo::getDeleted, 0)
|
|
|
+ .eq(HiddenDangerTrackDo::getStatus, 40)
|
|
|
+ .isNotNull(HiddenDangerTrackDo::getSafetypromoterid)
|
|
|
+ );
|
|
|
+ affirmNotify(hiddenDangerTrackDos);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public R sendBackSystem(Map<String, String> map) {
|
|
|
+ String id = map.getOrDefault("id", "");
|
|
|
+ if (StringUtils.isBlank(id)) {
|
|
|
+ log.error("任务ID为空");
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+ HiddenDangerTrackDo hiddenDangerTrackDo = hiddenDangerTrackService.getById(id);
|
|
|
+ if (null == hiddenDangerTrackDo) {
|
|
|
+ log.error("无法通过id:{}获取到任务列表", id);
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+ //发送人
|
|
|
+ List<String> userId = new ArrayList<>();
|
|
|
+ //发送内容
|
|
|
+ String context = null;
|
|
|
+ //发送标题
|
|
|
+ String title = null;
|
|
|
+ String state = map.getOrDefault("state", "");
|
|
|
+ if (StringUtils.isBlank(state)){
|
|
|
+ log.error("状态为空");
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+ //判断发送验证还是整改
|
|
|
+ if ("20".equals(state)){
|
|
|
+ userId = Arrays.asList(hiddenDangerTrackDo.getTrackuserid().split(","));
|
|
|
+ context = String.format(RECTIFICATE_MAIL_CONTENT,hiddenDangerTrackDo.getCode(),
|
|
|
+ hiddenDangerTrackDo.getFindtime(),hiddenDangerTrackDo.getFindusername(),
|
|
|
+ hiddenDangerTrackDo.getHiddendangercontent(),hiddenDangerTrackDo.getRectificationdate());
|
|
|
+ title = RECTIFICATION_MAIL_TITLE;
|
|
|
+
|
|
|
+ } else if ("30".equals(state)) {
|
|
|
+ userId = Arrays.asList(hiddenDangerTrackDo.getShopfacilitatorid().split(","));
|
|
|
+ String verificationRemindTemp = String.format(VERIFICATION_REMIND_TEMP,hiddenDangerTrackDo.getCode(),
|
|
|
+ hiddenDangerTrackDo.getHiddendangercontent());
|
|
|
+ context =String.format(VERIFICATION_SYSTEM_CONTENT,verificationRemindTemp);
|
|
|
+ title = VERIFICATION_MAIL_TITLE;
|
|
|
+ }
|
|
|
+ if (userId.size()==0){
|
|
|
+ log.error("无法找到接收人!");
|
|
|
+ }
|
|
|
+ CXCommonUtils.sendNotify(title,
|
|
|
+ context,null,userId,hiddenDangerTrackDo.getId(),DANGERTASKS);
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 隐患任务整改提醒
|
|
|
+ *
|
|
|
+ * @param hiddenDangerTrackList
|
|
|
+ * @return
|
|
|
+ * @date 2023/12/20 9:54
|
|
|
+ * @author shangmi
|
|
|
+ *
|
|
|
+ */
|
|
|
+
|
|
|
+ public void rectificationNotify(List<HiddenDangerTrackDo> hiddenDangerTrackList){
|
|
|
+ hiddenDangerTrackList.forEach(hiddenDangerTrack -> {
|
|
|
+ List<String> userIds = Arrays.asList(hiddenDangerTrack.getTrackuserid().split(","));
|
|
|
+ CXCommonUtils.sendNotify(RECTIFICATION_MAIL_TITLE,
|
|
|
+ String.format(RECTIFICATION_MAIL_CONTENT,hiddenDangerTrack.getCode(),hiddenDangerTrack.getFindtime(),
|
|
|
+ hiddenDangerTrack.getFindusername(),hiddenDangerTrack.getHiddendangercontent(),
|
|
|
+ hiddenDangerTrack.getRectificationdate()),null,userIds,hiddenDangerTrack.getId(),DANGERTASKS);
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 隐患任务验证提醒
|
|
|
+ *
|
|
|
+ * @param hiddenDangerTrackList
|
|
|
+ * @return
|
|
|
+ * @date 2023/12/20 9:54
|
|
|
+ * @author shangmi
|
|
|
+ *
|
|
|
+ */
|
|
|
+
|
|
|
+ public void verifyNotify(List<HiddenDangerTrackDo> hiddenDangerTrackList){
|
|
|
+ hiddenDangerTrackList.forEach(hiddenDangerTrack -> {
|
|
|
+ List<String> userIds = Arrays.asList(hiddenDangerTrack.getShopfacilitatorid().split(","));
|
|
|
+ String format = String.format(VERIFICATION_REMIND_TEMP, hiddenDangerTrack.getCode(), hiddenDangerTrack.getHiddendangercontent());
|
|
|
+ CXCommonUtils.sendNotify(VERIFICATION_MAIL_TITLE,
|
|
|
+ String.format(VERIFICATION_REMIND_MAIL_CONTENT,format),null,userIds,hiddenDangerTrack.getId(),DANGERTASKS);
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 隐患任务确认提醒
|
|
|
+ *
|
|
|
+ * @param hiddenDangerTrackList
|
|
|
+ * @return
|
|
|
+ * @date 2023/12/20 9:54
|
|
|
+ * @author shangmi
|
|
|
+ *
|
|
|
+ */
|
|
|
+
|
|
|
+ public void affirmNotify(List<HiddenDangerTrackDo> hiddenDangerTrackList){
|
|
|
+ hiddenDangerTrackList.forEach(hiddenDangerTrack -> {
|
|
|
+ List<String> userIds = Arrays.asList(hiddenDangerTrack.getSafetypromoterid().split(","));
|
|
|
+ String format = String.format(VERIFICATION_REMIND_TEMP, hiddenDangerTrack.getCode(), hiddenDangerTrack.getHiddendangercontent());
|
|
|
+ CXCommonUtils.sendNotify(AFFIRM_MAIL_TITLE,
|
|
|
+ String.format(AFFIRM_REMIND_MAIL_CONTENT,format),null,userIds,hiddenDangerTrack.getId(),DANGERTASKS);
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
}
|