|
|
|
|
@ -16,6 +16,7 @@ import com.biutag.supervisiondata.pojo.entity.mine.*;
|
|
|
|
|
import com.biutag.supervisiondata.pojo.entity.wdpc.WdpcGrjdXfsj; |
|
|
|
|
import com.biutag.supervisiondata.pojo.entity.wdpc.WdpcGrjdZblx; |
|
|
|
|
import com.biutag.supervisiondata.pojo.entity.wdpc2.WdpcHZCRYXX; |
|
|
|
|
import com.biutag.supervisiondata.pojo.entity.wdpc2.WdpcXdry; |
|
|
|
|
import com.biutag.supervisiondata.repository.*; |
|
|
|
|
import com.biutag.supervisiondata.service.PointService; |
|
|
|
|
import com.biutag.supervisiondata.service.RiskModelTaskClueService; |
|
|
|
|
@ -69,6 +70,8 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
|
|
|
|
|
private final WdpcHZCRYXXRepository hZCRYXXRepository; |
|
|
|
|
|
|
|
|
|
private final WdpcXdryRepository xdryRepository; |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void personPullAndSave(LocalDateTime start, LocalDateTime end) { |
|
|
|
|
riskPersonalService.formatAndSave(getPersons(), Default.POINT_POEPLE); |
|
|
|
|
@ -306,6 +309,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
|
|
|
|
|
Map<String, RiskModelTaskClue> oldMap = domain.getOldMap(task.getModelId(), true); |
|
|
|
|
Map<String, Integer> idCode = new HashMap<>(); |
|
|
|
|
log.info("模型116开始查询"); |
|
|
|
|
List<GBaseGAXZCFJDS> list = gAXZCFJDSRepository.getBaseMapper().selectAdministrativePunishment(); |
|
|
|
|
log.info("模型116查询结果数:{}", list.size()); |
|
|
|
|
Map<String, RiskPersonal> personalMap = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (old, newVal) -> newVal)); |
|
|
|
|
@ -322,6 +326,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("受到行政处罚") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员涉及案件“" + domicileType.getAjmc() + "”,案件编号:" |
|
|
|
|
+ domicileType.getAjbh() + ",处罚内容为“" + domicileType.getCfms1() |
|
|
|
|
@ -348,6 +353,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
|
|
|
|
|
Map<String, RiskModelTaskClue> oldMap = domain.getOldMap(task.getModelId(), true); |
|
|
|
|
Map<String, Integer> idCode = new HashMap<>(); |
|
|
|
|
log.info("模型115开始查询"); |
|
|
|
|
List<GBaseWFRWFXX> list = wFRWFXXRepository.getBaseMapper().selectCriminalPunishment(); |
|
|
|
|
log.info("模型115查询结果数:{}", list.size()); |
|
|
|
|
Map<String, RiskPersonal> personalMap = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (old, newVal) -> newVal)); |
|
|
|
|
@ -364,6 +370,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("受到刑事处罚") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员" + domicileType.getJysm() + "案件编号:" + domicileType.getAjbh() |
|
|
|
|
+ ",因受到刑事处罚,增加风险分5分") |
|
|
|
|
@ -409,6 +416,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("父母婚姻变故") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员父母离婚,增加风险分5分") |
|
|
|
|
.build(); |
|
|
|
|
@ -459,6 +467,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("父亲是否健在") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员父亲死亡,增加风险分5分") |
|
|
|
|
.build(); |
|
|
|
|
@ -509,6 +518,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("母亲是否健在") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员母亲死亡,增加风险分5分") |
|
|
|
|
.build(); |
|
|
|
|
@ -526,6 +536,129 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
taskRepository.updateById(updateTask); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void syncXIDU(TaskParamDomain domain) { |
|
|
|
|
RiskTask task = createTask(domain.getPersons().size(), 122); |
|
|
|
|
taskRepository.save(task); |
|
|
|
|
|
|
|
|
|
Map<String, RiskModelTaskClue> oldMap = domain.getOldMap(task.getModelId(), true); |
|
|
|
|
Map<String, Integer> idCode = new HashMap<>(); |
|
|
|
|
List<WdpcXdry> list = new ArrayList<>(); |
|
|
|
|
log.info("模型122开始查询"); |
|
|
|
|
for (List<String> idCard : domain.getIdCards()) { |
|
|
|
|
list.addAll(xdryRepository.getBaseMapper().selectXIDU(idCard)); |
|
|
|
|
} |
|
|
|
|
log.info("模型122查询结果数:{}", 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 (WdpcXdry domicileType : list) { |
|
|
|
|
RiskPersonal personal = personalMap.get(domicileType.getSfzh()); |
|
|
|
|
if (personal == null) continue; |
|
|
|
|
if (idCode.get(domicileType.getSfzh()) != null) continue; |
|
|
|
|
if (oldMap.get(domicileType.getSfzh()) != null) continue; |
|
|
|
|
|
|
|
|
|
idCode.put(domicileType.getSfzh(), 1); |
|
|
|
|
String dataString = ""; |
|
|
|
|
if (domicileType.getFxdwDwmc() != null) { |
|
|
|
|
dataString = dataString + ",且在" + domicileType.getFxdwDwmc() + "服刑"; |
|
|
|
|
} |
|
|
|
|
if (domicileType.getFxqsrq() != null) { |
|
|
|
|
dataString = dataString + ",服刑起始日期为" + getDateString(domicileType.getFxqsrq()); |
|
|
|
|
} |
|
|
|
|
if (domicileType.getFxjsrq() != null) { |
|
|
|
|
dataString = dataString + ",服刑结束日期为" + getDateString(domicileType.getFxjsrq()); |
|
|
|
|
} |
|
|
|
|
if (domicileType.getChdwDwmc() != null) { |
|
|
|
|
dataString = dataString + ",查获单位为" + domicileType.getChdwDwmc(); |
|
|
|
|
} |
|
|
|
|
if (domicileType.getGkxzMc() != null) { |
|
|
|
|
dataString = dataString + ",管控现状为" + domicileType.getGkxzMc(); |
|
|
|
|
} |
|
|
|
|
if (domicileType.getJlsmc() != null && (domicileType.getRsrq() != null)) { |
|
|
|
|
dataString = dataString + ",于" + getDateString(domicileType.getRsrq()) + "进入" + domicileType.getJlsmc(); |
|
|
|
|
if (domicileType.getCsrq() != null) { |
|
|
|
|
dataString = dataString + "," + getDateString(domicileType.getRsrq()) + "出所"; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
ClueData data = ClueData.builder() |
|
|
|
|
.name(personal.getName()) |
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("吸食毒品") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员吸食毒品" + dataString + "增加风险分5分") |
|
|
|
|
.build(); |
|
|
|
|
toInsert.add(createClue(task.getModelId(), 5, task.getId(), data)); |
|
|
|
|
} |
|
|
|
|
if (!toInsert.isEmpty()) { |
|
|
|
|
modelTaskClueService.saveClues(toInsert, Default.DRUG); |
|
|
|
|
} |
|
|
|
|
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 |
|
|
|
|
public void syncChildNo(TaskParamDomain domain) { |
|
|
|
|
RiskTask task = createTask(domain.getPersons().size(), 121); |
|
|
|
|
taskRepository.save(task); |
|
|
|
|
|
|
|
|
|
Map<String, RiskModelTaskClue> oldMap = domain.getOldMap(task.getModelId(), true); |
|
|
|
|
Map<String, Integer> idCode = new HashMap<>(); |
|
|
|
|
List<GBaseCSCZRK> list = new ArrayList<>(); |
|
|
|
|
log.info("模型121开始查询"); |
|
|
|
|
for (List<String> idCard : domain.getIdCards()) { |
|
|
|
|
list.addAll(cSCZRKRepository.getBaseMapper().selectChildNo(idCard)); |
|
|
|
|
} |
|
|
|
|
log.info("模型121查询结果数:{}", 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); |
|
|
|
|
if (domicileType.getScore() == 0){ |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
int realScore = 0; |
|
|
|
|
if (domicileType.getScore() == 1) { |
|
|
|
|
realScore = 1; |
|
|
|
|
} else if (domicileType.getScore() == 2 || domicileType.getScore() == 3) { |
|
|
|
|
realScore = 3; |
|
|
|
|
} else if (domicileType.getScore() > 3) { |
|
|
|
|
realScore = 5; |
|
|
|
|
} |
|
|
|
|
ClueData data = ClueData.builder() |
|
|
|
|
.name(personal.getName()) |
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("行为人子女数") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员子女数为" + domicileType.getScore() + ",增加风险分" + realScore + "分") |
|
|
|
|
.build(); |
|
|
|
|
toInsert.add(createClue(task.getModelId(), realScore, task.getId(), data)); |
|
|
|
|
} |
|
|
|
|
if (!toInsert.isEmpty()) { |
|
|
|
|
modelTaskClueService.saveClues(toInsert, Default.CHILDNO); |
|
|
|
|
} |
|
|
|
|
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 |
|
|
|
|
public void syncFamilyDie(TaskParamDomain domain) { |
|
|
|
|
RiskTask task = createTask(domain.getPersons().size(), 118); |
|
|
|
|
@ -559,6 +692,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("亲近家人死亡") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员亲近家人死亡,增加风险分5分") |
|
|
|
|
.build(); |
|
|
|
|
@ -574,7 +708,6 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
updateTask.setState(1); |
|
|
|
|
updateTask.setEndTime(LocalDateTime.now()); |
|
|
|
|
taskRepository.updateById(updateTask); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
@ -609,8 +742,9 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("户籍类型") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员户籍类型为" + domicileType.getGmsfhm() + ",增加风险分5分") |
|
|
|
|
.sourceData("发现该人员户籍类型为" + domicileType.getHlxmc() + ",增加风险分5分") |
|
|
|
|
.build(); |
|
|
|
|
toInsert.add(createClue(task.getModelId(), 5, task.getId(), data)); |
|
|
|
|
} |
|
|
|
|
@ -650,6 +784,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("父亲文化程度") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员父亲文化程度为" + fatherEducation.getFatherEducation() + ",增加风险分" + eduScore + "分") |
|
|
|
|
.build(); |
|
|
|
|
@ -691,6 +826,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("母亲文化程度") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员母亲文化程度为" + motherEducation.getMotherEducation() + ",增加风险分" + eduScore + "分") |
|
|
|
|
.build(); |
|
|
|
|
@ -752,6 +888,7 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
.id(personal.getId().toString()) |
|
|
|
|
.idCode(personal.getIdCode()) |
|
|
|
|
.tag("上访人员") |
|
|
|
|
.eventTime(LocalDateTime.now()) |
|
|
|
|
.personId(personal.getId()) |
|
|
|
|
.sourceData("发现该人员有过上访经历,增加风险分5分") |
|
|
|
|
.build(); |
|
|
|
|
@ -1380,4 +1517,20 @@ public class PointServiceImpl implements PointService {
|
|
|
|
|
return org; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private static String getDateString(String dateString) { |
|
|
|
|
if (dateString != null) { |
|
|
|
|
try { |
|
|
|
|
LocalDateTime localDateTime = LocalDateTime.parse(dateString, DateTimeFormatter.ofPattern("yyyyMMddHHmmss")); |
|
|
|
|
return localDateTime.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日")); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
try { |
|
|
|
|
LocalDateTime localDateTime = LocalDateTime.parse(dateString, DateTimeFormatter.ofPattern("yyyyMMdd")); |
|
|
|
|
return localDateTime.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日")); |
|
|
|
|
} catch (Exception ex) { |
|
|
|
|
log.error("日期转换异常{}", dateString, ex); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return " 无时间数据 "; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|