|
@@ -654,21 +654,42 @@ public class OrderBaseLogic {
|
|
|
|
|
|
final List<WorkerTeam> teamList = workerTeamService.lambdaQuery()
|
|
|
.eq(WorkerTeam::getCompanyWechatId, orderBase.getCompanyWechatId())
|
|
|
- .eq(WorkerTeam::getMasterWorkerId, workerNumber)
|
|
|
+ .and(v -> v.eq(WorkerTeam::getMasterWorkerId, workerNumber)
|
|
|
+ .or()
|
|
|
+ .eq(WorkerTeam::getAssistantWorkerId, workerNumber))
|
|
|
.eq(WorkerTeam::getStatus, StateEnum.ON.getKey())
|
|
|
.orderByAsc(WorkerTeam::getCreateTime)
|
|
|
.list();
|
|
|
if (CollectionUtil.isNotEmpty(teamList)) {
|
|
|
+ int index = 0;
|
|
|
+ List<WorkerTeamBean> allTeamList = new ArrayList<>();
|
|
|
+ for (WorkerTeam workerTeam : teamList) {
|
|
|
+ WorkerTeamBean bean = new WorkerTeamBean();
|
|
|
+ if (workerTeam.getMasterWorkerId().equals(workerNumber)) {
|
|
|
+ bean.setWorkerNumber(workerTeam.getAssistantWorkerId());
|
|
|
+ } else {
|
|
|
+ bean.setWorkerNumber(workerTeam.getMasterWorkerId());
|
|
|
+ }
|
|
|
+
|
|
|
+ bean.setIsSelect(false);
|
|
|
+ if (index == 0 && CollectionUtil.isEmpty(allTeamList)) {
|
|
|
+ // 没有工单派工师傅并且下标为0时,默认选中
|
|
|
+ bean.setIsSelect(true);
|
|
|
+ }
|
|
|
+ allTeamList.add(bean);
|
|
|
+ index++;
|
|
|
+ }
|
|
|
+
|
|
|
final List<User> userList = userService.lambdaQuery()
|
|
|
- .in(User::getWorkerNumber, teamList.stream()
|
|
|
- .map(WorkerTeam::getAssistantWorkerId)
|
|
|
+ .in(User::getWorkerNumber, allTeamList.stream()
|
|
|
+ .map(WorkerTeamBean::getWorkerNumber)
|
|
|
.collect(Collectors.toList()))
|
|
|
.eq(User::getType, UserTypeEnum.WORKER.getKey())
|
|
|
.list();
|
|
|
final Map<String, User> userMap = userList.stream().collect(Collectors.toMap(User::getWorkerNumber, Function.identity()));
|
|
|
- int index = 0;
|
|
|
- for (WorkerTeam workerTeam : teamList) {
|
|
|
- final User user = userMap.get(workerTeam.getAssistantWorkerId());
|
|
|
+
|
|
|
+ for (WorkerTeamBean workerTeam : allTeamList) {
|
|
|
+ final User user = userMap.get(workerTeam.getWorkerNumber());
|
|
|
if (Objects.nonNull(user)) {
|
|
|
WorkerTeamBean bean = new WorkerTeamBean();
|
|
|
bean.setWorkerId(user.getUserId());
|
|
@@ -676,11 +697,7 @@ public class OrderBaseLogic {
|
|
|
bean.setWorkerNumber(user.getWorkerNumber());
|
|
|
bean.setWorkerMobile(user.getMobile());
|
|
|
bean.setWorkerIdCard(user.getIdCard());
|
|
|
- bean.setIsSelect(false);
|
|
|
- if (index == 0 && CollectionUtil.isEmpty(workerTeamMap)) {
|
|
|
- // 没有工单派工师傅并且下标为0时,默认选中
|
|
|
- bean.setIsSelect(true);
|
|
|
- }
|
|
|
+ bean.setIsSelect(bean.getIsSelect());
|
|
|
workerTeamMap.put(user.getUserId(), bean);
|
|
|
index++;
|
|
|
}
|