浏览代码

复位次数过滤两分钟以内的数据

wangb 1 月之前
父节点
当前提交
325b59c4d1

+ 6 - 4
runeconomy-xk/src/main/java/com/gyee/runeconomy/service/auto/impl/ProEconBrownoutsEvent2ServiceImpl.java

@@ -48,8 +48,9 @@ public class ProEconBrownoutsEvent2ServiceImpl extends ServiceImpl<ProEconBrowno
         fw.setYfwcs(0.0);
 
         QueryWrapper<ProEconBrownoutsEvent2> qw = new QueryWrapper<>();
-        qw.lambda().eq(ProEconBrownoutsEvent2::getStopTypeId, "维护")
-                .between(ProEconBrownoutsEvent2::getStartTime, DateUtil.beginOfDay(begin), DateUtil.beginOfDay(end));
+        qw.eq("stop_type_id", "维护")
+                .between("start_time", DateUtil.beginOfDay(begin), DateUtil.beginOfDay(end))
+                .apply("EXTRACT(EPOCH FROM (stop_time - start_time)) / 60 > 2");
         List<ProEconBrownoutsEvent2> brownouts = list(qw);
 
         if (null != brownouts && !brownouts.isEmpty()) {
@@ -264,8 +265,9 @@ public class ProEconBrownoutsEvent2ServiceImpl extends ServiceImpl<ProEconBrowno
         DateTime end = DateUtil.beginOfDay(date);
 
         QueryWrapper<ProEconBrownoutsEvent2> qw = new QueryWrapper<>();
-        qw.lambda().in(ProEconBrownoutsEvent2::getStopTypeId, "维护", "故障")
-                .between(ProEconBrownoutsEvent2::getStartTime, DateUtil.beginOfDay(begin), DateUtil.beginOfDay(end));
+        qw.in("stop_type_id", "维护", "故障")
+                .between("start_time", DateUtil.beginOfDay(begin), DateUtil.beginOfDay(end))
+                .apply("EXTRACT(EPOCH FROM (stop_time - start_time)) / 60 > 2");
         List<ProEconBrownoutsEvent2> brownouts = list(qw);
         Map<String, List<ProEconBrownoutsEvent2>> collect = brownouts.stream().collect(Collectors.groupingBy(ProEconBrownoutsEvent2::getStopTypeId));
         List<ProEconBrownoutsEvent2> fw = collect.get("维护");