| | |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.time.LocalDate; |
| | | import java.util.*; |
| | | import java.util.function.Function; |
| | | import java.util.stream.Collectors; |
| | |
| | | BigDecimal cityCountAvg = getAverageCount(CheckSnapCountConstants.City); |
| | | BigDecimal countyCountAvg = getAverageCount(CheckSnapCountConstants.County); |
| | | |
| | | // 查询今日数据 |
| | | // 查询是否index表已经存在今日数据 |
| | | List<CheckIndexCar> checkIndexCarList = checkIndexCarMapper.selectToday(DateUtils.getDate()); |
| | | List<CheckIndexCar> checkIndexCars = new ArrayList<>(); |
| | | areaStatsMap.forEach((deptId, stats) -> { |
| | |
| | | checkIndexCarService.saveOrUpdateBatch(checkIndexCars); |
| | | } |
| | | |
| | | //累计总点位数、离线数、总抓拍量 |
| | | /** 累计总点位数、离线数、总抓拍量 */ |
| | | private void updateAreaStats(Map<String, AreaStats> areaStatsMap, String key, SnapshotDataMonitorResult result) { |
| | | //返回对象的引用,如果不存在会放入新的key,value |
| | | AreaStats stats = areaStatsMap.computeIfAbsent(key, k -> new AreaStats()); |
| | |
| | | } |
| | | } |
| | | |
| | | //获取2022同期抓拍平均值 |
| | | /** 获取2022同期抓拍平均值 */ |
| | | private BigDecimal getAverageCount(String configKey) { |
| | | String count = sysConfigMapper.checkConfigKeyUnique(configKey).getConfigValue(); |
| | | return new BigDecimal(count).multiply(new BigDecimal(CheckSnapCountConstants.Multiply)) |
| | | .divide(new BigDecimal(CheckSnapCountConstants.CountyNum), 0, RoundingMode.HALF_UP); |
| | | return new BigDecimal(count) |
| | | .multiply(new BigDecimal(CheckSnapCountConstants.Multiply)) |
| | | .divide(new BigDecimal(CheckSnapCountConstants.CountyNum), 10, RoundingMode.HALF_UP) |
| | | .divide(new BigDecimal(LocalDate.now().getDayOfMonth()), 0, RoundingMode.HALF_UP); |
| | | } |
| | | |
| | | //车辆点位在线率和视图库对接稳定性 |
| | | /** 车辆点位在线率和视图库对接稳定性 */ |
| | | private CheckIndexCar createOrUpdateCheckIndexCar(String key, AreaStats stats, BigDecimal cityCountAvg, BigDecimal countyCountAvg, List<CheckIndexCar> checkIndexCarList) { |
| | | CheckIndexCar checkIndexCar; |
| | | |
| | |
| | | checkIndexCar.setViewConnectStability(viewConnectStability); |
| | | return checkIndexCar; |
| | | } |
| | | |
| | | |
| | | } |