Browse Source

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java
master
sjh 1 year ago
parent
commit
ffdd3a1514
  1. 15
      src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java
  2. 12
      src/main/java/com/biutag/supervisiondata/mapper/wdpc/WdpcGrjdZblxMapper.java
  3. 2
      src/main/java/com/biutag/supervisiondata/pojo/constants/Default.java
  4. 15
      src/main/java/com/biutag/supervisiondata/repository/WdpcGrjdZblxRepository.java
  5. 29
      src/main/java/com/biutag/supervisiondata/service/PointService.java
  6. 8
      src/main/java/com/biutag/supervisiondata/service/impl/GBaseJJDServiceImpl.java
  7. 57
      src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java
  8. 17
      src/main/java/com/biutag/supervisiondata/util/PatternUtil.java

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

@ -99,7 +99,7 @@ public class ApplicationEvent {
public void serviceReady() {
RedisDao.getInstance().init(redisTemplate);
LocalDateTime start = LocalDateTime.of(2024, 1, 1, 0, 0, 0);
LocalDateTime start = LocalDateTime.of(2023, 12, 6, 0, 0, 0);
LocalDateTime end = LocalDateTime.now();
CompletableFutureUtil.runSync(() -> {
// 测试数据
@ -118,16 +118,15 @@ public class ApplicationEvent {
//
// gBaseJJDService.pullPoliceInstance(start, end);
//
//
// petitionService.petitionModelTask(initDomain(List.of(40)));
// riskTaskService.eduModelTask(initDomain(List.of(34)));
// riskTaskService.infoModelTask(initDomain(List.of(32,33)));
// marriageService.marriageModelTask(initDomain(List.of(39,51)));
// riskTaskService.caseModelTask(initDomain(List.of(35)));
// pointService.syncSecurity(initDomain(List.of(37)));
// policeService.contradictModelTask(initDomain(List.of(38)));
// habitService.habitModelTask(initDomain(List.of(36,60,61,62)));
// habitService.habitModelTask(start, initDomain(List.of(36,60,61,62)));
//
// pointService.syncCarUser(initDomain(List.of(53)));
// riskTaskService.riskAreaModelTask(initDomain(List.of(41)));
// pointService.syncScore(initDomain(List.of(43)));
@ -138,7 +137,9 @@ public class ApplicationEvent {
// pointService.syncControlNoPower(initDomain(List.of(48)));
// pointService.syncOilBuy(initDomain(List.of(52)));
// jsbryService.syncPys(initDomain(List.of(59)));
// gBaseSHRWFRService.combatCrime(initDomain(List.of(63)));
// gBaseJJDService.syncPoliceAttack(initDomain(List.of(64)));
// gBaseJJDService.syncHomeViolence(initDomain(List.of(65,66)));
// pointService.syncIsPetition(initDomain(List.of(111)));
// pointService.syncFatherEducation(initDomain(List.of(112)));
// pointService.syncMotherEducation(initDomain(List.of(113)));
@ -152,6 +153,8 @@ public class ApplicationEvent {
pointService.syncChildNo(initDomain(List.of(121)));
// *********暂时不要**********
// riskTaskService.caseModelTask(initDomain(List.of(35)));
// riskTaskService.heightFight(initDomain(List.of(42)));
// pointService.syncPointCall(initDomain(List.of(50)));

12
src/main/java/com/biutag/supervisiondata/mapper/wdpc/WdpcGrjdZblxMapper.java

@ -0,0 +1,12 @@
package com.biutag.supervisiondata.mapper.wdpc;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.biutag.supervisiondata.pojo.entity.wdpc.WdpcGrjdZblx;
/**
* @author kami on 2024-12-07 18:22:32
* @version 0.0.1
* @since 1.8
*/
public interface WdpcGrjdZblxMapper extends BaseMapper<WdpcGrjdZblx> {
}

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

@ -78,7 +78,7 @@ public class Default {
public static final String FIGHT_IG = "民风习俗因素";
public static final String POINT_IG = "重点对象因素";
public static final String POINT_IG = "作案人特殊属性";
public static final String VIOLENCE_IG ="暴力伤害行为因素";

15
src/main/java/com/biutag/supervisiondata/repository/WdpcGrjdZblxRepository.java

@ -0,0 +1,15 @@
package com.biutag.supervisiondata.repository;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.biutag.supervisiondata.mapper.wdpc.WdpcGrjdZblxMapper;
import com.biutag.supervisiondata.pojo.entity.wdpc.WdpcGrjdZblx;
import org.springframework.stereotype.Service;
/**
* @author kami on 2024-12-07 19:56:18
* @version 0.0.1
* @since 1.8
*/
@Service
public class WdpcGrjdZblxRepository extends ServiceImpl<WdpcGrjdZblxMapper, WdpcGrjdZblx> {
}

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

@ -13,20 +13,43 @@ public interface PointService {
void personPullAndSave(LocalDateTime start, LocalDateTime end);
/**
* 重点人员类型
* @param domain
*/
void syncScore(TaskParamDomain domain);
/**
* 重点人员列管类型
* @param domain
*/
void syncPointType(TaskParamDomain domain);
/**
* 同步暴力人员
* @param domain domain
*/
void syncViolence(TaskParamDomain domain);
/**
* 自杀
* @param domain domain
*/
void syncKillSelf(TaskParamDomain domain);
/**
* 涉药
* @param domain domain
*/
void syncDrug(TaskParamDomain domain);
/**
* 管控不给力
* @param domain domain
*/
void syncControlNoPower(TaskParamDomain domain);
/**
* 报警管控
* @param domain domain
*/
void syncPointCall(TaskParamDomain domain);
/**

8
src/main/java/com/biutag/supervisiondata/service/impl/GBaseJJDServiceImpl.java

@ -375,8 +375,8 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
List<GBaseJJD> jjdList;
List<RiskModelTaskClue> toInsert = new ArrayList<>();
for (RiskPersonal person : domain.getPersons()) {
jjdList = Optional.of(idCodeMap.get(person.getIdCode())).orElse(new ArrayList<>());
jjdList.addAll(Optional.of(mobileMap.get(person.getMobileNumber())).orElse(new ArrayList<>()));
jjdList = Optional.ofNullable(idCodeMap.get(person.getIdCode())).orElse(new ArrayList<>());
jjdList.addAll(Optional.ofNullable(mobileMap.get(person.getMobileNumber())).orElse(new ArrayList<>()));
if (jjdList.isEmpty()) {
continue;
}
@ -555,8 +555,8 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
* @return 要新增的clue
*/
List<RiskModelTaskClue> collectionClue(Map<String, List<GBaseJJD>> idCode, Map<String, List<GBaseJJD>> mobile,RiskPersonal personal,Map<String, List<RiskModelTaskClue>> personOldMap, RiskTask task, String tag) {
List<GBaseJJD> jjdList = Optional.of(idCode.get(personal.getIdCode())).orElse(new ArrayList<>());
jjdList.addAll(Optional.of(mobile.get(personal.getMobileNumber())).orElse(new ArrayList<>()));
List<GBaseJJD> jjdList = Optional.ofNullable(idCode.get(personal.getIdCode())).orElse(new ArrayList<>());
jjdList.addAll(Optional.ofNullable(mobile.get(personal.getMobileNumber())).orElse(new ArrayList<>()));
if (jjdList.isEmpty()) {
return new ArrayList<>();
}

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

@ -14,6 +14,7 @@ import com.biutag.supervisiondata.pojo.domain.*;
import com.biutag.supervisiondata.pojo.entity.dwd.*;
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.repository.*;
import com.biutag.supervisiondata.service.PointService;
@ -91,7 +92,7 @@ public class PointServiceImpl implements PointService {
// 全部增加
for (RiskPersonal personal : entry.getValue()) {
toInsert.add(createClue(task.getModelId(), 5, task.getId(), ClueData.builder()
.tag(personal.getTags())
.tag("重点人员")
.name(personal.getName())
.idCode(personal.getIdCode())
.eventTime(Optional.ofNullable(personal.getControlTime()).orElse(LocalDateTime.now()))
@ -106,7 +107,7 @@ public class PointServiceImpl implements PointService {
for (RiskPersonal personal : entry.getValue()) {
if (clueMap.get(personal.getTags()) == null) {
toInsert.add(createClue(task.getModelId(), 5, task.getId(), ClueData.builder()
.tag(personal.getTags())
.tag("重点人员")
.name(personal.getName())
.idCode(personal.getIdCode())
.eventTime(Optional.ofNullable(personal.getControlTime()).orElse(LocalDateTime.now()))
@ -129,6 +130,57 @@ public class PointServiceImpl implements PointService {
taskRepository.updateById(updateTask);
}
private final WdpcGrjdZblxRepository zblxRepository;
@Override
public void syncPointType(TaskParamDomain domain) {
List<WdpcGrjdZblx> lxList = zblxRepository.list(new LambdaQueryWrapper<WdpcGrjdZblx>()
.eq(WdpcGrjdZblx::getLxdm, "18"));
Map<String, WdpcGrjdZblx> map = lxList.stream().collect(Collectors.toMap(WdpcGrjdZblx::getDmbh, Function.identity(), (val, old) -> val));
List<GBaseZDRY> list = zdryRepository.getBaseMapper().syncPointPeople();
log.info("重点人员查询人数: {}", list.size());
RiskTask task = taskRepository.create(list.size(), 67);
Map<String, RiskPersonal> personalMap = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (val, old) -> val));
List<RiskModelTaskClue> olds = Optional.ofNullable(domain.getMap().get(task.getModelId())).orElse(new ArrayList<>());
Map<String, List<RiskModelTaskClue>> personMap = olds.stream().collect(Collectors.groupingBy(RiskModelTaskClue::getIdCode));
List<RiskModelTaskClue> toInsert = new ArrayList<>();
for (GBaseZDRY ry : list) {
RiskPersonal person = personalMap.get(ry.getSfzh());
if(person==null) {
continue;
}
List<String> codes = PatternUtil.takeMarkPositionToString(ry.getZdrylbbj());
if (codes.isEmpty()) {
continue;
}
List<RiskModelTaskClue> oldList = Optional.ofNullable(personMap.get(ry.getSfzh())).orElse(new ArrayList<>());
Map<String, RiskModelTaskClue> oldClue = oldList.stream().collect(Collectors.toMap(RiskModelTaskClue::getCaseIds, Function.identity(), (val, old) -> val));
for (String index : codes) {
WdpcGrjdZblx zblx = map.get(index);
if(oldClue.get(index) != null || zblx == null) {
continue;
}
toInsert.add(createClue(task.getModelId(), zblx.getScore().intValue(), task.getId(), ClueData.builder()
.id(index)
.personId(person.getId())
.tag(zblx.getDmmc())
.name(person.getName())
.idCode(person.getIdCode())
.sourceData("该人员存在标签:" + zblx.getDmmc() + ",增加风险分5分")
.build()));
}
}
if (!toInsert.isEmpty()) {
log.info("保存重点人员标签, {}");
modelTaskClueService.saveClues(toInsert, Default.POINT_IG);
}
taskRepository.updateTask(task.getId(), toInsert.size(), 0);
}
@Override
public void syncViolence(TaskParamDomain domain) {
RiskTask task = createTask(domain.getPersons().size(), 44);
@ -164,7 +216,6 @@ public class PointServiceImpl implements PointService {
.id(violence.getAjbh())
.personId(person.getId())
.idCode(person.getIdCode())
.sourceData(JSON.toJSONString(violence))
.sourceData("通过核查案件信息,发现该人员有暴力伤害行为,案件编号为:" + violence.getAjbh() + Optional.ofNullable(violence.getWfss()).map(it -> ",具体情况为:" + it).orElse(""))
.tag(violence.getAjlbmc())
.build();

17
src/main/java/com/biutag/supervisiondata/util/PatternUtil.java

@ -65,6 +65,23 @@ public class PatternUtil {
return indexes;
}
public static List<String> takeMarkPositionToString(String content) {
List<String> indexes = new ArrayList<>();
if(content == null) {
return indexes;
}
Matcher code = MARK.matcher(content);
while (code.find()) {
int index = code.start()+1;
if(index < 10) {
indexes.add("0"+index);
} else {
indexes.add(""+index);
}
}
return indexes;
}
public static void main(String[] args) {
String test = "00001100101";
log.info("{}", takeMarkPosition(test));

Loading…
Cancel
Save