Browse Source

行为人子女数,修复bug

master
sjh 1 year ago
parent
commit
72aec72521
  1. 10
      src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java
  2. 19
      src/main/java/com/biutag/supervisiondata/mapper/dwd/GBaseCSCZRKMapper.java
  3. 2
      src/main/java/com/biutag/supervisiondata/mapper/dwd/GBaseWFRWFXXMapper.java
  4. 1
      src/main/java/com/biutag/supervisiondata/pojo/constants/Default.java
  5. 4
      src/main/java/com/biutag/supervisiondata/pojo/entity/dwd/GBaseCSCZRK.java
  6. 3
      src/main/java/com/biutag/supervisiondata/service/PointService.java
  7. 71
      src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java

10
src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java

@ -142,14 +142,14 @@ public class ApplicationEvent {
// pointService.syncIsPetition(initDomain(List.of(111)));
// pointService.syncFatherEducation(initDomain(List.of(112)));
// pointService.syncMotherEducation(initDomain(List.of(113)));
// pointService.syncDomicileType(initDomain(List.of(114)));
// pointService.syncCriminalPunishment(initDomain(List.of(115)));
// pointService.syncAdministrativePunishment(initDomain(List.of(116)));
// pointService.syncParentsDivorce(initDomain(List.of(117)));
pointService.syncDomicileType(initDomain(List.of(114)));
pointService.syncCriminalPunishment(initDomain(List.of(115)));
pointService.syncAdministrativePunishment(initDomain(List.of(116)));
pointService.syncParentsDivorce(initDomain(List.of(117)));
pointService.syncFamilyDie(initDomain(List.of(118)));
pointService.syncFatherDie(initDomain(List.of(119)));
pointService.syncMotherDie(initDomain(List.of(120)));
// pointService.syncChildrenNo(initDomain(List.of(120)));// 未完成
pointService.syncChildNo(initDomain(List.of(121)));
// *********暂时不要**********
// riskTaskService.heightFight(initDomain(List.of(42)));

19
src/main/java/com/biutag/supervisiondata/mapper/dwd/GBaseCSCZRKMapper.java

@ -79,4 +79,23 @@ public interface GBaseCSCZRKMapper extends BaseMapper<GBaseCSCZRK> {
+ "</foreach>"
+ "</script>")
List<GBaseCSCZRK> selectMotherDiePeople(List<WdpcHZCRYXX> part);
// 行为人子女数
@Select("<script>"
+ "SELECT c.gmsfhm, SUM(CASE WHEN c.mc1 = '子' AND c.m2 IN ('孙子','孙女') THEN 1 "
+ "WHEN c.mc1 = '女' AND c.m2 IN ('外孙子','外孙女') THEN 1 "
+ "WHEN c.mc1 IN ('户主','本人','妻','夫','配偶') AND c.m2 IN ('子','女','独生子','独生女','长子','次子','三子','四子','五子','二女','三女','四女','五女') THEN 1 "
+ "WHEN c.mc1 IN ('父亲','母亲') AND c.m2 IN ('户主','本人','兄','弟','姐姐','妹妹') THEN 1 "
+ "WHEN c.mc1 IN ('兄','弟') AND c.m2 IN ('侄女','侄子') THEN 1 "
+ "WHEN c.mc1 IN ('姐姐','妹妹') AND c.m2 IN ('外甥女','外甥') THEN 1 "
+ "WHEN c.mc1 IN ('独生女','长女','二女','儿媳') AND c.m2 IN ('外孙子','外孙女') THEN 1 "
+ "WHEN c.mc1 IN ('独生子','长子','次子','女婿') AND c.m2 IN ('孙子','孙女') THEN 1 "
+ "ELSE 0 END) AS score from "
+ "(SELECT a.gmsfhm, a.yhzgxmc mc1, b.yhzgxmc mc2 FROM dwd_ry_kxgxzyk_csczrk a JOIN dwd_ry_kxgxzyk_csczrk b ON a.hh = b.hh "
+ "WHERE a.gmsfhm != b.gmsfhm and a.gmsfhm IN "
+ "<foreach item='item' index='index' collection='list' open='(' separator=',' close=')'>"
+ "#{item}"
+ "</foreach> ) c GROUP BY c.gmsfhm"
+ "</script>")
List<GBaseCSCZRK> selectChildNo(List<String> idNos);
}

2
src/main/java/com/biutag/supervisiondata/mapper/dwd/GBaseWFRWFXXMapper.java

@ -12,7 +12,7 @@ import java.util.List;
* @since 1.8
*/
public interface GBaseWFRWFXXMapper extends BaseMapper<GBaseWFRWFXX> {
@Select("select a.ajbh, b.zjhm, b.ajmc, b.yjsm, b.djrq from dwd_asj_zfba_ajjbxx a " +
@Select("select a.ajbh, b.zjhm, b.ajmc, b.jysm, b.djrq from dwd_asj_zfba_ajjbxx a " +
"join dwd_asj_zfba_wfrwfxx b on a.ajbh = b.ajbh where ajbzdm = 1;")
List<GBaseWFRWFXX> selectCriminalPunishment();
}

1
src/main/java/com/biutag/supervisiondata/pojo/constants/Default.java

@ -124,5 +124,6 @@ public class Default {
public static final String MOTHERDIE = "母亲是否健在";
public static final String CHILDNO = "行为人子女数";
}

4
src/main/java/com/biutag/supervisiondata/pojo/entity/dwd/GBaseCSCZRK.java

@ -84,4 +84,8 @@ public class GBaseCSCZRK implements Serializable {
@TableField(exist = false)
String motherEducation;
// 打分(通用SQL计算结果)
@TableField("score")
Integer score;
}

3
src/main/java/com/biutag/supervisiondata/service/PointService.java

@ -72,4 +72,7 @@ public interface PointService {
// 母亲是否健在
void syncMotherDie(TaskParamDomain domain);
// 行为人子女数
void syncChildNo(TaskParamDomain domain);
}

71
src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java

@ -248,6 +248,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));
@ -264,6 +265,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()
@ -290,6 +292,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));
@ -306,6 +309,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分")
@ -351,6 +355,7 @@ public class PointServiceImpl implements PointService {
.id(personal.getId().toString())
.idCode(personal.getIdCode())
.tag("父母婚姻变故")
.eventTime(LocalDateTime.now())
.personId(personal.getId())
.sourceData("发现该人员父母离婚,增加风险分5分")
.build();
@ -401,6 +406,7 @@ public class PointServiceImpl implements PointService {
.id(personal.getId().toString())
.idCode(personal.getIdCode())
.tag("父亲是否健在")
.eventTime(LocalDateTime.now())
.personId(personal.getId())
.sourceData("发现该人员父亲死亡,增加风险分5分")
.build();
@ -451,6 +457,7 @@ public class PointServiceImpl implements PointService {
.id(personal.getId().toString())
.idCode(personal.getIdCode())
.tag("母亲是否健在")
.eventTime(LocalDateTime.now())
.personId(personal.getId())
.sourceData("发现该人员母亲死亡,增加风险分5分")
.build();
@ -468,6 +475,62 @@ public class PointServiceImpl implements PointService {
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.FAMILYDIE);
}
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);
@ -501,6 +564,7 @@ public class PointServiceImpl implements PointService {
.id(personal.getId().toString())
.idCode(personal.getIdCode())
.tag("亲近家人死亡")
.eventTime(LocalDateTime.now())
.personId(personal.getId())
.sourceData("发现该人员亲近家人死亡,增加风险分5分")
.build();
@ -516,7 +580,6 @@ public class PointServiceImpl implements PointService {
updateTask.setState(1);
updateTask.setEndTime(LocalDateTime.now());
taskRepository.updateById(updateTask);
}
@Override
@ -551,8 +614,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));
}
@ -592,6 +656,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();
@ -633,6 +698,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();
@ -694,6 +760,7 @@ public class PointServiceImpl implements PointService {
.id(personal.getId().toString())
.idCode(personal.getIdCode())
.tag("上访人员")
.eventTime(LocalDateTime.now())
.personId(personal.getId())
.sourceData("发现该人员有过上访经历,增加风险分5分")
.build();

Loading…
Cancel
Save