Переглянути джерело

隐患任务 V1
隐患退回
隐患整改提醒
隐患验收提醒
隐患确认提醒

hyq 1 рік тому
батько
коміт
c3850360dc

+ 6 - 0
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/sys/service/HiddenDangerTaskService.java

@@ -18,4 +18,10 @@ public interface HiddenDangerTaskService {
 
     R sendBackMail(Map<String, String> map);
 
+    void rectificationSystem();
+
+    void verifySystem();
+    void affirmSystem();
+
+    R sendBackSystem(Map<String, String> map);
 }

+ 155 - 0
cx-safe-check/cx-save-check-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/HiddenDangerTaskServiceImpl.java

@@ -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);
+        });
+
+    }
 }

+ 68 - 0
cx-safe-check/cx-save-check-server/src/main/java/com/rongwei/savecheck/controller/HiddenDangerTaskController.java

@@ -61,4 +61,72 @@ public class HiddenDangerTaskController {
         log.info("隐患跟踪任务整改提醒!参数为:{}",map);
         hiddenDangerTaskService.sendBackMail(map);
     }
+
+    /**
+     * 隐患任务整改提醒 系统
+     * 定时任务 每天8点
+     * @param
+     * @return
+     * @date 2023/12/20 9:55
+     * @author shangmi
+     *
+     */
+
+    @Scheduled(cron = "0 0 8 ? * *")
+    @PostMapping("/rectification/system")
+    public void rectificationSystem(){
+        log.info("隐患跟踪任务整改提现定时任务!");
+        hiddenDangerTaskService.rectificationSystem();
+    }
+
+    /**
+     * 隐患任务验证提醒 系统
+     * 定时任务 每天8点
+     * @param
+     * @return
+     * @date 2023/12/20 9:55
+     * @author shangmi
+     *
+     */
+
+    @Scheduled(cron = "0 0 8 ? * *")
+    @PostMapping("/verify/system")
+    public void verifySystem(){
+        log.info("隐患跟踪任务整改提现定时任务!");
+        hiddenDangerTaskService.verifySystem();
+    }
+
+    /**
+     * 隐患任务确认提醒 系统
+     * 定时任务 每天8点
+     * @param
+     * @return
+     * @date 2023/12/20 9:55
+     * @author shangmi
+     *
+     */
+
+    @Scheduled(cron = "0 0 8 ? * *")
+    @PostMapping("/affirm/system")
+    public void affirmSystem(){
+        log.info("隐患跟踪任务整改提现定时任务!");
+        hiddenDangerTaskService.affirmSystem();
+    }
+
+    /**
+     * 退回提醒
+     * @param
+     * @return
+     * @date 2023/12/20 9:55
+     * @author shangmi
+     *
+     */
+
+    // @Scheduled(cron = "0 0 8 ? * *")
+    @PostMapping("/send-back/system")
+    public void sendBackSystem(@RequestBody Map<String, String> map){
+        log.info("隐患跟踪任务整改提现定时任务!参数为:{}",map);
+        hiddenDangerTaskService.sendBackSystem(map);
+    }
+
 }