feat(REQ-3173): 泰州人员接口调整

This commit is contained in:
songyuanlun 2024-11-08 21:21:12 +08:00
parent 15805b0707
commit 5eb6083ce0

View File

@ -59,6 +59,9 @@ public class ThirdPartPersonController implements ThirdPartPersonApi {
if (thirdProject == null){ if (thirdProject == null){
return ApiResult.ok(ImmutableList.of()); return ApiResult.ok(ImmutableList.of());
} }
if (CollUtil.isNotEmpty(param.getPersonIds())) {
return ApiResult.ok(queryByPerson(param, thirdProject));
}
List<ThirdProjectPersonRes> result = thirdProjectPersonDao.lambdaQuery() List<ThirdProjectPersonRes> result = thirdProjectPersonDao.lambdaQuery()
.eq(ThirdProjectPerson::getThirdCode, param.getThirdCode()) .eq(ThirdProjectPerson::getThirdCode, param.getThirdCode())
.eq(ThirdProjectPerson::getThirdProjectId, param.getThirdProjectId()) .eq(ThirdProjectPerson::getThirdProjectId, param.getThirdProjectId())
@ -75,6 +78,39 @@ public class ThirdPartPersonController implements ThirdPartPersonApi {
return ApiResult.ok(result); return ApiResult.ok(result);
} }
private List<ThirdProjectPersonRes> queryByPerson(ListThirdProjectPeopleReq param, ThirdProject thirdProject) {
Map<String, ThirdPerson> thirdPersonMap = thirdPersonDao.lambdaQuery()
.eq(ThirdPerson::getThirdCode, param.getThirdCode())
.in(CollUtil.isNotEmpty(param.getThirdUniquePersonIds()),
ThirdPerson::getThirdUniquePersonId, param.getThirdUniquePersonIds())
.in(CollUtil.isNotEmpty(param.getPersonIds()), ThirdPerson::getPersonId, param.getPersonIds())
.eq(ThirdPerson::getIsDelete, TableIsDeleteEnum.NORMAL.value)
.list()
.stream()
.collect(Collectors.toMap(ThirdPerson::getThirdUniquePersonId, Function.identity()));
if (CollUtil.isEmpty(thirdPersonMap)) {
return ImmutableList.of();
}
List<ThirdProjectPersonRes> result = thirdProjectPersonDao.lambdaQuery()
.eq(ThirdProjectPerson::getThirdCode, param.getThirdCode())
.eq(ThirdProjectPerson::getThirdProjectId, param.getThirdProjectId())
.in(ThirdProjectPerson::getThirdUniquePersonId, thirdPersonMap.keySet())
.eq(ThirdProjectPerson::getIsDelete, TableIsDeleteEnum.NORMAL.value)
.list()
.stream().map(e -> {
ThirdProjectPersonRes res = BeanUtil.toBean(e, ThirdProjectPersonRes.class);
res.setWorkspaceId(thirdProject.normalizedExt().getWorkspaceId());
ThirdPerson thirdPerson = thirdPersonMap.get(e.getThirdUniquePersonId());
res.setThirdPersonRes(thirdPerson == null ? null : BeanUtil.toBean(thirdPerson, ThirdPersonRes.class));
return res;
})
.collect(Collectors.toList());
return result;
}
private void assembleThirdPersonIfNeed(List<ThirdProjectPersonRes> result, ListThirdProjectPeopleReq param) { private void assembleThirdPersonIfNeed(List<ThirdProjectPersonRes> result, ListThirdProjectPeopleReq param) {
if (result.isEmpty()) { if (result.isEmpty()) {
return; return;