| | |
| | | //同步mongodb一机一档到数据库 |
| | | @Transactional |
| | | public void synchronize() { |
| | | Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); |
| | | // 获取Calendar实例,默认使用当前时区和语言环境 |
| | | Calendar calendar = Calendar.getInstance(); |
| | | // 清除Calendar中的所有字段值,以避免它们对当前日期时间有影响 |
| | | calendar.clear(); |
| | | // 设置年份、月份(注意:月份是从0开始的,所以8月是7)、日期 |
| | | calendar.set(Calendar.YEAR, 2024); |
| | | calendar.set(Calendar.MONTH, Calendar.AUGUST); |
| | | calendar.set(Calendar.DAY_OF_MONTH, 13); |
| | | // Calendar.getTime()方法返回一个表示此Calendar时间值的Date对象 |
| | | Date date = calendar.getTime(); |
| | | Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(date)).lt(DateUtils.getDayEnd(date))); |
| | | // Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date()))); |
| | | List<MonitorQualifyResult> oneMachineFileResults = mongoTemplate.find(query, MonitorQualifyResult.class); |
| | | //数据库monitor表数据 |
| | | Map<String, TMonitorVO> monitorVOMap = monitorMapper.selectMonitorVOList().stream().collect(Collectors.toMap(TMonitorVO::getSerialNumber, Function.identity())); |
| | |
| | | List<SysDictData> DictDataList = dictDataService.selectDictDataList(sysDictData); |
| | | List<String> importantSite = DictDataList.stream().map(SysDictData::getDictValue).collect(Collectors.toList()); |
| | | |
| | | //TODO:全年留存还是单次留存 |
| | | //全年留存 |
| | | for (MonitorQualifyResult result : oneMachineFileResults) { |
| | | TMonitor monitor = getMonitor(result, monitorVOMap); |
| | | YwPoint point = getPoint(result, pointMap, importantSite); |