From 3b0516a2959e25576e4f3fda697a3b025d06c8c9 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期二, 24 六月 2025 14:09:07 +0800
Subject: [PATCH] 每日录像可用指标添加日志,修改大屏为查看当前月平均

---
 ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java |   98 ++++++++++++++++++++++++++++++++-----------------
 1 files changed, 64 insertions(+), 34 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java
index 09f29b9..1deba5d 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java
@@ -3,6 +3,7 @@
 import com.alibaba.fastjson2.JSONArray;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.exception.job.TaskException;
 import com.ycl.platform.base.BaseSelect;
 import com.ycl.platform.domain.entity.CheckTemplate;
 import com.ycl.platform.domain.entity.CheckTemplateRule;
@@ -13,10 +14,13 @@
 import com.ycl.platform.service.ICheckTemplateService;
 import com.ycl.system.AjaxResult;
 import com.ycl.system.Result;
+import com.ycl.system.domain.SysJob;
 import com.ycl.system.entity.SysDept;
 import com.ycl.system.service.ISysDeptService;
+import com.ycl.system.service.ISysJobService;
 import com.ycl.utils.SecurityUtils;
 import constant.CheckConstants;
+import org.quartz.SchedulerException;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Bean;
@@ -44,6 +48,8 @@
     private ICheckTemplateRuleService templateRuleServicee;
     @Autowired
     private CheckTemplateRuleMapper checkTemplateRuleMapper;
+    @Autowired
+    private ISysJobService jobService;
 
     /**
      * 鏌ヨ鑰冩牳妯℃澘
@@ -70,8 +76,6 @@
             list.add(map);
         }
         checkTemplateQuery.setRuleFormList(list);
-        //TODO:鏌ヨtemplate_rule琛ㄤ腑鐨勬潈閲嶄俊鎭��
-
 
         return checkTemplateQuery;
     }
@@ -107,10 +111,7 @@
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public int insertCheckTemplate(CheckTemplateQuery checkTemplateDTO) {
-        //TODO:鏂板瀹氭椂浠诲姟锛岀姸鎬佸悓妯℃澘,鐒跺悗璧嬪�糺obId缁檛emplate
-
-
+    public int insertCheckTemplate(CheckTemplateQuery checkTemplateDTO) throws SchedulerException, TaskException {
         String username = SecurityUtils.getUsername();
         /** 鎻掑叆t_template */
         CheckTemplate checkTemplate = new CheckTemplate();
@@ -126,6 +127,12 @@
                 //涓嶅~鎶ヨ鍒嗘暟---->闆跺垎---->涓嶆姤璀�
                 .setAlarmScore(new BigDecimal(checkTemplateDTO.getAlarmScore() == null ? "" : checkTemplateDTO.getAlarmScore()));
         int i = checkTemplateMapper.insertCheckTemplate(checkTemplate);
+
+        //鏂板瀹氭椂浠诲姟锛岀姸鎬佸悓妯℃澘,鐒跺悗璧嬪�糺obId缁檛emplate
+        SysJob sysJob = addJob(checkTemplateDTO.setId(checkTemplate.getId()));
+        checkTemplate.setJobId(Integer.parseInt(sysJob.getJobId() + ""));
+        checkTemplateMapper.updateCheckTemplate(checkTemplate);
+
         /** t_template_rule鏂板鏉冮噸 */
         insertTemlpateRule(checkTemplateDTO, checkTemplate);
 
@@ -140,9 +147,7 @@
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public int copyCheckTemplate(CheckTemplateQuery checkTemplateDTO) {
-        //TODO:鏂板瀹氭椂浠诲姟锛岀姸鎬佸悓妯℃澘,鐒跺悗璧嬪�糺obId缁檛emplate
-
+    public int copyCheckTemplate(CheckTemplateQuery checkTemplateDTO) throws SchedulerException, TaskException {
         //鎻掑叆妯℃澘琛�
         CheckTemplate checkTemplate = checkTemplateMapper.selectCheckTemplateById(checkTemplateDTO.getId());
         String username = SecurityUtils.getUsername();
@@ -155,7 +160,10 @@
         List<CheckTemplateRule> templateRuleList = checkTemplateRuleMapper.selectListByTemplateId(checkTemplateDTO.getId());
         templateRuleList.forEach(checkTemplateRule -> checkTemplateRule.setCheckTemplateId(checkTemplate.getId()).setId(null));
         templateRuleServicee.saveBatch(templateRuleList);
-
+        //鏂板瀹氭椂浠诲姟锛岀姸鎬佸悓妯℃澘,鐒跺悗璧嬪�糺obId缁檛emplate
+        SysJob sysJob = addJob(checkTemplateDTO.setId(checkTemplate.getId()));
+        checkTemplate.setJobId(Integer.parseInt(sysJob.getJobId() + ""));
+        checkTemplateMapper.updateCheckTemplate(checkTemplate);
         return i;
     }
 
@@ -167,7 +175,7 @@
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public AjaxResult updateCheckTemplate(CheckTemplateQuery checkTemplateDTO) {
+    public AjaxResult updateCheckTemplate(CheckTemplateQuery checkTemplateDTO) throws SchedulerException, TaskException {
         CheckTemplate checkTemplate = new CheckTemplate();
         BeanUtils.copyProperties(checkTemplateDTO, checkTemplate);
         checkTemplate.setUpdateUserName(SecurityUtils.getUsername());
@@ -178,24 +186,17 @@
         checkTemplateMapper.updateCheckTemplate(checkTemplate);
 
         /** t_template_rule淇敼鏉冮噸 */
-        //鍏堝垹闄ゅ師鏁版嵁
-        checkTemplateRuleMapper.deleteByTemplateId(checkTemplate.getId());
-        //鎻掑叆鏂拌鍒欐暟鎹�
-        insertTemlpateRule(checkTemplateDTO, checkTemplate);
-
-        //TODO:鍒ゆ柇鐘舵�佹槸鍚︿慨鏀癸紝璋冩暣job琛ㄩ噷鐨勭姸鎬�
+        if (!CollectionUtils.isEmpty(checkTemplateDTO.getRuleFormList())) {
+            //鍏堝垹闄ゅ師鏁版嵁
+            checkTemplateRuleMapper.deleteByTemplateId(checkTemplate.getId());
+            //鎻掑叆鏂拌鍒欐暟鎹�
+            insertTemlpateRule(checkTemplateDTO, checkTemplate);
+        }
+        //璋冩暣job琛ㄩ噷鐨勭姸鎬�
+        SysJob job = jobService.selectJobById(Long.valueOf(checkTemplateDTO.getJobId()));
+        job.setStatus(checkTemplateDTO.getStatus());
+        jobService.updateJob(job);
         return AjaxResult.success();
-    }
-
-    /**
-     * 鎵归噺鍒犻櫎鑰冩牳妯℃澘
-     *
-     * @param ids 闇�瑕佸垹闄ょ殑鑰冩牳妯℃澘涓婚敭
-     * @return 缁撴灉
-     */
-    @Override
-    public int deleteCheckTemplateByIds(Integer[] ids) {
-        return checkTemplateMapper.deleteCheckTemplateByIds(ids);
     }
 
     /**
@@ -205,12 +206,16 @@
      * @return 缁撴灉
      */
     @Override
-    public int deleteCheckTemplateById(Integer id) {
-        //TODO:鍒犻櫎瀹氭椂浠诲姟
-
-
-        return checkTemplateMapper.updateCheckTemplate(new CheckTemplate().setId(id)
-                .setDeleted(CheckConstants.Delete));
+    public int deleteCheckTemplateById(Integer id) throws SchedulerException {
+        CheckTemplate checkTemplate = checkTemplateMapper.selectCheckTemplateById(id);
+        //鍒犻櫎瀹氭椂浠诲姟
+        SysJob job = new SysJob();
+        if (checkTemplate.getJobId() != null) {
+            job.setJobId(Long.valueOf(checkTemplate.getJobId()));
+            job.setJobGroup("CHECK");
+            jobService.deleteJob(job);
+        }
+        return checkTemplateMapper.deleteCheckTemplateById(id);
     }
 
     @Override
@@ -235,4 +240,29 @@
             templateRuleServicee.saveBatch(templateRuleList);
         }
     }
+
+    private SysJob addJob(CheckTemplateQuery checkTemplateDTO) throws SchedulerException, TaskException {
+        SysJob job = new SysJob();
+        job.setCreateBy(SecurityUtils.getLoginUser().getUsername());
+        //璋冪敤鏂规硶鍚�
+        job.setInvokeTarget("checkScoreTask.executeTemplate(" + checkTemplateDTO.getId() + ")");
+        job.setConcurrent("1");
+        job.setStatus(checkTemplateDTO.getStatus());
+        job.setJobGroup("CHECK");
+        job.setCronExpression("0 0 8 * * ?");
+        job.setJobName(checkTemplateDTO.getTemplateName());
+        int i = jobService.insertJob(job);
+        return job;
+    }
+
+    //    /**
+//     * 鎵归噺鍒犻櫎鑰冩牳妯℃澘
+//     *
+//     * @param ids 闇�瑕佸垹闄ょ殑鑰冩牳妯℃澘涓婚敭
+//     * @return 缁撴灉
+//     */
+//    @Override
+//    public int deleteCheckTemplateByIds(Integer[] ids) {
+//        return checkTemplateMapper.deleteCheckTemplateByIds(ids);
+//    }
 }

--
Gitblit v1.8.0