燕山石化溯源三维电子沙盘-【后端】-服务
1
13693261870
2023-04-25 df3f915b82a7dcf5d30d77d80c5ad3d8be1e7ec7
src/main/java/com/yssh/service/impl/WarningAnalyseServiceImpl.java
@@ -1,5 +1,6 @@
package com.yssh.service.impl;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
@@ -56,6 +57,8 @@
   @Autowired
   private IAsyncService asyncService;
   private SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHH");
   @Override
   @Async("threadPoolTaskExecutor")
   public void insertWarningDetails(List<WarningDetail> warning) throws Exception {
@@ -77,11 +80,31 @@
      if (StringUtils.isNull(dictRecord)) {
         nowDate = DateUtils.getAPeriodOfTime(nowDate, -1, Calendar.HOUR_OF_DAY);
      }
      List<WarningDetail> list = alarmAnalyseOperation(nowDate);
      //List<WarningDetail> list = alarmAnalyseOperation(nowDate);
      List<WarningDetail> list = new ArrayList<>();
      Calendar calendar = getCalendar(nowDate);
      for (int i = 0; i < 3; i++) {
         calendar.add(Calendar.HOUR, -1);
         List<WarningDetail> rs = alarmAnalyseOperation(calendar.getTime());
         if (null != rs && rs.size() > 0) {
            list.addAll(rs);
         }
      }
      list.forEach(s -> {
         result.add(new WarningVo(s.getLocationName(), s.getSuYuanId(), 0.0, 0.0, s.getValue()));
      });
      return result;
   }
   private Calendar getCalendar(Date nowDate) {
      Calendar calendar = Calendar.getInstance();
      calendar.setTime(nowDate);
      calendar.add(Calendar.HOUR, 1);
      return calendar;
   }
   @Override
@@ -93,7 +116,18 @@
      if (StringUtils.isNull(dictRecord)) {
         nowDate = DateUtils.getAPeriodOfTime(nowDate, -1, Calendar.HOUR_OF_DAY);
      }
      List<WarningDetail> list = warningAnalyseOperation(nowDate);
      //List<WarningDetail> list = warningAnalyseOperation(nowDate);
      List<WarningDetail> list = new ArrayList<>();
      Calendar calendar = getCalendar(nowDate);
      for (int i = 0; i < 3; i++) {
         calendar.add(Calendar.HOUR, -1);
         List<WarningDetail> rs = warningAnalyseOperation(calendar.getTime());
         if (null != rs && rs.size() > 0) {
            list.addAll(rs);
         }
      }
      list.forEach(s -> {
         result.add(new WarningVo(s.getLocationName(), s.getSuYuanId(), 0.0, 0.0, s.getValue()));
      });