燕山石化溯源三维电子沙盘-【后端】-服务
1
13693261870
2023-06-16 5b17ccbbe08971f861ff097c62241d2b79e4b5f6
src/main/java/com/yssh/service/impl/SuYuanServiceImpl.java
@@ -1,20 +1,15 @@
package com.yssh.service.impl;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.atomic.AtomicInteger;
import com.yssh.dao.QxshMapper;
import com.yssh.entity.*;
import com.yssh.utils.*;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@@ -30,8 +25,7 @@
@Service
public class SuYuanServiceImpl implements ISuYuanService {
   protected final Log logger = LogFactory.getLog(this.getClass());
   protected final Logger logger = LoggerFactory.getLogger(this.getClass());
   @Resource
   private SuYuanMapper suYuanMapper;
@@ -54,9 +48,9 @@
   private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHH");
   //@Transactional
   @Override
   //@Override
   @Async("threadPoolTaskExecutor")
   public void insertSuYuanDatas(List<SuYuan> lists, String time) throws Exception {
   public void insertSuYuanDatasAsync(List<SuYuan> lists, String time) throws Exception {
      //插入数据
      List<List<SuYuan>> list = Lists.partition(lists, IAsyncService.BATCH_INSERT_NUMBER);
      CountDownLatch countDownLatch = new CountDownLatch(list.size());
@@ -65,6 +59,16 @@
      }
      countDownLatch.await();
      logger.info(lists.size() + "条数据入库完成-----");
   }
   @Override
   public void insertSuYuanDatas(List<SuYuan> lists, String time) {
      List<List<SuYuan>> subLists = Lists.partition(lists, IAsyncService.BATCH_INSERT_NUMBER);
      for (List<SuYuan> sub : subLists) {
         suYuanMapper.batchInsert(TableStrategy.getTableStrategy(time), sub);
      }
      logger.info("------ " + time + ".csv," + lists.size() + " 条数据已入库 ------");
   }
   @Override
@@ -242,22 +246,38 @@
      if (StringUtils.isNull(checkPoint)) {
         return null;
      }
      List<DictRecord> recordList = dictRecordMapper.selectDictRecordList(new DictRecord());
      /*List<DictRecord> recordList = dictRecordMapper.selectDictRecordList(new DictRecord());
      List<String> tableNames = new ArrayList<String>();
      recordList.stream().forEach(s -> {
         tableNames.add(s.getTableName());
      });
      return suYuanMapper.getMonitorData(tableNames, checkPoint.getX() + "_" + checkPoint.getY() + "_" + checkPoint.getZ());
      for (DictRecord dr : recordList) {
         if (suYuanMapper.isTableExists(dr.getTableName()) > 0) {
            tableNames.add(dr.getTableName());
         }
      }
      return suYuanMapper.getMonitorData(tableNames, checkPoint.getX() + "_" + checkPoint.getY() + "_" + checkPoint.getZ());*/
      Calendar calendar = Calendar.getInstance();
      calendar.set(Calendar.HOUR_OF_DAY, 23);
      String end = dateFormat.format(calendar.getTime());
      calendar.set(Calendar.HOUR_OF_DAY, 0);
      calendar.add(Calendar.DATE, -7);
      String start = dateFormat.format(calendar.getTime());
      return suYuanMapper.getNewMonitorData(checkPoint.getName(), start, end);
   }
   @Override
   public int updateVocsName(Date date, String id, String vocsName) {
      String table = "su_yuan_" + dateFormat.format(new Date());
      String table = "su_yuan_" + dateFormat.format(date); // new Date()
      if (isTableExists(table) == 0) {
         return 0;
      }
      return suYuanMapper.updateVocsName(table, id, vocsName);
      //return suYuanMapper.updateVocsName(table, id, vocsName);
      return 1;
   }
   @Override