获取组织机构审批人绑定列表修改(当该机构未配置审批人时也返回审批人类型的列表)

pull/57/head
Liyanjun 2023-06-28 23:11:06 +08:00
parent c1ca7bda9c
commit d6b0b2ccc2
1 changed files with 16 additions and 11 deletions

View File

@ -22,6 +22,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
@ -61,13 +62,14 @@ public class HrOrgApproverServiceImpl extends ServiceImpl<HrOrgApproverMapper, H
LambdaQueryWrapper<HrOrgApprover> hrOrgApproverLambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<HrOrgApprover> hrOrgApproverLambdaQueryWrapper = new LambdaQueryWrapper<>();
hrOrgApproverLambdaQueryWrapper.eq(HrOrgApprover::getOrgId, hrOrgApproverRequest.getOrgId()); hrOrgApproverLambdaQueryWrapper.eq(HrOrgApprover::getOrgId, hrOrgApproverRequest.getOrgId());
List<HrOrgApprover> orgTotalBindingList = this.list(hrOrgApproverLambdaQueryWrapper); List<HrOrgApprover> orgTotalBindingList = this.list(hrOrgApproverLambdaQueryWrapper);
if (ObjectUtil.isEmpty(orgTotalBindingList)) {
return new ArrayList<>();
}
// 将每个类型的用户分组key是审批组类型value是该组下的用户 // 将每个类型的用户分组key是审批组类型value是该组下的用户
Map<Integer, List<HrOrgApprover>> groupingByUsers = orgTotalBindingList.stream() Map<Integer, List<HrOrgApprover>> groupingByUsers=new HashMap<>();
if (ObjectUtil.isNotEmpty(orgTotalBindingList)) {
groupingByUsers = orgTotalBindingList.stream()
.collect(Collectors.groupingBy(HrOrgApprover::getOrgApproverType)); .collect(Collectors.groupingBy(HrOrgApprover::getOrgApproverType));
}
// 先初始化空的绑定情况列表 // 先初始化空的绑定情况列表
ArrayList<HrOrgApprover> resultList = new ArrayList<>(); ArrayList<HrOrgApprover> resultList = new ArrayList<>();
@ -77,12 +79,15 @@ public class HrOrgApproverServiceImpl extends ServiceImpl<HrOrgApproverMapper, H
// 设置类型 // 设置类型
hrOrgApprover.setOrgApproverType(Convert.toInt(orgApproverType.getCode())); hrOrgApprover.setOrgApproverType(Convert.toInt(orgApproverType.getCode()));
if (ObjectUtil.isNotEmpty(orgTotalBindingList)) {
// 设置该类型下的审批人列表 // 设置该类型下的审批人列表
List<HrOrgApprover> userList = groupingByUsers.get(hrOrgApprover.getOrgApproverType()); List<HrOrgApprover> userList = groupingByUsers.get(hrOrgApprover.getOrgApproverType());
if (ObjectUtil.isNotEmpty(userList)) { if (ObjectUtil.isNotEmpty(userList)) {
List<ApproverBindUserItem> bindUserItems = OrgApproverFactory.convertUserItem(userList); List<ApproverBindUserItem> bindUserItems = OrgApproverFactory.convertUserItem(userList);
hrOrgApprover.setBindUserItemList(bindUserItems); hrOrgApprover.setBindUserItemList(bindUserItems);
} }
}
resultList.add(hrOrgApprover); resultList.add(hrOrgApprover);
} }