|
|
|
@ -571,6 +571,59 @@ public class PointServiceImpl implements PointService { |
|
|
|
taskRepository.updateById(updateTask); |
|
|
|
taskRepository.updateById(updateTask); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
|
|
public void syncFamilySeriousIllness(TaskParamDomain domain) { |
|
|
|
|
|
|
|
RiskTask task = createTask(domain.getPersons().size(), 127); |
|
|
|
|
|
|
|
taskRepository.save(task); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Map<String, RiskModelTaskClue> oldMap = domain.getOldMap(task.getModelId(), true); |
|
|
|
|
|
|
|
Map<String, Integer> idCode = new HashMap<>(); |
|
|
|
|
|
|
|
log.info("模型127开始查询"); |
|
|
|
|
|
|
|
List<WdpcJZJLB> wdpcJZJLBList = jZJLBRepository.getBaseMapper().selectSeriousIllness(); |
|
|
|
|
|
|
|
// 切割 每次查10000条
|
|
|
|
|
|
|
|
List<List<WdpcJZJLB>> wdpcJZJLBParts = IntStream.range(0, (wdpcJZJLBList.size() + 9999) / 10000) |
|
|
|
|
|
|
|
.mapToObj(i -> wdpcJZJLBList.subList(i * 10000, Math.min((i + 1) * 10000, wdpcJZJLBList.size()))) |
|
|
|
|
|
|
|
.toList(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<GBaseCSCZRK> list = new ArrayList<>(); |
|
|
|
|
|
|
|
for (List<WdpcJZJLB> wdpcJZJLBPart : wdpcJZJLBParts) { |
|
|
|
|
|
|
|
List<String> ids = wdpcJZJLBPart.stream().map(WdpcJZJLB::getIdCode).toList(); |
|
|
|
|
|
|
|
list.addAll(cSCZRKRepository.getBaseMapper().selectFamilySeriousIllness(ids)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
log.info("模型127查询结果数:{}", list.size()); |
|
|
|
|
|
|
|
Map<String, RiskPersonal> personalMap = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (old, newVal) -> newVal)); |
|
|
|
|
|
|
|
List<RiskModelTaskClue> toInsert = new ArrayList<>(); |
|
|
|
|
|
|
|
for (GBaseCSCZRK domicileType : list) { |
|
|
|
|
|
|
|
RiskPersonal personal = personalMap.get(domicileType.getGmsfhm()); |
|
|
|
|
|
|
|
if (personal == null) continue; |
|
|
|
|
|
|
|
if (idCode.get(domicileType.getGmsfhm()) != null) continue; |
|
|
|
|
|
|
|
if (oldMap.get(domicileType.getGmsfhm()) != null) continue; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
idCode.put(domicileType.getGmsfhm(), 1); |
|
|
|
|
|
|
|
ClueData data = ClueData.builder() |
|
|
|
|
|
|
|
.name(personal.getName()) |
|
|
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
|
|
|
.tag("家人患严重疾病") |
|
|
|
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
|
|
|
.sourceData("发现该人员的家人有重大疾病,增加风险分5分") |
|
|
|
|
|
|
|
.build(); |
|
|
|
|
|
|
|
toInsert.add(createClue(task.getModelId(), 5, task.getId(), data)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (!toInsert.isEmpty()) { |
|
|
|
|
|
|
|
modelTaskClueService.saveClues(toInsert, Default.FAMILYSERIOUSILLNESS); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
RiskTask updateTask = new RiskTask(); |
|
|
|
|
|
|
|
updateTask.setId(task.getId()); |
|
|
|
|
|
|
|
updateTask.setInsertSize(toInsert.size()); |
|
|
|
|
|
|
|
updateTask.setUpdateSize(0); |
|
|
|
|
|
|
|
updateTask.setState(1); |
|
|
|
|
|
|
|
updateTask.setEndTime(LocalDateTime.now()); |
|
|
|
|
|
|
|
taskRepository.updateById(updateTask); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public void syncSeriousIllness(TaskParamDomain domain) { |
|
|
|
public void syncSeriousIllness(TaskParamDomain domain) { |
|
|
|
RiskTask task = createTask(domain.getPersons().size(), 126); |
|
|
|
RiskTask task = createTask(domain.getPersons().size(), 126); |
|
|
|
|