| | |
| | | // 通过模板id查询员工巡检员 |
| | | List<SysUser> sysUsers = sysUserService.selectUserByTempLateId(template.getId()); |
| | | // 创建任务 |
| | | list.forEach(detail -> { |
| | | for (TTemplateDetail detail : list) { |
| | | // 计算周期 |
| | | int cycle = detail.getCycle(); |
| | | switch (detail.getCycleType()){ |
| | |
| | | int num3 = detail.getNum3(); |
| | | // 获取点位类型的占比 |
| | | String num4 = detail.getNum4(); |
| | | |
| | | if(CollectionUtils.isEmpty(sysUsers)){ |
| | | continue; |
| | | } |
| | | |
| | | SysUser sysUser = sysUsers.get(0); |
| | | List<TProjectDept> projectDeptLists = new ArrayList<>(); |
| | |
| | | } |
| | | int dayCleanerCount = cleanerSums / cycle; |
| | | |
| | | if((cycle - detail.getCurrentValue()) == 1 && cleanerSums % cycle != 0){ |
| | | dayCleanerCount++; |
| | | } |
| | | |
| | | // 获取保洁员权重 |
| | | List<String> cleanerIds = redisCache.getCacheList(detail.getId() + CLEANER_WEIGHT); |
| | | // 获取保洁员列表 |
| | |
| | | redisCache.deleteObject(detail.getId() + CLEANER_WEIGHT); |
| | | List<TCleaner> tCleaners1 = randomSelection(cleaners1, dayCleanerCount - tCleaners.size()); |
| | | List<String> cleanIds1 = tCleaners1.stream().map(TCleaner::getId).collect(Collectors.toList()); |
| | | // 将已抽取的项目部id保存到redis中 |
| | | // 将已抽取的保洁员id保存到redis中 |
| | | cleanIds1.addAll(cleanIds); |
| | | redisCache.setCacheList(detail.getId() + CLEANER_WEIGHT, cleanIds1); |
| | | tCleaners.addAll(tCleaners1); |
| | | }else { |
| | |
| | | template.setTaskCount(tasks.size()); |
| | | templateService.updateById(template); |
| | | templateDetailService.updateById(detail); |
| | | }); |
| | | |
| | | } |
| | | } |
| | | |
| | | /** |