Browse Source

不良嗜好多合一

master
kami 1 year ago
parent
commit
63170f118c
  1. 21
      src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java
  2. 2
      src/main/java/com/biutag/supervisiondata/pojo/constants/RedisKey.java
  3. 2
      src/main/java/com/biutag/supervisiondata/pojo/entity/wdpc/WdpcGrjdXfsj.java
  4. 2
      src/main/java/com/biutag/supervisiondata/pojo/entity/wdpc/WdpcGrjdXfsjCs.java
  5. 5
      src/main/java/com/biutag/supervisiondata/rest/ApiController.java
  6. 6
      src/main/java/com/biutag/supervisiondata/service/PersonalService.java
  7. 2
      src/main/java/com/biutag/supervisiondata/service/PointService.java
  8. 2
      src/main/java/com/biutag/supervisiondata/service/impl/GBaseSHRWFRServiceImpl.java
  9. 40
      src/main/java/com/biutag/supervisiondata/service/impl/HabitServiceImpl.java
  10. 13
      src/main/java/com/biutag/supervisiondata/service/impl/PersonalServiceImpl.java
  11. 2
      src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java
  12. 26
      src/main/java/com/biutag/supervisiondata/service/impl/PoliceServiceImpl.java
  13. 2
      src/main/java/com/biutag/supervisiondata/service/impl/RiskScoreRuleServiceImpl.java
  14. 51
      src/main/java/com/biutag/supervisiondata/task/TaskService.java

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

@ -19,6 +19,7 @@ import org.springframework.context.event.EventListener;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
@ -98,27 +99,25 @@ public class ApplicationEvent {
@EventListener(ApplicationReadyEvent.class)
public void serviceReady() {
RedisDao.getInstance().init(redisTemplate);
LocalDateTime start = LocalDateTime.of(2023, 12, 6, 0, 0, 0);
LocalDateTime end = LocalDateTime.now();
LocalDateTime end = LocalDate.now().minusDays(1).atTime(23,59,59);
CompletableFutureUtil.runSync(() -> {
personalService.init();
personalService.pullInvestigate();
personalService.pullPsychosis();
gBaseSHRWFRService.pullAndSave(start, end);
petitionService.personPullAndSave(start, end);
personalService.pullPetitionAgain();
pointService.personPullAndSave(start, end);
gBaseJJDService.pullAndSave(start, end);
gBaseSHRWFRService.pullAndSave(LocalDateTime.of(2019,12,6,0,0,0), end);
petitionService.personPullAndSave(LocalDateTime.of(2023, 12, 6, 0, 0, 0), end);
personalService.pullPetitionAgain(LocalDateTime.of(2000, 12, 6, 0, 0, 0), end);
pointService.personPullAndSave();
gBaseJJDService.pullAndSave(LocalDateTime.of(2023, 12, 6, 0, 0, 0), end);
riskPersonalService.fixed();
personalService.syncPerson();
personalService.syncPerson(LocalDate.now());
petitionService.petitionModelTask(initDomain(List.of(40)));
riskTaskService.eduAndAreaModelTask(initDomain(List.of(34,41)));
riskTaskService.infoModelTask(initDomain(List.of(32,33)));
marriageService.marriageModelTask(initDomain(List.of(39,51)));
pointService.syncSecurity(initDomain(List.of(37)));
habitService.habitModelTask(start, initDomain(List.of(36,60,61,62)));
habitService.habitModelTask(LocalDateTime.of(2023, 12, 6, 0, 0, 0), initDomain(List.of(36,60,61,62)));
pointService.syncCarUser(initDomain(List.of(53)));
pointService.syncScore(initDomain(List.of(43)));
pointService.syncViolence(initDomain(List.of(44)));
@ -126,7 +125,7 @@ public class ApplicationEvent {
pointService.syncDrug(initDomain(List.of(37)));
pointService.syncControlNoPower(initDomain(List.of(48)));
pointService.syncOilBuy(initDomain(List.of(52)));
gBaseJJDService.pullPoliceInstance(start, end, initDomain(List.of(55,56,57,58)));
gBaseJJDService.pullPoliceInstance(LocalDateTime.of(2023, 12, 6, 0, 0, 0), end, initDomain(List.of(55,56,57,58)));
jsbryService.syncPys(initDomain(List.of(59)));
gBaseSHRWFRService.combatCrime(initDomain(List.of(63)));
gBaseJJDService.syncPoliceAttack(initDomain(List.of(64)));

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

@ -25,4 +25,6 @@ public class RedisKey {
public static final String REVENGE = "revenge";
public static final String REVENGE_INFO = "revenge:info";
public static final String WEIGHT_SCORE = "weight:score";
}

2
src/main/java/com/biutag/supervisiondata/pojo/entity/wdpc/WdpcGrjdXfsj.java

@ -17,4 +17,6 @@ public class WdpcGrjdXfsj {
String name;
@TableField("`id_code`")
String idCode;
@TableField("`create_time`")
String createTime;
}

2
src/main/java/com/biutag/supervisiondata/pojo/entity/wdpc/WdpcGrjdXfsjCs.java

@ -17,4 +17,6 @@ public class WdpcGrjdXfsjCs {
String name;
@TableField("`id_code`")
String idCode;
@TableField("`create_time`")
String createTime;
}

5
src/main/java/com/biutag/supervisiondata/rest/ApiController.java

@ -9,6 +9,7 @@ import com.biutag.supervisiondata.common.response.RS;
import com.biutag.supervisiondata.config.cache.RedisDao;
import com.biutag.supervisiondata.lock.LocalLock;
import com.biutag.supervisiondata.pojo.constants.Prompt;
import com.biutag.supervisiondata.pojo.constants.RedisKey;
import com.biutag.supervisiondata.pojo.entity.ads.GBaseSYRKXX;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseJJD;
import com.biutag.supervisiondata.pojo.entity.wdpc.WdpcJJDAi;
@ -47,9 +48,11 @@ public class ApiController {
CompletableFutureUtil.runSync(() -> {
try {
if(idCodes == null) {
RedisDao.getInstance().set(RedisKey.WEIGHT_SCORE, weight);
riskScoreRuleService.runScore(new ArrayList<>(), weight);
} else {
riskScoreRuleService.runScore(List.of(idCodes.split(",")), weight);
String we = Optional.ofNullable(weight).orElse((String)RedisDao.getInstance().get(RedisKey.WEIGHT_SCORE));
riskScoreRuleService.runScore(List.of(idCodes.split(",")), we);
}
} catch (Exception e) {
log.error("", e);

6
src/main/java/com/biutag/supervisiondata/service/PersonalService.java

@ -1,5 +1,6 @@
package com.biutag.supervisiondata.service;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
@ -37,7 +38,7 @@ public interface PersonalService {
/**
* 另一个表的信访
*/
void pullPetitionAgain();
void pullPetitionAgain(LocalDateTime startTime, LocalDateTime end);
/**
* 推送排查人员四无
*/
@ -52,8 +53,9 @@ public interface PersonalService {
/**
* 同步人员到gbase
* @param date 哪一天入库的
*/
void syncPerson();
void syncPerson(LocalDate date);
/**
* 同步人员证照

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

@ -11,7 +11,7 @@ import java.time.LocalDateTime;
*/
public interface PointService {
void personPullAndSave(LocalDateTime start, LocalDateTime end);
void personPullAndSave();
/**
* 重点人员类型

2
src/main/java/com/biutag/supervisiondata/service/impl/GBaseSHRWFRServiceImpl.java

@ -78,7 +78,7 @@ public class GBaseSHRWFRServiceImpl implements GBaseSHRWFRService {
CompletableFuture.allOf(
CompletableFutureUtil.runSyncObject(() -> shrTmp.addAll(shrxxRepository.getBaseMapper().selectSHData(start.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
end.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))))),
CompletableFutureUtil.runSyncObject(() -> wfrTmp.addAll(wfrxxRepository.getBaseMapper().selectWFData("2019-12-06 00:00:00",
CompletableFutureUtil.runSyncObject(() -> wfrTmp.addAll(wfrxxRepository.getBaseMapper().selectWFData(start.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
end.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")))))
).join();
// 信息全的数据

40
src/main/java/com/biutag/supervisiondata/service/impl/HabitServiceImpl.java

@ -92,12 +92,9 @@ public class HabitServiceImpl implements HabitService {
ajNos3.add(gBaseAJJBXX.getAjbh());
}
}
RiskTask task = createTask(ajNos.size(), 36);
riskTaskRepository.save(task);
RiskTask task2 = createTask(ajNos2.size(), 60);
riskTaskRepository.save(task2);
RiskTask task3 = createTask(ajNos3.size(), 61);
riskTaskRepository.save(task3);
RiskTask task = riskTaskRepository.create(ajNos.size(), 36);
RiskTask task2 = riskTaskRepository.create(ajNos2.size(), 60);
RiskTask task3 = riskTaskRepository.create(ajNos3.size(), 61);
log.info("共计案件:{} | {} | {}", ajNos.size(), ajNos2.size(), ajNos3.size());
@ -123,13 +120,12 @@ public class HabitServiceImpl implements HabitService {
riskModelTaskClueService.saveClues(toInsert3, Default.HABBIT_IG);
}
updateTask(task.getId(), toInsert1.size(), 0);
updateTask(task2.getId(), toInsert2.size(), 0);
updateTask(task3.getId(), toInsert3.size(), 0);
riskTaskRepository.updateTask(task.getId(), toInsert1.size(), 0);
riskTaskRepository.updateTask(task2.getId(), toInsert2.size(), 0);
riskTaskRepository.updateTask(task3.getId(), toInsert3.size(), 0);
// 近一年酗酒
RiskTask task4 = createTask(toInsert1.size(), 62);
riskTaskRepository.save(task4);
RiskTask task4 = riskTaskRepository.create(toInsert1.size(), 62);
Map<String, RiskModelTaskClue> old = domain.getOldMap(task4.getModelId(), true);
@ -170,7 +166,7 @@ public class HabitServiceImpl implements HabitService {
if(!toUpdate.isEmpty()) {
riskModelTaskClueService.deleteCluesAndDeleteTag(toUpdate, idCodes, Default.YEAR_DRINK);
}
updateTask(task4.getId(), toInsertYears.size(), toUpdate.size());
riskTaskRepository.updateTask(task4.getId(), toInsertYears.size(), toUpdate.size());
}
List<RiskModelTaskClue> findBadHabit(List<String> ajNos, List<GBaseAJJBXX> targetAjList, RiskTask task, TaskParamDomain domain, String tag) {
@ -239,26 +235,6 @@ public class HabitServiceImpl implements HabitService {
return toInsert;
}
RiskTask createTask(Integer size, Integer modelId) {
RiskTask task = new RiskTask();
task.setModelId(modelId);
task.setStartTime(LocalDateTime.now());
task.setState(0);
task.setScanSize(size);
return task;
}
void updateTask(Integer taskId, Integer size, Integer updateSize) {
RiskTask updateTask = new RiskTask();
updateTask.setId(taskId);
updateTask.setInsertSize(size);
updateTask.setUpdateSize(updateSize);
updateTask.setState(1);
updateTask.setEndTime(LocalDateTime.now());
riskTaskRepository.updateById(updateTask);
}
RiskModelTaskClue createClue(Integer modelId, Integer score, Integer taskId, ClueData data) {
RiskModelTaskClue clue = new RiskModelTaskClue();
clue.setModelId(modelId);

13
src/main/java/com/biutag/supervisiondata/service/impl/PersonalServiceImpl.java

@ -317,9 +317,12 @@ public class PersonalServiceImpl implements PersonalService {
private final WdpcGrjdXfsjRepository xfsjRepository;
@Override
public void pullPetitionAgain() {
public void pullPetitionAgain(LocalDateTime startTime, LocalDateTime end) {
List<String> idCodes = new ArrayList<>();
CompletableFuture.allOf(CompletableFutureUtil.runSyncObject(() -> idCodes.addAll(xfsjRepository.list(new LambdaQueryWrapper<WdpcGrjdXfsj>().select(WdpcGrjdXfsj::getIdCode, WdpcGrjdXfsj::getName)).stream().map(WdpcGrjdXfsj::getIdCode).toList())), CompletableFutureUtil.runSyncObject(() -> idCodes.addAll(xfsjCsRepository.list(new LambdaQueryWrapper<WdpcGrjdXfsjCs>().select(WdpcGrjdXfsjCs::getIdCode, WdpcGrjdXfsjCs::getName)).stream().map(WdpcGrjdXfsjCs::getIdCode).toList()))).join();
CompletableFuture.allOf(
CompletableFutureUtil.runSyncObject(() -> idCodes.addAll(xfsjRepository.list(new LambdaQueryWrapper<WdpcGrjdXfsj>().select(WdpcGrjdXfsj::getIdCode, WdpcGrjdXfsj::getName).between(WdpcGrjdXfsj::getCreateTime, startTime.format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")), end.format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")))).stream().map(WdpcGrjdXfsj::getIdCode).toList())),
CompletableFutureUtil.runSyncObject(() -> idCodes.addAll(xfsjCsRepository.list(new LambdaQueryWrapper<WdpcGrjdXfsjCs>().select(WdpcGrjdXfsjCs::getIdCode, WdpcGrjdXfsjCs::getName).between(WdpcGrjdXfsjCs::getCreateTime, startTime.format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")), end.format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")))).stream().map(WdpcGrjdXfsjCs::getIdCode).toList()))
).join();
List<String> idCards = idCodes.stream().distinct().toList();
List<List<String>> idCards2 = IntStream.range(0, (idCards.size() + 9999) / 10000)
@ -482,12 +485,9 @@ public class PersonalServiceImpl implements PersonalService {
@Override
public void init() {
riskTestRepository.getBaseMapper().truncateControl();
riskTestRepository.getBaseMapper().truncateClue();
riskTestRepository.getBaseMapper().truncatePerson();
riskTestRepository.getBaseMapper().truncateTag();
riskTestRepository.getBaseMapper().truncateTask();
riskTestRepository.getBaseMapper().truncateTable();
}
private final WdpcPersonRepository wdpcPersonRepository;
@ -495,8 +495,7 @@ public class PersonalServiceImpl implements PersonalService {
private final RiskPersonalRepository personalRepository;
@Override
public void syncPerson() {
wdpcPersonRepository.getBaseMapper().truncateTable();
public void syncPerson(LocalDate date) {
List<RiskPersonal> personals = personalRepository.list(new LambdaQueryWrapper<RiskPersonal>()
.select(RiskPersonal::getIdCode, RiskPersonal::getId)
.eq(RiskPersonal::getDel, 0));

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

@ -94,7 +94,7 @@ public class PointServiceImpl implements PointService {
private final RiskModelTaskClueRepository riskModelTaskClueRepository;
@Override
public void personPullAndSave(LocalDateTime start, LocalDateTime end) {
public void personPullAndSave() {
riskPersonalService.formatAndSave(getPersons(), Default.POINT_POEPLE);
}

26
src/main/java/com/biutag/supervisiondata/service/impl/PoliceServiceImpl.java

@ -55,8 +55,7 @@ public class PoliceServiceImpl implements PoliceService {
@Override
public void contradictModelTask(TaskParamDomain domain) {
RiskTask task = createTask(domain.getPersons().size(), 38);
riskTaskRepository.save(task);
RiskTask task = riskTaskRepository.create(domain.getPersons().size(), 38);
List<GBaseJJD> jjds = new ArrayList<>();
for (List<String> idCard : domain.getIdCards()) {
@ -140,22 +139,10 @@ public class PoliceServiceImpl implements PoliceService {
riskPersonalRepository.updateBatchById(toUpdatePerson, 5000);
}
// if(!toInsertTags.isEmpty()) {
// log.info("操作新增标签数据:{}",toInsertTags.size());
// tagService.saveBatchTag(toInsertTags, Default.BIG_TAG_TRUBO);
// }
if(!updateClueList.isEmpty()) {
taskClueRepository.updateBatchById(updateClueList, 10000);
}
RiskTask updateTask = new RiskTask();
updateTask.setId(task.getId());
updateTask.setInsertSize(toInsert.size());
updateTask.setUpdateSize(toUpdatePerson.size());
updateTask.setState(1);
updateTask.setEndTime(LocalDateTime.now());
riskTaskRepository.updateById(updateTask);
riskTaskRepository.updateTask(task.getId(), toInsert.size(), toUpdatePerson.size());
}
private static RiskPersonal getRiskPersonal(RiskPersonal person, RiskPersonalControlRecord tmpRecord) {
@ -186,15 +173,6 @@ public class PoliceServiceImpl implements PoliceService {
return clue;
}
RiskTask createTask(Integer size, Integer modelId) {
RiskTask task = new RiskTask();
task.setModelId(modelId);
task.setStartTime(LocalDateTime.now());
task.setState(0);
task.setScanSize(size);
return task;
}
RiskPersonalControlRecord createControlRecord(RiskPersonal person, GBaseJJD jjd, String tag) {
RiskPersonalControlRecord controlRecord = new RiskPersonalControlRecord();
controlRecord.setName(person.getName());

2
src/main/java/com/biutag/supervisiondata/service/impl/RiskScoreRuleServiceImpl.java

@ -3,6 +3,8 @@ package com.biutag.supervisiondata.service.impl;
import cn.hutool.core.util.NumberUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.biutag.supervisiondata.config.cache.RedisDao;
import com.biutag.supervisiondata.pojo.constants.RedisKey;
import com.biutag.supervisiondata.pojo.entity.mine.Model;
import com.biutag.supervisiondata.pojo.entity.mine.RiskModelTaskClue;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonal;

51
src/main/java/com/biutag/supervisiondata/task/TaskService.java

@ -1,6 +1,6 @@
package com.biutag.supervisiondata.task;
import com.biutag.supervisiondata.service.ModelClueService;
import com.biutag.supervisiondata.service.*;
import lombok.AllArgsConstructor;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervisiondata.pojo.domain.TaskParamDomain;
@ -8,12 +8,13 @@ import com.biutag.supervisiondata.pojo.entity.mine.RiskModelTaskClue;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonal;
import com.biutag.supervisiondata.repository.RiskModelTaskClueRepository;
import com.biutag.supervisiondata.repository.RiskPersonalRepository;
import com.biutag.supervisiondata.service.PointService;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@ -29,9 +30,6 @@ import java.util.stream.Collectors;
@AllArgsConstructor
public class TaskService {
@Resource
private PointService pointService;
@Resource
private RiskPersonalRepository riskPersonalRepository;
private final ModelClueService modelClueService;
@ -39,12 +37,49 @@ public class TaskService {
@Resource
private RiskModelTaskClueRepository riskModelTaskClueRepository;
@Resource
private PersonalService personalService;
@Resource
private final GBaseSHRWFRService gBaseSHRWFRService;
@Resource
private PetitionService petitionService;
@Resource
private PointService pointService;
@Resource
private GBaseJJDService gBaseJJDService;
@Resource
private RiskPersonalService riskPersonalService;
/**
* 1点半执行
* 1点半更新人员
*/
@Scheduled(cron = "0 30 01 * * ?")
public void ageModel() {
// pointService.syncPointCall(initDomain());
public void personRefresh() {
LocalDateTime start = LocalDate.now().minusDays(1).atTime(0,0,0);
LocalDateTime end = LocalDate.now().minusDays(1).atTime(23,59,59);
personalService.pullInvestigate();
personalService.pullPsychosis();
petitionService.personPullAndSave(start, end);
gBaseSHRWFRService.pullAndSave(start, end);
personalService.pullPetitionAgain(start, end);
pointService.personPullAndSave();
gBaseJJDService.pullAndSave(start, end);
riskPersonalService.fixed();
personalService.syncPerson(LocalDate.now());
}
/**
* 1点更新机构缓存
*/
@Scheduled(cron = "0 0 01 * * ?")
public void cacheRefresh() {
}
TaskParamDomain initDomain() {

Loading…
Cancel
Save