|
|
|
@ -51,8 +51,6 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
|
|
|
|
|
|
|
|
private final RiskModelTaskClueService riskModelTaskClueService; |
|
|
|
private final RiskModelTaskClueService riskModelTaskClueService; |
|
|
|
|
|
|
|
|
|
|
|
private final RiskModelTaskClueRepository clueRepository; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private final SupExternalDepartRepository externalDepartRepository; |
|
|
|
private final SupExternalDepartRepository externalDepartRepository; |
|
|
|
|
|
|
|
|
|
|
|
private final GBaseZDRYRepository zdryRepository; |
|
|
|
private final GBaseZDRYRepository zdryRepository; |
|
|
|
@ -60,8 +58,8 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public void personPullAndSave(LocalDateTime start, LocalDateTime end) { |
|
|
|
public void personPullAndSave(LocalDateTime start, LocalDateTime end) { |
|
|
|
List<RiskPersonal> personals1 = new ArrayList<>(); |
|
|
|
List<RiskPersonal> personals1 = new ArrayList<>(); |
|
|
|
List<RiskPersonal> personals2= new ArrayList<>(); |
|
|
|
List<RiskPersonal> personals2 = new ArrayList<>(); |
|
|
|
List<RiskPersonal> personals3= new ArrayList<>(); |
|
|
|
List<RiskPersonal> personals3 = new ArrayList<>(); |
|
|
|
List<String> idCards = new ArrayList<>(); |
|
|
|
List<String> idCards = new ArrayList<>(); |
|
|
|
List<String> idCards_b = new ArrayList<>(); |
|
|
|
List<String> idCards_b = new ArrayList<>(); |
|
|
|
List<String> mobiles = new ArrayList<>(); |
|
|
|
List<String> mobiles = new ArrayList<>(); |
|
|
|
@ -82,7 +80,7 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
CompletableFuture.allOf( |
|
|
|
CompletableFuture.allOf( |
|
|
|
CompletableFutureUtil.runSyncObject(() -> { |
|
|
|
CompletableFutureUtil.runSyncObject(() -> { |
|
|
|
List<DataPetition12337> list = petition12337Repository.list(new LambdaQueryWrapper<DataPetition12337>() |
|
|
|
List<DataPetition12337> list = petition12337Repository.list(new LambdaQueryWrapper<DataPetition12337>() |
|
|
|
.select(DataPetition12337::getName, DataPetition12337::getIdCode, DataPetition12337::getPhone,DataPetition12337::getThirdDepartId, DataPetition12337::getThirdDepartName, DataPetition12337::getDiscoverTime).between(DataPetition12337::getDiscoverTime, start, end) |
|
|
|
.select(DataPetition12337::getName, DataPetition12337::getIdCode, DataPetition12337::getPhone, DataPetition12337::getThirdDepartId, DataPetition12337::getThirdDepartName, DataPetition12337::getDiscoverTime).between(DataPetition12337::getDiscoverTime, start, end) |
|
|
|
.isNotNull(DataPetition12337::getIdCode)); |
|
|
|
.isNotNull(DataPetition12337::getIdCode)); |
|
|
|
for (DataPetition12337 data : list) { |
|
|
|
for (DataPetition12337 data : list) { |
|
|
|
RiskPersonal person = new RiskPersonal(); |
|
|
|
RiskPersonal person = new RiskPersonal(); |
|
|
|
@ -90,7 +88,7 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
person.setName(data.getName()); |
|
|
|
person.setName(data.getName()); |
|
|
|
person.setMobileNumber(data.getPhone()); |
|
|
|
person.setMobileNumber(data.getPhone()); |
|
|
|
person.setTags(Default.PETITION_12337_TAG); |
|
|
|
person.setTags(Default.PETITION_12337_TAG); |
|
|
|
if(data.getThirdDepartId() != null) { |
|
|
|
if (data.getThirdDepartId() != null) { |
|
|
|
person.setControlDepartId(data.getThirdDepartId()); |
|
|
|
person.setControlDepartId(data.getThirdDepartId()); |
|
|
|
person.setControlDepartName(data.getThirdDepartName()); |
|
|
|
person.setControlDepartName(data.getThirdDepartName()); |
|
|
|
person.setControlTime(data.getDiscoverTime()); |
|
|
|
person.setControlTime(data.getDiscoverTime()); |
|
|
|
@ -102,7 +100,7 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
}), |
|
|
|
}), |
|
|
|
CompletableFutureUtil.runSyncObject(() -> { |
|
|
|
CompletableFutureUtil.runSyncObject(() -> { |
|
|
|
List<DataPetitionComplaint> list = complaintRepository.list(new LambdaQueryWrapper<DataPetitionComplaint>() |
|
|
|
List<DataPetitionComplaint> list = complaintRepository.list(new LambdaQueryWrapper<DataPetitionComplaint>() |
|
|
|
.select(DataPetitionComplaint::getResponderName, DataPetitionComplaint::getResponderPhone, DataPetitionComplaint::getResponderName,DataPetitionComplaint::getThirdDepartId, DataPetitionComplaint::getThirdDepartName, DataPetitionComplaint::getDiscoveryTime).between(DataPetitionComplaint::getResponderIdCode, start, end) |
|
|
|
.select(DataPetitionComplaint::getResponderName, DataPetitionComplaint::getResponderPhone, DataPetitionComplaint::getResponderName, DataPetitionComplaint::getThirdDepartId, DataPetitionComplaint::getThirdDepartName, DataPetitionComplaint::getDiscoveryTime).between(DataPetitionComplaint::getResponderIdCode, start, end) |
|
|
|
.isNotNull(DataPetitionComplaint::getResponderIdCode)); |
|
|
|
.isNotNull(DataPetitionComplaint::getResponderIdCode)); |
|
|
|
for (DataPetitionComplaint data : list) { |
|
|
|
for (DataPetitionComplaint data : list) { |
|
|
|
RiskPersonal person = new RiskPersonal(); |
|
|
|
RiskPersonal person = new RiskPersonal(); |
|
|
|
@ -110,7 +108,7 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
person.setName(data.getResponderName()); |
|
|
|
person.setName(data.getResponderName()); |
|
|
|
person.setMobileNumber(data.getResponderPhone()); |
|
|
|
person.setMobileNumber(data.getResponderPhone()); |
|
|
|
person.setTags(Default.PETITION_TAG); |
|
|
|
person.setTags(Default.PETITION_TAG); |
|
|
|
if(data.getThirdDepartId() != null) { |
|
|
|
if (data.getThirdDepartId() != null) { |
|
|
|
person.setControlDepartId(data.getThirdDepartId()); |
|
|
|
person.setControlDepartId(data.getThirdDepartId()); |
|
|
|
person.setControlDepartName(data.getThirdDepartName()); |
|
|
|
person.setControlDepartName(data.getThirdDepartName()); |
|
|
|
person.setControlTime(data.getDiscoveryTime()); |
|
|
|
person.setControlTime(data.getDiscoveryTime()); |
|
|
|
@ -122,14 +120,14 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
}), |
|
|
|
}), |
|
|
|
CompletableFutureUtil.runSyncObject(() -> { |
|
|
|
CompletableFutureUtil.runSyncObject(() -> { |
|
|
|
List<DataCaseVerif> list = dataCaseVerifRepository.list(new LambdaQueryWrapper<DataCaseVerif>() |
|
|
|
List<DataCaseVerif> list = dataCaseVerifRepository.list(new LambdaQueryWrapper<DataCaseVerif>() |
|
|
|
.select(DataCaseVerif::getResponderName, DataCaseVerif::getResponderPhone,DataCaseVerif::getThirdDepartId, DataCaseVerif::getThirdDepartName, DataCaseVerif::getDiscoveryTime).between(DataCaseVerif::getDiscoveryTime, start, end) |
|
|
|
.select(DataCaseVerif::getResponderName, DataCaseVerif::getResponderPhone, DataCaseVerif::getThirdDepartId, DataCaseVerif::getThirdDepartName, DataCaseVerif::getDiscoveryTime).between(DataCaseVerif::getDiscoveryTime, start, end) |
|
|
|
.isNotNull(DataCaseVerif::getResponderPhone)); |
|
|
|
.isNotNull(DataCaseVerif::getResponderPhone)); |
|
|
|
for (DataCaseVerif data : list) { |
|
|
|
for (DataCaseVerif data : list) { |
|
|
|
RiskPersonal person = new RiskPersonal(); |
|
|
|
RiskPersonal person = new RiskPersonal(); |
|
|
|
person.setName(data.getResponderName()); |
|
|
|
person.setName(data.getResponderName()); |
|
|
|
person.setMobileNumber(data.getResponderPhone()); |
|
|
|
person.setMobileNumber(data.getResponderPhone()); |
|
|
|
person.setTags(Default.PETITION_CASE_TAG); |
|
|
|
person.setTags(Default.PETITION_CASE_TAG); |
|
|
|
if(data.getThirdDepartId() != null) { |
|
|
|
if (data.getThirdDepartId() != null) { |
|
|
|
person.setControlDepartId(data.getThirdDepartId()); |
|
|
|
person.setControlDepartId(data.getThirdDepartId()); |
|
|
|
person.setControlDepartName(data.getThirdDepartName()); |
|
|
|
person.setControlDepartName(data.getThirdDepartName()); |
|
|
|
person.setControlTime(data.getDiscoveryTime()); |
|
|
|
person.setControlTime(data.getDiscoveryTime()); |
|
|
|
@ -140,7 +138,7 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
}) |
|
|
|
).join(); |
|
|
|
).join(); |
|
|
|
log.info("{} | {} | {}",idCards.size(), idCards_b.size(), mobiles.size()); |
|
|
|
log.info("{} | {} | {}", idCards.size(), idCards_b.size(), mobiles.size()); |
|
|
|
idCards.addAll(idCards_b); |
|
|
|
idCards.addAll(idCards_b); |
|
|
|
List<String> idCards2 = idCards.stream().distinct().toList(); |
|
|
|
List<String> idCards2 = idCards.stream().distinct().toList(); |
|
|
|
List<String> mobiles2 = mobiles.stream().distinct().toList(); |
|
|
|
List<String> mobiles2 = mobiles.stream().distinct().toList(); |
|
|
|
@ -184,29 +182,29 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
List<RiskPersonal> toInsert = new ArrayList<>(); |
|
|
|
List<RiskPersonal> toInsert = new ArrayList<>(); |
|
|
|
for (RiskPersonal personal : personals1) { |
|
|
|
for (RiskPersonal personal : personals1) { |
|
|
|
GBaseSYRKXX xx = map.get(personal.getIdCode()); |
|
|
|
GBaseSYRKXX xx = map.get(personal.getIdCode()); |
|
|
|
if(xx == null) { |
|
|
|
if (xx == null) { |
|
|
|
personal = checkPerson(personal); |
|
|
|
personal = checkPerson(personal); |
|
|
|
if(personal != null) { |
|
|
|
if (personal != null) { |
|
|
|
toInsert.add(personal); |
|
|
|
toInsert.add(personal); |
|
|
|
} |
|
|
|
} |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
personal.setGender(IdCodeUtil.idCard2Gender(personal.getIdCode())); |
|
|
|
personal.setGender(IdCodeUtil.idCard2Gender(personal.getIdCode())); |
|
|
|
if(personal == null) { |
|
|
|
if (personal.getGender() == null) { |
|
|
|
personal.setGender(xx.getXbdm()); |
|
|
|
personal.setGender(xx.getXbdm()); |
|
|
|
} |
|
|
|
} |
|
|
|
if(xx.getLxdh() != null) { |
|
|
|
if (xx.getLxdh() != null) { |
|
|
|
personal.setMobileNumber(xx.getLxdh()); |
|
|
|
personal.setMobileNumber(xx.getLxdh()); |
|
|
|
} |
|
|
|
} |
|
|
|
personal.setName(xx.getXm()); |
|
|
|
personal.setName(xx.getXm()); |
|
|
|
personal.setAge(Optional.ofNullable(IdCodeUtil.idCard2Age(personal.getIdCode(), LocalDate.now())).orElse(-1)); |
|
|
|
personal.setAge(Optional.ofNullable(IdCodeUtil.idCard2Age(personal.getIdCode(), LocalDate.now())).orElse(-1)); |
|
|
|
if(personal.getAge() <= 6) { |
|
|
|
if (personal.getAge() <= 6) { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
if(xx.getSspcsdm()!= null) { |
|
|
|
if (xx.getSspcsdm() != null) { |
|
|
|
PointOrg org = orgCodeMap.get(xx.getSspcsdm()); |
|
|
|
PointOrg org = orgCodeMap.get(xx.getSspcsdm()); |
|
|
|
org = findOrg(org, orgIdMap); |
|
|
|
org = findOrg(org, orgIdMap); |
|
|
|
SupExternalDepart depart = Optional.ofNullable(org).map(PointOrg::getDm).map(item -> jqExternalDepart.get(item)).orElse(null); |
|
|
|
SupExternalDepart depart = Optional.ofNullable(org).map(PointOrg::getDm).map(jqExternalDepart::get).orElse(null); |
|
|
|
if (depart != null) { |
|
|
|
if (depart != null) { |
|
|
|
personal.setControlDepartId(depart.getInternalId()); |
|
|
|
personal.setControlDepartId(depart.getInternalId()); |
|
|
|
personal.setControlDepartName(depart.getInternalName()); |
|
|
|
personal.setControlDepartName(depart.getInternalName()); |
|
|
|
@ -218,26 +216,26 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
} |
|
|
|
} |
|
|
|
for (RiskPersonal personal : personals2) { |
|
|
|
for (RiskPersonal personal : personals2) { |
|
|
|
GBaseSYRKXX xx = map.get(personal.getIdCode()); |
|
|
|
GBaseSYRKXX xx = map.get(personal.getIdCode()); |
|
|
|
if(xx == null) { |
|
|
|
if (xx == null) { |
|
|
|
personal = checkPerson(personal); |
|
|
|
personal = checkPerson(personal); |
|
|
|
if(personal != null) { |
|
|
|
if (personal != null) { |
|
|
|
toInsert.add(personal); |
|
|
|
toInsert.add(personal); |
|
|
|
} |
|
|
|
} |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
personal.setGender(xx.getXbdm()); |
|
|
|
personal.setGender(xx.getXbdm()); |
|
|
|
if(xx.getLxdh() != null) { |
|
|
|
if (xx.getLxdh() != null) { |
|
|
|
personal.setMobileNumber(xx.getLxdh()); |
|
|
|
personal.setMobileNumber(xx.getLxdh()); |
|
|
|
} |
|
|
|
} |
|
|
|
personal.setName(xx.getXm()); |
|
|
|
personal.setName(xx.getXm()); |
|
|
|
personal.setAge(Optional.ofNullable(IdCodeUtil.idCard2Age(personal.getIdCode(), LocalDate.now())).orElse(-1)); |
|
|
|
personal.setAge(Optional.ofNullable(IdCodeUtil.idCard2Age(personal.getIdCode(), LocalDate.now())).orElse(-1)); |
|
|
|
if(personal.getAge() <= 6) { |
|
|
|
if (personal.getAge() <= 6) { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
if(xx.getSspcsdm()!= null) { |
|
|
|
if (xx.getSspcsdm() != null) { |
|
|
|
PointOrg org = orgCodeMap.get(xx.getSspcsdm()); |
|
|
|
PointOrg org = orgCodeMap.get(xx.getSspcsdm()); |
|
|
|
org = findOrg(org, orgIdMap); |
|
|
|
org = findOrg(org, orgIdMap); |
|
|
|
SupExternalDepart depart = Optional.ofNullable(org).map(PointOrg::getDm).map(item -> jqExternalDepart.get(item)).orElse(null); |
|
|
|
SupExternalDepart depart = Optional.ofNullable(org).map(PointOrg::getDm).map(jqExternalDepart::get).orElse(null); |
|
|
|
if (depart != null) { |
|
|
|
if (depart != null) { |
|
|
|
personal.setControlDepartId(depart.getInternalId()); |
|
|
|
personal.setControlDepartId(depart.getInternalId()); |
|
|
|
personal.setControlDepartName(depart.getInternalName()); |
|
|
|
personal.setControlDepartName(depart.getInternalName()); |
|
|
|
@ -249,32 +247,32 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
} |
|
|
|
} |
|
|
|
for (RiskPersonal personal : personals3) { |
|
|
|
for (RiskPersonal personal : personals3) { |
|
|
|
List<GBaseSYRKXX> xx = mobileMap.get(personal.getMobileNumber()); |
|
|
|
List<GBaseSYRKXX> xx = mobileMap.get(personal.getMobileNumber()); |
|
|
|
if(xx == null) { |
|
|
|
if (xx == null) { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
GBaseSYRKXX info = null; |
|
|
|
GBaseSYRKXX info; |
|
|
|
if(xx.size() ==1) { |
|
|
|
if (xx.size() == 1) { |
|
|
|
info = xx.getFirst(); |
|
|
|
info = xx.getFirst(); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
info = compare(xx, personal.getName()); |
|
|
|
info = compare(xx, personal.getName()); |
|
|
|
} |
|
|
|
} |
|
|
|
if(info == null) { |
|
|
|
if (info == null) { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
personal.setIdCode(info.getGmsfhm()); |
|
|
|
personal.setIdCode(info.getGmsfhm()); |
|
|
|
personal.setGender(info.getXbdm()); |
|
|
|
personal.setGender(info.getXbdm()); |
|
|
|
if(info.getLxdh() != null) { |
|
|
|
if (info.getLxdh() != null) { |
|
|
|
personal.setMobileNumber(info.getLxdh()); |
|
|
|
personal.setMobileNumber(info.getLxdh()); |
|
|
|
} |
|
|
|
} |
|
|
|
personal.setName(info.getXm()); |
|
|
|
personal.setName(info.getXm()); |
|
|
|
personal.setAge(Optional.ofNullable(IdCodeUtil.idCard2Age(personal.getIdCode(), LocalDate.now())).orElse(-1)); |
|
|
|
personal.setAge(Optional.ofNullable(IdCodeUtil.idCard2Age(personal.getIdCode(), LocalDate.now())).orElse(-1)); |
|
|
|
if(personal.getAge() <= 6) { |
|
|
|
if (personal.getAge() <= 6) { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
if(info.getSspcsdm()!= null) { |
|
|
|
if (info.getSspcsdm() != null) { |
|
|
|
PointOrg org = orgCodeMap.get(info.getSspcsdm()); |
|
|
|
PointOrg org = orgCodeMap.get(info.getSspcsdm()); |
|
|
|
org = findOrg(org, orgIdMap); |
|
|
|
org = findOrg(org, orgIdMap); |
|
|
|
SupExternalDepart depart = Optional.ofNullable(org).map(PointOrg::getDm).map(item -> jqExternalDepart.get(item)).orElse(null); |
|
|
|
SupExternalDepart depart = Optional.ofNullable(org).map(PointOrg::getDm).map(jqExternalDepart::get).orElse(null); |
|
|
|
if (depart != null) { |
|
|
|
if (depart != null) { |
|
|
|
personal.setControlDepartId(depart.getInternalId()); |
|
|
|
personal.setControlDepartId(depart.getInternalId()); |
|
|
|
personal.setControlDepartName(depart.getInternalName()); |
|
|
|
personal.setControlDepartName(depart.getInternalName()); |
|
|
|
@ -298,14 +296,14 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
List<DataPetition12337> pList1 = new ArrayList<>(); |
|
|
|
List<DataPetition12337> pList1 = new ArrayList<>(); |
|
|
|
for (List<String> idCard : domain.getIdCards()) { |
|
|
|
for (List<String> idCard : domain.getIdCards()) { |
|
|
|
pList1.addAll(petition12337Repository.list(new LambdaQueryWrapper<DataPetition12337>() |
|
|
|
pList1.addAll(petition12337Repository.list(new LambdaQueryWrapper<DataPetition12337>() |
|
|
|
.select(DataPetition12337::getOnlyId, DataPetition12337::getName, DataPetition12337::getIdCode, DataPetition12337::getPhone,DataPetition12337::getThirdDepartId, DataPetition12337::getThirdDepartName, DataPetition12337::getDiscoverTime, DataPetition12337::getReviewDes).ge(DataPetition12337::getDiscoverTime, time) |
|
|
|
.select(DataPetition12337::getOnlyId, DataPetition12337::getName, DataPetition12337::getIdCode, DataPetition12337::getPhone, DataPetition12337::getThirdDepartId, DataPetition12337::getThirdDepartName, DataPetition12337::getDiscoverTime, DataPetition12337::getReviewDes).ge(DataPetition12337::getDiscoverTime, time) |
|
|
|
.in(DataPetition12337::getIdCode, idCard))); |
|
|
|
.in(DataPetition12337::getIdCode, idCard))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
List<DataPetitionComplaint> pList2 = new ArrayList<>(); |
|
|
|
List<DataPetitionComplaint> pList2 = new ArrayList<>(); |
|
|
|
for (List<String> idCard : domain.getIdCards()) { |
|
|
|
for (List<String> idCard : domain.getIdCards()) { |
|
|
|
pList2.addAll(complaintRepository.list(new LambdaQueryWrapper<DataPetitionComplaint>() |
|
|
|
pList2.addAll(complaintRepository.list(new LambdaQueryWrapper<DataPetitionComplaint>() |
|
|
|
.select(DataPetitionComplaint::getOriginId, DataPetitionComplaint::getResponderName, DataPetitionComplaint::getResponderPhone, DataPetitionComplaint::getResponderName,DataPetitionComplaint::getThirdDepartId, DataPetitionComplaint::getThirdDepartName, DataPetitionComplaint::getDiscoveryTime, DataPetitionComplaint::getThingDesc).ge(DataPetitionComplaint::getDiscoveryTime, time) |
|
|
|
.select(DataPetitionComplaint::getOriginId, DataPetitionComplaint::getResponderName, DataPetitionComplaint::getResponderPhone, DataPetitionComplaint::getResponderName, DataPetitionComplaint::getThirdDepartId, DataPetitionComplaint::getThirdDepartName, DataPetitionComplaint::getDiscoveryTime, DataPetitionComplaint::getThingDesc).ge(DataPetitionComplaint::getDiscoveryTime, time) |
|
|
|
.in(DataPetitionComplaint::getResponderPhone, idCard))); |
|
|
|
.in(DataPetitionComplaint::getResponderPhone, idCard))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -316,21 +314,27 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
.toList(); |
|
|
|
.toList(); |
|
|
|
for (List<String> mobile : doubleMobile) { |
|
|
|
for (List<String> mobile : doubleMobile) { |
|
|
|
pList3.addAll(dataCaseVerifRepository.list(new LambdaQueryWrapper<DataCaseVerif>() |
|
|
|
pList3.addAll(dataCaseVerifRepository.list(new LambdaQueryWrapper<DataCaseVerif>() |
|
|
|
.select(DataCaseVerif::getOriginId, DataCaseVerif::getResponderName, DataCaseVerif::getResponderPhone,DataCaseVerif::getThirdDepartId, DataCaseVerif::getThirdDepartName, DataCaseVerif::getDiscoveryTime, DataCaseVerif::getThingDesc).ge(DataCaseVerif::getDiscoveryTime, time) |
|
|
|
.select(DataCaseVerif::getOriginId, DataCaseVerif::getResponderName, DataCaseVerif::getResponderPhone, DataCaseVerif::getThirdDepartId, DataCaseVerif::getThirdDepartName, DataCaseVerif::getDiscoveryTime, DataCaseVerif::getThingDesc).ge(DataCaseVerif::getDiscoveryTime, time) |
|
|
|
.in(DataCaseVerif::getResponderPhone, mobile))); |
|
|
|
.in(DataCaseVerif::getResponderPhone, mobile))); |
|
|
|
} |
|
|
|
} |
|
|
|
// 先搞定这个电话号码的
|
|
|
|
// 先搞定这个电话号码的
|
|
|
|
Map<String, List<RiskPersonal>> man = domain.getPersons().stream().filter(item -> item.getMobileNumber() != null).collect(Collectors.groupingBy(RiskPersonal::getMobileNumber)); |
|
|
|
Map<String, List<RiskPersonal>> man = domain.getPersons().stream().filter(item -> item.getMobileNumber() != null).collect(Collectors.groupingBy(RiskPersonal::getMobileNumber)); |
|
|
|
Map<String, RiskPersonal> idCodeMan = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (oldValue, newValue) -> newValue)); |
|
|
|
Map<String, RiskPersonal> idCodeMan = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (oldValue, newValue) -> newValue)); |
|
|
|
|
|
|
|
|
|
|
|
List<ClueData> data = new ArrayList<>(); |
|
|
|
List<RiskModelTaskClue> oldList = Optional.ofNullable(domain.getMap().get(task.getModelId())).orElse(new ArrayList<>()); |
|
|
|
|
|
|
|
Map<String, RiskModelTaskClue> oldMap = oldList.stream().collect(Collectors.toMap(RiskModelTaskClue::getCaseIds, Function.identity(), (val, old) -> val)); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<RiskModelTaskClue> toInsert = new ArrayList<>(); |
|
|
|
for (DataCaseVerif dataCaseVerif : pList3) { |
|
|
|
for (DataCaseVerif dataCaseVerif : pList3) { |
|
|
|
|
|
|
|
if (oldMap.get(BhUtil.petBh(dataCaseVerif.getOriginId())) != null) { |
|
|
|
|
|
|
|
continue; |
|
|
|
|
|
|
|
} |
|
|
|
List<RiskPersonal> list = man.get(dataCaseVerif.getResponderPhone()); |
|
|
|
List<RiskPersonal> list = man.get(dataCaseVerif.getResponderPhone()); |
|
|
|
RiskPersonal person = comparePerson(list, dataCaseVerif.getResponderName()); |
|
|
|
RiskPersonal person = comparePerson(list, dataCaseVerif.getResponderName()); |
|
|
|
if(person == null) { |
|
|
|
if (person == null) { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
data.add(ClueData.builder() |
|
|
|
toInsert.add(createClue(task.getModelId(), 5, task.getId(), ClueData.builder() |
|
|
|
.id(dataCaseVerif.getOriginId()) |
|
|
|
.id(dataCaseVerif.getOriginId()) |
|
|
|
.tag(Default.PETITION_CASE_TAG) |
|
|
|
.tag(Default.PETITION_CASE_TAG) |
|
|
|
.personId(person.getId()) |
|
|
|
.personId(person.getId()) |
|
|
|
@ -339,16 +343,19 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
.eventTime(dataCaseVerif.getDiscoveryTime()) |
|
|
|
.eventTime(dataCaseVerif.getDiscoveryTime()) |
|
|
|
.idCode(person.getIdCode()) |
|
|
|
.idCode(person.getIdCode()) |
|
|
|
.name(person.getName()) |
|
|
|
.name(person.getName()) |
|
|
|
.sourceData("该人员在近12个月内有诉求不满或长期未化解的情况,增加风险分5分,具体情况为:"+dataCaseVerif.getThingDesc()) |
|
|
|
.sourceData("该人员在近12个月内有诉求不满或长期未化解的情况,增加风险分5分,具体情况为:" + dataCaseVerif.getThingDesc()) |
|
|
|
.build()); |
|
|
|
.build())); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
for (DataPetition12337 item : pList1) { |
|
|
|
for (DataPetition12337 item : pList1) { |
|
|
|
|
|
|
|
if (oldMap.get(BhUtil.petBh(item.getOnlyId())) != null) { |
|
|
|
|
|
|
|
continue; |
|
|
|
|
|
|
|
} |
|
|
|
RiskPersonal person = idCodeMan.get(item.getIdCode()); |
|
|
|
RiskPersonal person = idCodeMan.get(item.getIdCode()); |
|
|
|
if(person == null) { |
|
|
|
if (person == null) { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
data.add(ClueData.builder() |
|
|
|
toInsert.add(createClue(task.getModelId(), 5, task.getId(), ClueData.builder() |
|
|
|
.id(item.getOnlyId()) |
|
|
|
.id(item.getOnlyId()) |
|
|
|
.tag(Default.PETITION_12337_TAG) |
|
|
|
.tag(Default.PETITION_12337_TAG) |
|
|
|
.personId(person.getId()) |
|
|
|
.personId(person.getId()) |
|
|
|
@ -357,16 +364,19 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
.eventTime(item.getDiscoverTime()) |
|
|
|
.eventTime(item.getDiscoverTime()) |
|
|
|
.idCode(person.getIdCode()) |
|
|
|
.idCode(person.getIdCode()) |
|
|
|
.name(person.getName()) |
|
|
|
.name(person.getName()) |
|
|
|
.sourceData("该人员在近12个月内有诉求不满或长期未化解的情况,增加风险分5分,具体情况为:"+item.getReviewDes()) |
|
|
|
.sourceData("该人员在近12个月内有诉求不满或长期未化解的情况,增加风险分5分,具体情况为:" + item.getReviewDes()) |
|
|
|
.build()); |
|
|
|
.build())); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
for (DataPetitionComplaint item : pList2) { |
|
|
|
for (DataPetitionComplaint item : pList2) { |
|
|
|
|
|
|
|
if (oldMap.get(BhUtil.petBh(item.getOriginId())) != null) { |
|
|
|
|
|
|
|
continue; |
|
|
|
|
|
|
|
} |
|
|
|
RiskPersonal person = idCodeMan.get(item.getResponderIdCode()); |
|
|
|
RiskPersonal person = idCodeMan.get(item.getResponderIdCode()); |
|
|
|
if(person == null) { |
|
|
|
if (person == null) { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
data.add(ClueData.builder() |
|
|
|
toInsert.add(createClue(task.getModelId(), 5, task.getId(), ClueData.builder() |
|
|
|
.id(item.getOriginId()) |
|
|
|
.id(item.getOriginId()) |
|
|
|
.tag(Default.PETITION_TAG) |
|
|
|
.tag(Default.PETITION_TAG) |
|
|
|
.personId(person.getId()) |
|
|
|
.personId(person.getId()) |
|
|
|
@ -375,153 +385,18 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
.eventTime(item.getDiscoveryTime()) |
|
|
|
.eventTime(item.getDiscoveryTime()) |
|
|
|
.idCode(person.getIdCode()) |
|
|
|
.idCode(person.getIdCode()) |
|
|
|
.name(person.getName()) |
|
|
|
.name(person.getName()) |
|
|
|
.sourceData("该人员在近12个月内有诉求不满或长期未化解的情况,增加风险分5分,具体情况为:"+item.getThingDesc()) |
|
|
|
.sourceData("该人员在近12个月内有诉求不满或长期未化解的情况,增加风险分5分,具体情况为:" + item.getThingDesc()) |
|
|
|
.build()); |
|
|
|
.build())); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 数据部分
|
|
|
|
|
|
|
|
List<RiskModelTaskClue> toUpdates = new ArrayList<>(); |
|
|
|
|
|
|
|
List<RiskModelTaskClue> toInsert = new ArrayList<>(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 操作前查询之前的数据,可能要合并
|
|
|
|
|
|
|
|
List<RiskModelTaskClue> oldList = Optional.ofNullable(domain.getMap().get(task.getModelId())).orElse(new ArrayList<>()); |
|
|
|
|
|
|
|
List<RiskModelTaskClue> oldResults = Optional.ofNullable(domain.getMap().get(task.getModelId())).orElse(new ArrayList<>()); |
|
|
|
|
|
|
|
for (RiskModelTaskClue clue : oldList) { |
|
|
|
|
|
|
|
if(clue.getEventTime().isBefore(time)) { |
|
|
|
|
|
|
|
// 再见了兄弟
|
|
|
|
|
|
|
|
RiskModelTaskClue clue1 = new RiskModelTaskClue(); |
|
|
|
|
|
|
|
clue1.setId(clue.getId()); |
|
|
|
|
|
|
|
clue1.setDel(1); |
|
|
|
|
|
|
|
toUpdates.add(clue1); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
oldResults.add(clue); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Map<String, List<RiskModelTaskClue>> oldMap = oldResults.stream().collect(Collectors.groupingBy(RiskModelTaskClue::getIdCode)); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Map<String, List<ClueData>> clueMap = data.stream().collect(Collectors.groupingBy(ClueData::getIdCode)); |
|
|
|
|
|
|
|
// 按季度计分
|
|
|
|
|
|
|
|
for (Map.Entry<String, List<ClueData>> entry : clueMap.entrySet()) { |
|
|
|
|
|
|
|
List<RiskModelTaskClue> oldClues = Optional.ofNullable(oldMap.get(entry.getKey())).orElse(new ArrayList<>()); |
|
|
|
|
|
|
|
// - 先筛选出老记录,如果已经入库过了,新增的就删除
|
|
|
|
|
|
|
|
Map<String, RiskModelTaskClue> oldClueMap = oldClues.stream().collect(Collectors.toMap(RiskModelTaskClue::getCaseIds, Function.identity(), (oldValue, newValue) -> newValue)); |
|
|
|
|
|
|
|
// 胜利者将继续进行筛选
|
|
|
|
|
|
|
|
List<RiskModelTaskClue> winner = new ArrayList<>(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (ClueData clueData : entry.getValue()) { |
|
|
|
|
|
|
|
// 找不到旧编号才继续
|
|
|
|
|
|
|
|
if(oldClueMap.get(BhUtil.petBh(clueData.getId())) == null) { |
|
|
|
|
|
|
|
winner.add(createClue(task.getModelId(), 5, task.getId(), clueData)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// - 结合新旧数据,从新计算季度,季度最晚的算分
|
|
|
|
|
|
|
|
oldClues.addAll(winner); |
|
|
|
|
|
|
|
Map<Integer, List<RiskModelTaskClue>> winnerMap = new WeakHashMap<>(); |
|
|
|
|
|
|
|
// 去年季度
|
|
|
|
|
|
|
|
Map<Integer, List<RiskModelTaskClue>> lastWinnerMap = new WeakHashMap<>(); |
|
|
|
|
|
|
|
int year = time.getYear(); |
|
|
|
|
|
|
|
for (RiskModelTaskClue oldClue : oldClues) { |
|
|
|
|
|
|
|
int month = oldClue.getEventTime().getMonthValue(); |
|
|
|
|
|
|
|
int theYear = oldClue.getEventTime().getYear(); |
|
|
|
|
|
|
|
int session = month / 3; |
|
|
|
|
|
|
|
if(theYear != year) { |
|
|
|
|
|
|
|
List<RiskModelTaskClue> list = Optional.ofNullable(lastWinnerMap.get(session)).orElse(new ArrayList<>()); |
|
|
|
|
|
|
|
list.add(oldClue); |
|
|
|
|
|
|
|
lastWinnerMap.put(session, list); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
List<RiskModelTaskClue> list = Optional.ofNullable(winnerMap.get(session)).orElse(new ArrayList<>()); |
|
|
|
|
|
|
|
list.add(oldClue); |
|
|
|
|
|
|
|
winnerMap.put(session, list); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// - 上季度排序
|
|
|
|
|
|
|
|
for (Map.Entry<Integer, List<RiskModelTaskClue>> entities : lastWinnerMap.entrySet()) { |
|
|
|
|
|
|
|
List<RiskModelTaskClue> list = entities.getValue(); |
|
|
|
|
|
|
|
list.sort(Comparator.comparing(RiskModelTaskClue::getEventTime, Comparator.reverseOrder())); |
|
|
|
|
|
|
|
RiskModelTaskClue clue = list.getFirst(); |
|
|
|
|
|
|
|
int years = clue.getEventTime().getYear(); |
|
|
|
|
|
|
|
String [] str = clue.getRiskReason().split("-"); |
|
|
|
|
|
|
|
if(clue.getId() != null) { |
|
|
|
|
|
|
|
RiskModelTaskClue update = new RiskModelTaskClue(); |
|
|
|
|
|
|
|
update.setId(clue.getId()); |
|
|
|
|
|
|
|
update.setScore(2); |
|
|
|
|
|
|
|
update.setRiskReason(str[0] + "-" + years+"年"+(entities.getKey()+1)+"季度"); |
|
|
|
|
|
|
|
toUpdates.add(update); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
clue.setScore(2); |
|
|
|
|
|
|
|
clue.setRiskReason(str[0] + "-" + years+"年"+(entities.getKey()+1)+"季度"); |
|
|
|
|
|
|
|
toInsert.add(clue); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
list.remove(0); |
|
|
|
|
|
|
|
for (RiskModelTaskClue riskModelTaskClue : list) { |
|
|
|
|
|
|
|
years = riskModelTaskClue.getEventTime().getYear(); |
|
|
|
|
|
|
|
str = riskModelTaskClue.getRiskReason().split("-"); |
|
|
|
|
|
|
|
if(riskModelTaskClue.getId() != null) { |
|
|
|
|
|
|
|
RiskModelTaskClue update = new RiskModelTaskClue(); |
|
|
|
|
|
|
|
update.setId(riskModelTaskClue.getId()); |
|
|
|
|
|
|
|
update.setScore(0); |
|
|
|
|
|
|
|
update.setRiskReason(str[0] + "-" + years+"年"+(entities.getKey()+1)+"季度季度(已合并到本季度最后)"); |
|
|
|
|
|
|
|
toUpdates.add(update); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
riskModelTaskClue.setScore(0); |
|
|
|
|
|
|
|
riskModelTaskClue.setRiskReason(str[0] + "-" + years+"年"+(entities.getKey()+1)+"季度季度(已合并到本季度最后)"); |
|
|
|
|
|
|
|
toInsert.add(riskModelTaskClue); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// - 本季度排序
|
|
|
|
|
|
|
|
for (Map.Entry<Integer, List<RiskModelTaskClue>> entities : winnerMap.entrySet()) { |
|
|
|
|
|
|
|
List<RiskModelTaskClue> list = entities.getValue(); |
|
|
|
|
|
|
|
list.sort(Comparator.comparing(RiskModelTaskClue::getEventTime, Comparator.reverseOrder())); |
|
|
|
|
|
|
|
RiskModelTaskClue clue = list.getFirst(); |
|
|
|
|
|
|
|
int years = clue.getEventTime().getYear(); |
|
|
|
|
|
|
|
String [] str = clue.getRiskReason().split("-"); |
|
|
|
|
|
|
|
if(clue.getId() != null) { |
|
|
|
|
|
|
|
RiskModelTaskClue update = new RiskModelTaskClue(); |
|
|
|
|
|
|
|
update.setId(clue.getId()); |
|
|
|
|
|
|
|
update.setScore(2); |
|
|
|
|
|
|
|
update.setRiskReason(str[0] + "-" + years+"年"+(entities.getKey()+1)+"季度"); |
|
|
|
|
|
|
|
toUpdates.add(update); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
clue.setScore(2); |
|
|
|
|
|
|
|
clue.setRiskReason(str[0] + "-" + years+"年"+(entities.getKey()+1)+"季度"); |
|
|
|
|
|
|
|
toInsert.add(clue); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
list.remove(0); |
|
|
|
|
|
|
|
for (RiskModelTaskClue riskModelTaskClue : list) { |
|
|
|
|
|
|
|
years = riskModelTaskClue.getEventTime().getYear(); |
|
|
|
|
|
|
|
str = riskModelTaskClue.getRiskReason().split("-"); |
|
|
|
|
|
|
|
if(riskModelTaskClue.getId() != null) { |
|
|
|
|
|
|
|
RiskModelTaskClue update = new RiskModelTaskClue(); |
|
|
|
|
|
|
|
update.setId(riskModelTaskClue.getId()); |
|
|
|
|
|
|
|
update.setScore(0); |
|
|
|
|
|
|
|
update.setRiskReason(str[0] + "-" + years+"年"+(entities.getKey()+1)+"季度季度(已合并到本季度最后)"); |
|
|
|
|
|
|
|
toUpdates.add(update); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
riskModelTaskClue.setScore(0); |
|
|
|
|
|
|
|
riskModelTaskClue.setRiskReason(str[0] + "-" + years+"年"+(entities.getKey()+1)+"季度季度(已合并到本季度最后)"); |
|
|
|
|
|
|
|
toInsert.add(riskModelTaskClue); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (!toInsert.isEmpty()) { |
|
|
|
if(!toInsert.isEmpty()) { |
|
|
|
log.info("公安信访数据: {}", toInsert.size()); |
|
|
|
riskModelTaskClueService.saveClues(toInsert, Default.MAIL_IG); |
|
|
|
riskModelTaskClueService.saveClues(toInsert, Default.MAIL_IG); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if(!toUpdates.isEmpty()) { |
|
|
|
|
|
|
|
log.info("修改线索数 | {}", toUpdates.size()); |
|
|
|
|
|
|
|
clueRepository.updateBatchById(toUpdates); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
RiskTask updateTask = new RiskTask(); |
|
|
|
RiskTask updateTask = new RiskTask(); |
|
|
|
updateTask.setId(task.getId()); |
|
|
|
updateTask.setId(task.getId()); |
|
|
|
updateTask.setInsertSize(toInsert.size()); |
|
|
|
updateTask.setInsertSize(toInsert.size()); |
|
|
|
updateTask.setUpdateSize(toUpdates.size()); |
|
|
|
updateTask.setUpdateSize(0); |
|
|
|
updateTask.setState(1); |
|
|
|
updateTask.setState(1); |
|
|
|
updateTask.setEndTime(LocalDateTime.now()); |
|
|
|
updateTask.setEndTime(LocalDateTime.now()); |
|
|
|
riskTaskRepository.updateById(updateTask); |
|
|
|
riskTaskRepository.updateById(updateTask); |
|
|
|
@ -530,8 +405,8 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
GBaseSYRKXX compare(List<GBaseSYRKXX> infos, String name) { |
|
|
|
GBaseSYRKXX compare(List<GBaseSYRKXX> infos, String name) { |
|
|
|
GBaseSYRKXX info = null; |
|
|
|
GBaseSYRKXX info = null; |
|
|
|
for (GBaseSYRKXX gBaseSYRKXX : infos) { |
|
|
|
for (GBaseSYRKXX gBaseSYRKXX : infos) { |
|
|
|
if(gBaseSYRKXX.getXm().equals(name)) { |
|
|
|
if (gBaseSYRKXX.getXm().equals(name)) { |
|
|
|
info=gBaseSYRKXX; |
|
|
|
info = gBaseSYRKXX; |
|
|
|
break; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -541,8 +416,8 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
RiskPersonal comparePerson(List<RiskPersonal> infos, String name) { |
|
|
|
RiskPersonal comparePerson(List<RiskPersonal> infos, String name) { |
|
|
|
RiskPersonal info = null; |
|
|
|
RiskPersonal info = null; |
|
|
|
for (RiskPersonal gBaseSYRKXX : infos) { |
|
|
|
for (RiskPersonal gBaseSYRKXX : infos) { |
|
|
|
if(gBaseSYRKXX.getName().equals(name)) { |
|
|
|
if (gBaseSYRKXX.getName().equals(name)) { |
|
|
|
info=gBaseSYRKXX; |
|
|
|
info = gBaseSYRKXX; |
|
|
|
break; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -575,37 +450,20 @@ public class PetitionServiceImpl implements PetitionService { |
|
|
|
return clue; |
|
|
|
return clue; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
RiskPersonalControlRecord createControlRecord(ClueData data) { |
|
|
|
|
|
|
|
RiskPersonalControlRecord controlRecord = new RiskPersonalControlRecord(); |
|
|
|
|
|
|
|
controlRecord.setName(data.getName()); |
|
|
|
|
|
|
|
controlRecord.setIdCode(data.getIdCode()); |
|
|
|
|
|
|
|
controlRecord.setCreateTime(LocalDateTime.now()); |
|
|
|
|
|
|
|
controlRecord.setControlTime(data.getEventTime()); |
|
|
|
|
|
|
|
controlRecord.setControlDepartId(data.getDepartId()); |
|
|
|
|
|
|
|
controlRecord.setControlDepartName(data.getDepartName()); |
|
|
|
|
|
|
|
controlRecord.setControlTag(data.getTag()); |
|
|
|
|
|
|
|
controlRecord.setCaseId(BhUtil.ajBh(data.getId())); |
|
|
|
|
|
|
|
return controlRecord; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
RiskPersonal checkPerson(RiskPersonal personal) { |
|
|
|
RiskPersonal checkPerson(RiskPersonal personal) { |
|
|
|
if(personal.getName()== null ||personal.getIdCode() == null || personal.getName().isEmpty() || personal.getIdCode().isEmpty()) { |
|
|
|
if (personal.getName() == null || personal.getIdCode() == null || personal.getName().isEmpty() || personal.getIdCode().isEmpty()) { |
|
|
|
return null; |
|
|
|
return null; |
|
|
|
} |
|
|
|
} |
|
|
|
try{ |
|
|
|
Integer age = IdCodeUtil.idCard2Age(personal.getIdCode(), LocalDate.now()); |
|
|
|
int age = IdCodeUtil.idCard2Age(personal.getIdCode(), LocalDate.now()); |
|
|
|
if (age == null || age <= 6) { |
|
|
|
if(age <= 6) { |
|
|
|
|
|
|
|
return null; |
|
|
|
return null; |
|
|
|
} |
|
|
|
} |
|
|
|
personal.setAge(age); |
|
|
|
personal.setAge(age); |
|
|
|
} catch (Exception e) { |
|
|
|
if (personal.getGender() == null) { |
|
|
|
return null; |
|
|
|
try { |
|
|
|
} |
|
|
|
|
|
|
|
if(personal.getGender() == null) { |
|
|
|
|
|
|
|
try{ |
|
|
|
|
|
|
|
int gender = personal.getIdCode().length() == 18 ? Integer.valueOf(personal.getIdCode().substring(16, 17)) : Integer.valueOf(personal.getIdCode().substring(14, 15)); |
|
|
|
int gender = personal.getIdCode().length() == 18 ? Integer.valueOf(personal.getIdCode().substring(16, 17)) : Integer.valueOf(personal.getIdCode().substring(14, 15)); |
|
|
|
// 结果0男1女 余数偶女奇男
|
|
|
|
// 结果0男1女 余数偶女奇男
|
|
|
|
personal.setGender(gender % 2 == 0 ?"2":"1"); |
|
|
|
personal.setGender(gender % 2 == 0 ? "2" : "1"); |
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
return null; |
|
|
|
return null; |
|
|
|
} |
|
|
|
} |
|
|
|
|