Browse Source

feature 代码提交

xiahan 9 months ago
parent
commit
6a78de0883

+ 10 - 10
js-security/security-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/SaveCheckItemServiceImpl.java

@@ -14,11 +14,13 @@ import com.rongwei.rwadmincommon.system.domain.SysUserDo;
 import com.rongwei.rwadmincommon.system.service.SysConfigFeignService;
 import com.rongwei.rwadmincommon.system.service.SysDictService;
 import com.rongwei.rwadmincommon.system.service.SysUserService;
+import com.rongwei.rwadmincommon.system.vo.SysUserVo;
 import com.rongwei.rwcommon.base.BaseDo;
 import com.rongwei.rwcommon.base.R;
 import com.rongwei.rwcommon.utils.SecurityUtil;
 import com.rongwei.rwcommon.utils.StringUtils;
 import com.rongwei.rwcommon.vo.MailDo;
+import com.rongwei.safecommon.utils.JSCommonUtils;
 import com.rongwei.sfcommon.sys.dao.SaveCheckCommonDao;
 import com.rongwei.sfcommon.sys.service.SaveCheckItemService;
 import com.rongwei.sfcommon.sys.service.ThemeCheckItemService;
@@ -97,8 +99,11 @@ public class SaveCheckItemServiceImpl implements SaveCheckItemService {
         if (aspCheckDiscoveryItemDos.isEmpty()) {
             log.error("无法通过ID:{}获取到检查项信息", id);
         }
+
+        SysUserVo currentUser = JSCommonUtils.getCurrentUser();
         // 任务生成
-        List<HiddenDangerTrackDo> sendNotifyData = generateHiddenDangerTrack(checkItemDo, themeCheck, aspCheckDiscoveryItemDos);
+        List<HiddenDangerTrackDo> sendNotifyData = generateHiddenDangerTrack(checkItemDo, themeCheck,
+                aspCheckDiscoveryItemDos,  currentUser);
         // 更新任务状态
         List<String> discoverIds = aspCheckDiscoveryItemDos.stream().map(AspCheckDiscoveryItemDo::getId).collect(Collectors.toList());
         aspCheckDiscoveryItemService.update(new LambdaUpdateWrapper<AspCheckDiscoveryItemDo>()
@@ -126,7 +131,8 @@ public class SaveCheckItemServiceImpl implements SaveCheckItemService {
      * @return
      */
     public List<HiddenDangerTrackDo> generateHiddenDangerTrack(ThemeCheckItemDo checkItemDo, ThemeCheckDo themeCheck,
-                                                               List<AspCheckDiscoveryItemDo> aspCheckDiscoveryItemDos) {
+                                                               List<AspCheckDiscoveryItemDo> aspCheckDiscoveryItemDos,
+                                                               SysUserVo currentUser) {
         if (MlConstants.CHECK_RESULT_TRACK.equals(checkItemDo.getCheckresult()) || aspCheckDiscoveryItemDos.isEmpty()) {
             log.debug("检查结果为正常或无发现项,无需生成检查任务");
         }
@@ -167,14 +173,8 @@ public class SaveCheckItemServiceImpl implements SaveCheckItemService {
             hiddenDangerTrack.setTrackuserid(info.getTrackuserid());
             //检查任务id
             hiddenDangerTrack.setCheckid(info.getId());
-            //创建人
-            hiddenDangerTrack.setCreateusername(info.getModifyusername());
-            hiddenDangerTrack.setCreateuserid(info.getModifyuserid());
-            hiddenDangerTrack.setModifyusername(info.getModifyusername());
-            hiddenDangerTrack.setModifyuserid(info.getModifyuserid());
-            hiddenDangerTrack.setModifydate(new Date());
-            //创建时间当前时间
-            hiddenDangerTrack.setCreatedate(new Date());
+            hiddenDangerTrack.setTenantid(checkItemDo.getTenantid());
+            JSCommonUtils.setBaseDetail(hiddenDangerTrack,currentUser);
             //隐患图片
             hiddenDangerTrack.setHazardphoto(info.getFileinfo());
 

+ 3 - 0
js-security/security-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/ScheduledTasksService.java

@@ -26,4 +26,7 @@ public interface ScheduledTasksService {
     R creatHazardInvestigationTask();
 
     R qualificationCertificateRemind();
+
+
+    R updateHiddenDangerWarningStatus();
 }

+ 44 - 0
js-security/security-common/src/main/java/com/rongwei/sfcommon/sys/service/impl/ScheduledTasksServiceImpl.java

@@ -1,5 +1,7 @@
 package com.rongwei.sfcommon.sys.service.impl;
 
+import cn.hutool.core.date.DateUnit;
+import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.rongwe.scentity.domian.*;
@@ -254,6 +256,48 @@ public class ScheduledTasksServiceImpl implements ScheduledTasksService {
         return R.ok();
     }
 
+    /**
+     * 更新隐患任务预警状态
+     * @return
+     */
+    @Override
+    public R updateHiddenDangerWarningStatus() {
+        List<HiddenDangerTrackDo> hiddenDangerTracks = hiddenDangerTrackService.list(
+                new LambdaQueryWrapper<HiddenDangerTrackDo>().eq(HiddenDangerTrackDo::getDeleted,"0")
+                        .ne(HiddenDangerTrackDo::getHazardstate,"9"));
+        JSCommonUtils.parameterCheck(hiddenDangerTracks::isEmpty, "暂无需要更新状态的隐患任务", "暂无需要更新状态的隐患任务");
+        List<HiddenDangerTrackDo> updateList= new ArrayList<>();
+        HiddenDangerTrackDo updateDo;
+        for (HiddenDangerTrackDo hiddenDangerTrack : hiddenDangerTracks) {
+            //限整改日期
+            Date deadlineforhazardcontrol = hiddenDangerTrack.getDeadlineforhazardcontrol();
+            if (deadlineforhazardcontrol == null ) {
+                continue;
+            }
+            updateDo = new HiddenDangerTrackDo();
+            updateDo.setId(hiddenDangerTrack.getId());
+            Date bg = DateUtil.parseDate(DateUtil.format(new Date(), "yyyy-MM-dd"));
+            Date end = DateUtil.parseDate(DateUtil.format(deadlineforhazardcontrol, "yyyy-MM-dd"));
+            Long bday = DateUtil.between(bg, end, DateUnit.DAY, false);
+            // 更新预警状态
+            if (bday>3){
+                updateDo.setWarnstatus("正常");
+            }else if(bday > 1) {
+                updateDo.setWarnstatus("3天");
+            } else if (bday >= 0) {
+                updateDo.setWarnstatus("1天");
+            } else {
+                updateDo.setWarnstatus("过期");
+            }
+            updateDo.setModifydate(new Date());
+            updateList.add(updateDo);
+        }
+        if(!updateList.isEmpty()){
+            hiddenDangerTrackService.updateBatchById(updateList);
+        }
+        return R.ok();
+    }
+
     public Date preGenerationCheck(ApsHazardInvestigationTemplateDo hazardInvestigationTemplateDo,
                                    Calendar calendar) {
         int currentMonth = calendar.get(Calendar.MONTH) + 1; // 月份是从0开始的,所以加1

+ 7 - 0
js-security/security-server/src/main/java/com/rongwei/savecheck/controller/ScheduledTasksController.java

@@ -109,4 +109,11 @@ public class ScheduledTasksController {
         log.info("资质证照复审定时提醒");
         return scheduledTasksService.qualificationCertificateRemind();
     }
+
+    @Scheduled(cron = "0 0 1 ? * *")
+    @PostMapping("/hidden-danger/warning-status")
+    public R updateHiddenDangerWarningStatus(){
+        log.info("资质证照复审定时提醒");
+        return scheduledTasksService.updateHiddenDangerWarningStatus();
+    }
 }