Selaa lähdekoodia

规则引擎2.0定时执行逻辑

zhaoxian 3 vuotta sitten
vanhempi
commit
53d6e9a0de

+ 5 - 0
module-alarm/src/main/java/cn/com/ctop/alarm/modules/mapper/AlarmRuleOperationRecordMapper.java

@@ -2,6 +2,10 @@ package cn.com.ctop.alarm.modules.mapper;
 
 import cn.com.ctop.alarm.modules.entity.AlarmRuleOperationRecord;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * 预警操作记录表
@@ -12,4 +16,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface AlarmRuleOperationRecordMapper extends BaseMapper<AlarmRuleOperationRecord> {
 
+    List<AlarmRuleOperationRecord> queryToBeRestoredInfo(@Param("type") String type,@Param("time") String time);
 }

+ 9 - 0
module-alarm/src/main/java/cn/com/ctop/alarm/modules/mapper/xml/AlarmRuleOperationRecordMapper.xml

@@ -2,4 +2,13 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="cn.com.ctop.alarm.modules.mapper.AlarmRuleOperationRecordMapper">
 
+    <select id="queryToBeRestoredInfo" resultType="cn.com.ctop.alarm.modules.entity.RuleAccountThreshold">
+        SELECT id, account_id,unit_id,before_value,after_value,create_time from
+            ctop_alarm_rule_operation_record
+        where message ='success'
+          AND value_time = #{time}
+          AND indicator_code = 'TIME'
+          AND media_type = #{type}
+        GROUP BY unit_id
+    </select>
 </mapper>

+ 1 - 1
module-alarm/src/main/java/cn/com/ctop/alarm/modules/mapper/xml/AlarmRuleRecordServiceImpl.java

@@ -1,4 +1,4 @@
-package cn.com.ctop.alarm.modules.mapper.xml;
+package cn.com.ctop.alarm.modules.service.impl;
 
 import cn.com.ctop.alarm.modules.entity.AlarmRuleRecord;
 import cn.com.ctop.alarm.modules.mapper.AlarmRuleRecordMapper;

+ 2 - 14
module-job-bytedance/src/main/java/cn/com/ctop/job/bytedance/handler/AlarmRuleRebackJob.java

@@ -53,13 +53,7 @@ public class AlarmRuleRebackJob {
     }
 
     private void rebackKuaiShou() {
-        Map<String, Object> map = new HashMap<>();
-        //0状态为启动
-        map.put("message", "success");
-        map.put("value_time", DateUtils.getLastDay(DateUtils.formatDate(new Date()), 1));
-        map.put("indicator_code", "TIME");
-        map.put("media_type", "快手");
-        List<AlarmRuleOperationRecord> ruleAccountTemplates = ruleOperationRecordMapper.selectByMap(map);
+        List<AlarmRuleOperationRecord> ruleAccountTemplates = ruleOperationRecordMapper.queryToBeRestoredInfo("快手",DateUtils.getLastDay(DateUtils.formatDate(new Date()), 1));
         if (!Check.isNull(ruleAccountTemplates)) {
             ruleAccountTemplates.forEach(operationRecord -> {
                 CtopOauthToken token = tokenService.getTokenByAccountId(operationRecord.getAccountId());
@@ -83,13 +77,7 @@ public class AlarmRuleRebackJob {
     }
 
     private void rebackByteDance() {
-        Map<String, Object> map = new HashMap<>();
-        //0状态为启动
-        map.put("message", "success");
-        map.put("value_time", DateUtils.getLastDay(DateUtils.formatDate(new Date()), 1));
-        map.put("indicator_code", "TIME");
-        map.put("media_type", "头条");
-        List<AlarmRuleOperationRecord> ruleAccountTemplates = ruleOperationRecordMapper.selectByMap(map);
+        List<AlarmRuleOperationRecord> ruleAccountTemplates = ruleOperationRecordMapper.queryToBeRestoredInfo("头条",DateUtils.getLastDay(DateUtils.formatDate(new Date()), 1));
         if (!Check.isNull(ruleAccountTemplates)) {
             ruleAccountTemplates.forEach(operationRecord -> {
                 CtopOauthToken token = tokenService.getTokenByAccountId(operationRecord.getAccountId());