fuliqi
2024-08-16 3aba543927fc015bfdb8fd1b844ce50a1f8dca91
ycl-server/src/main/java/com/ycl/task/MonitorTask.java
@@ -10,6 +10,7 @@
import com.ycl.platform.domain.result.UY.OneMachineFileResult;
import com.ycl.platform.domain.vo.TMonitorVO;
import com.ycl.platform.mapper.TMonitorMapper;
import com.ycl.platform.mapper.YwPointMapper;
import com.ycl.platform.service.ITMonitorService;
import com.ycl.platform.service.YwPointService;
import com.ycl.system.entity.SysDictData;
@@ -50,10 +51,12 @@
    @Autowired
    private YwPointService ywPointService;
    @Autowired
    private YwPointMapper ywPointMapper;
    @Autowired
    private RedisTemplate redisTemplate;
    //同步mongodb一机一档到数据库
    @Transactional
    @Transactional(rollbackFor = Exception.class)
    public void synchronize() {
        // 获取Calendar实例,默认使用当前时区和语言环境
        Calendar calendar = Calendar.getInstance();
@@ -82,6 +85,7 @@
        SysDictData sysDictData = new SysDictData();
        sysDictData.setDictType("platform_important_site");
        List<SysDictData> DictDataList = dictDataService.selectDictDataList(sysDictData);
        //采集区域为重点点位的集合
        List<String> importantSite = DictDataList.stream().map(SysDictData::getDictValue).collect(Collectors.toList());
        //全年留存
@@ -98,10 +102,12 @@
        log.info("result集合{},设备集合{},点位集合{}", oneMachineFileResults.size(), monitorList.size(), ywPointList.size());
        //插入数据库
        if (!CollectionUtils.isEmpty(monitorList)) {
            monitorService.saveOrUpdateBatch(monitorList);
            monitorMapper.deleteAll();
            monitorService.saveBatch(monitorList);
        }
        if (!CollectionUtils.isEmpty(ywPointList)) {
            ywPointService.saveOrUpdateBatch(ywPointList);
            ywPointMapper.deleteAll();
            ywPointService.saveBatch(ywPointList);
        }
        //新的数据放入Redis中等待考核指标任务使用
        redisTemplate.opsForValue().set(RedisConstant.New_Monitor_Set, JSONArray.toJSONString(newMonitorList));
@@ -117,11 +123,12 @@
            ywPoint.setSerialNumber(result.getSerialNumber().getValue());
            ywPoint.setImportantTag(Boolean.FALSE);
            ywPoint.setProvinceTag(Boolean.FALSE);
            ywPoint.setImportantCommandImageTag(Boolean.FALSE);
            ywPoint.setCreateTime(new Date());
            ywPoint.setUpdateTime(new Date());
        }
        //比对是否是重点点位
        if (importantSite.contains(result.getSerialNumber().getValue())) {
        if (importantSite.contains(result.getSxjcjqy().getValue())) {
            ywPoint.setImportantTag(Boolean.TRUE);
        }
        //解析deptId