REQ-3581: remove duplication
This commit is contained in:
parent
7ecd198a55
commit
b6e13cac83
@ -24,7 +24,6 @@ import cn.axzo.nanopart.ess.api.domain.EssOrgInfo;
|
||||
import cn.axzo.nanopart.ess.api.domain.EssSealInfo;
|
||||
import cn.axzo.nanopart.ess.api.domain.EssSealPersonInfo;
|
||||
import cn.axzo.nanopart.ess.api.domain.PersonProfileInfo;
|
||||
import cn.axzo.nanopart.ess.api.enums.EssPersonState;
|
||||
import cn.axzo.nanopart.ess.api.enums.EssSealState;
|
||||
import cn.axzo.nanopart.ess.api.request.GetOrgAuthStatesRequest;
|
||||
import cn.axzo.nanopart.ess.api.request.GetPersonAuthStateRequest;
|
||||
@ -122,20 +121,8 @@ public class QueryService {
|
||||
List<EssSealPerson> persons = new ArrayList<>(
|
||||
essSealId2Persons.getOrDefault(sealInfo.getEssSealId(), Collections.emptyList()));
|
||||
persons.sort((p1, p2) -> -Long.compare(p1.getId(), p2.getId()));
|
||||
for (EssSealPerson sealPerson : persons) {
|
||||
EssPerson essPerson = essPersons.getOrThrow(
|
||||
OuAndPersonId.create(sealPerson.getOuId(), sealPerson.getPersonId()));
|
||||
if (essPerson.getState() == EssPersonState.RESIGNED)
|
||||
continue;
|
||||
EssSealPersonInfo sealPersonInfo = BeanMapper.copyBean(sealPerson, EssSealPersonInfo.class);
|
||||
sealPersonInfo.setSuperAdmin(org.isSuperAdmin(sealPerson.getPersonId()));
|
||||
sealPersonInfo.setSealAuthorized(sealPerson.isAuthorized());
|
||||
sealPersonInfo.setPersonAuthorized(essPerson.isAuthorized());
|
||||
sealPersonInfo.setAuthorizeTimeMs(
|
||||
sealPerson.getAuthorizeTime() == null ? null : sealPerson.getAuthorizeTime().getTime());
|
||||
populatePersons(sealPerson, sealPersonInfo, personProfiles);
|
||||
sealInfo.addSealPerson(sealPersonInfo);
|
||||
}
|
||||
for (EssSealPerson sealPerson : persons)
|
||||
sealInfo.addSealPerson(createSealPersonInfo(essPersons, personProfiles, org, sealPerson));
|
||||
}
|
||||
}
|
||||
return essOrgAndSeals;
|
||||
@ -156,25 +143,21 @@ public class QueryService {
|
||||
EssOrg org = essOrgDao.findOrNull(sealPersons.get(0).getOuId());
|
||||
BizAssertions.assertNotNull(org, "org not found, ouId={}", sealPersons.get(0).getOuId());
|
||||
ArrayList<EssSealPersonInfo> sealPersonsInfo = new ArrayList<>();
|
||||
for (EssSealPerson sealPerson : sealPersons) {
|
||||
EssPerson essPerson = essPersons.getOrThrow(
|
||||
OuAndPersonId.create(sealPerson.getOuId(), sealPerson.getPersonId()));
|
||||
if (essPerson.getState() == EssPersonState.RESIGNED)
|
||||
continue;
|
||||
EssSealPersonInfo sealPersonInfo = BeanMapper.copyBean(sealPerson, EssSealPersonInfo.class);
|
||||
sealPersonInfo.setSuperAdmin(org.isSuperAdmin(sealPerson.getPersonId()));
|
||||
sealPersonInfo.setSealAuthorized(sealPerson.isAuthorized());
|
||||
sealPersonInfo.setPersonAuthorized(essPerson.isAuthorized());
|
||||
sealPersonInfo.setAuthorizeTimeMs(
|
||||
sealPerson.getAuthorizeTime() == null ? null : sealPerson.getAuthorizeTime().getTime());
|
||||
populatePersons(sealPerson, sealPersonInfo, personProfiles);
|
||||
sealPersonsInfo.add(sealPersonInfo);
|
||||
}
|
||||
for (EssSealPerson sealPerson : sealPersons)
|
||||
sealPersonsInfo.add(createSealPersonInfo(essPersons, personProfiles, org, sealPerson));
|
||||
return sealPersonsInfo;
|
||||
}
|
||||
|
||||
private void populatePersons(EssSealPerson sealPerson, EssSealPersonInfo sealPersonInfo,
|
||||
PersonProfiles personProfiles) {
|
||||
private EssSealPersonInfo createSealPersonInfo(EssPersons essPersons, PersonProfiles personProfiles, EssOrg org,
|
||||
EssSealPerson sealPerson) {
|
||||
EssPerson essPerson = essPersons.getOrThrow(
|
||||
OuAndPersonId.create(sealPerson.getOuId(), sealPerson.getPersonId()));
|
||||
EssSealPersonInfo sealPersonInfo = BeanMapper.copyBean(sealPerson, EssSealPersonInfo.class);
|
||||
sealPersonInfo.setSuperAdmin(org.isSuperAdmin(sealPerson.getPersonId()));
|
||||
sealPersonInfo.setSealAuthorized(sealPerson.isAuthorized());
|
||||
sealPersonInfo.setPersonAuthorized(essPerson.isAuthorized());
|
||||
sealPersonInfo.setAuthorizeTimeMs(
|
||||
sealPerson.getAuthorizeTime() == null ? null : sealPerson.getAuthorizeTime().getTime());
|
||||
BiConsumer<Long, PersonProfileInfo> builder = (personId, profileInfo) -> {
|
||||
PersonProfileDto profile = personProfiles.findOrNull(personId);
|
||||
if (profile == null)
|
||||
@ -185,6 +168,7 @@ public class QueryService {
|
||||
};
|
||||
builder.accept(sealPerson.getPersonId(), sealPersonInfo.getSealPerson());
|
||||
builder.accept(sealPerson.getAuthorizedByPersonId(), sealPersonInfo.getAuthorizedByPerson());
|
||||
return sealPersonInfo;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user