diff --git a/src/main/java/com/biutag/supervisiondata/service/impl/GBaseSHRWFRServiceImpl.java b/src/main/java/com/biutag/supervisiondata/service/impl/GBaseSHRWFRServiceImpl.java index f98c722..1d2837f 100644 --- a/src/main/java/com/biutag/supervisiondata/service/impl/GBaseSHRWFRServiceImpl.java +++ b/src/main/java/com/biutag/supervisiondata/service/impl/GBaseSHRWFRServiceImpl.java @@ -150,7 +150,6 @@ public class GBaseSHRWFRServiceImpl implements GBaseSHRWFRService { List oldList = Optional.ofNullable(domain.getMap().get(task.getModelId())).orElse(new ArrayList<>()); // 按人分 Map> personOldMap = oldList.stream().collect(Collectors.groupingBy(RiskModelTaskClue::getIdCode)); - Map> wfrMap = xxList.stream().collect(Collectors.groupingBy(GBaseWFRXX::getZjhm)); List toInsert = new ArrayList<>(); @@ -160,29 +159,53 @@ public class GBaseSHRWFRServiceImpl implements GBaseSHRWFRService { if (wfxxList == null) { continue; } - List olds = Optional.ofNullable(personOldMap.get(person.getIdCode())).orElse(new ArrayList<>()); - Map oldMap = olds.stream().collect(Collectors.toMap(RiskModelTaskClue::getCaseIds, Function.identity(), (val, old) -> val)); + List olds = personOldMap.get(person.getIdCode()); + // 是否只有一个 + if(olds!=null) { + continue; + } + StringBuilder zm = new StringBuilder(); + StringBuilder aj = new StringBuilder(); + LocalDateTime eventTime = null; for (GBaseWFRXX xx : wfxxList) { - if (oldMap.get(BhUtil.ajBh(xx.getAjbh())) != null) { - continue; + if(zm.indexOf(xx.getSxzm()+",") == -1) { + zm.append(xx.getSxzm()).append(","); } - ClueData data = ClueData.builder() - .name(person.getName()) - .id(BhUtil.ajBh(xx.getAjbh())) - .idCode(person.getIdCode()) - .tag("已被打击处理") - .personId(person.getId()) - .sourceData("该人员因" + xx.getSxzm() + "被打击处理,案件编号:" + xx.getAjbh()) - .build(); + if(aj.indexOf(xx.getAjbh()+",") == -1) { + aj.append(xx.getAjbh()).append(","); + } + try { - data.setEventTime(xx.getLrsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime()); + LocalDateTime tmp = xx.getLrsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + if(eventTime == null) { + eventTime = tmp; + continue; + } + if(eventTime.isBefore(tmp)) { + eventTime = tmp; + } } catch (Exception ignored) { - data.setEventTime(LocalDateTime.now()); } - toInsert.add(createClue(task.getModelId(), 5, task.getId(), data)); } + StringBuilder tmp = new StringBuilder("该人员"); + if(zm.length() > 0) { + tmp.append("因:").append(zm.substring(0, zm.length()-1)); + } + tmp.append(" 已被打击处理过"); + if(aj.length() > 0) { + tmp.append("具体案件编号:").append(aj.substring(0, aj.length()-1)); + } + ClueData data = ClueData.builder() + .name(person.getName()) + .id("isPoint") + .idCode(person.getIdCode()) + .tag("已被打击处理") + .personId(person.getId()) + .sourceData(tmp.toString()) + .eventTime(Optional.ofNullable(eventTime).orElse(LocalDateTime.now())) + .build(); + toInsert.add(createClue(task.getModelId(), 5, task.getId(), data)); } - if (!toInsert.isEmpty()) { clueService.saveClues(toInsert, "B24被打击处理"); } diff --git a/src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java b/src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java index 9fa8fa8..78205e5 100644 --- a/src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java +++ b/src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java @@ -202,8 +202,7 @@ public class PointServiceImpl implements PointService { @Override public void syncViolence(TaskParamDomain domain) { - RiskTask task = createTask(domain.getPersons().size(), 44); - taskRepository.save(task); + RiskTask task = taskRepository.create(domain.getPersons().size(), 44); Map personalMap = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (oldValue, newValue) -> newValue)); List list = zdryRepository.getBaseMapper().syncViolencePerson(); @@ -253,19 +252,12 @@ public class PointServiceImpl implements PointService { if (!toInsert.isEmpty()) { modelTaskClueService.saveClues(toInsert, Default.VIOLENCE_IG); } - 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); + taskRepository.updateTask(task.getId(), toInsert.size(), 0); } @Override public void syncKillSelf(TaskParamDomain domain) { - RiskTask task = createTask(domain.getPersons().size(), 46); - taskRepository.save(task); + RiskTask task = taskRepository.create(domain.getPersons().size(), 46); Map personalMap = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (oldValue, newValue) -> newValue)); List list = zdryRepository.getBaseMapper().syncKillSelf(); List olds = Optional.ofNullable(domain.getMap().get(task.getId())).orElse(new ArrayList<>()); @@ -303,13 +295,7 @@ public class PointServiceImpl implements PointService { if (!toInsert.isEmpty()) { modelTaskClueService.saveClues(toInsert, Default.KILL_IG); } - 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); + taskRepository.updateTask(task.getId(), toInsert.size(), 0); } @Override