| | |
| | | |
| | | // 每一个小时执行一次 |
| | | // @Scheduled(cron = "0 0 0 * * ?") |
| | | // @Scheduled(fixedRate = 1500000000) |
| | | @Scheduled(fixedRate = 1500000000) |
| | | public void dayOfCreateInspection() { |
| | | try { |
| | | |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | tLocationList = tLocationList.stream().distinct().collect(Collectors.toList()); |
| | | // 抽取重复点位 |
| | | Integer currentValue = detail.getCurrentValue(); |
| | | if(currentValue != cycle){ |
| | | // 周期天数加一 |
| | | detail.setCurrentValue(currentValue + 1); |
| | | // 获取重复点位 |
| | | Set<TLocation> repeatLocation = redisCache.getCacheSet(detail.getId() + REPEAT_LOCATION); |
| | | Set<TLocation> repeatLocation = redisCache.getCacheSet(detail.getId() + ":" + sysUser.getUserId() + REPEAT_LOCATION); |
| | | if(!CollectionUtils.isEmpty(repeatLocation)){ |
| | | List<TLocation> locations = randomSelection(new ArrayList<>(tLocationList), num3); |
| | | tLocationList.addAll(locations); |
| | | } |
| | | Set<TLocation> locationSet = new HashSet<>(tLocationList); |
| | | redisCache.setCacheSet(detail.getId() + REPEAT_LOCATION, locationSet); |
| | | redisCache.setCacheSet(detail.getId() + ":" + sysUser.getUserId() + REPEAT_LOCATION, locationSet); |
| | | |
| | | }else { |
| | | // 设置当前周期为0 |
| | | detail.setCurrentValue(0); |
| | | // 将重复点位置空 |
| | | redisCache.deleteObject(detail.getId() + REPEAT_LOCATION); |
| | | redisCache.deleteObject(detail.getId() + ":" + sysUser.getUserId() + REPEAT_LOCATION); |
| | | // 将项目部权重置空 |
| | | redisCache.deleteObject(detail.getId() + PROJECT_DEPT_WEIGHT); |
| | | // 将保洁员权重置空 |