Browse Source

Merge remote-tracking branch 'origin/master'

master
sjh 1 year ago
parent
commit
a6912856ee
  1. 3
      src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java
  2. 17
      src/main/java/com/biutag/supervisiondata/rest/ApiController.java
  3. 2
      src/main/java/com/biutag/supervisiondata/service/impl/AiServiceImpl.java
  4. 6
      src/main/java/com/biutag/supervisiondata/service/impl/DictServiceImpl.java
  5. 47
      src/main/java/com/biutag/supervisiondata/service/impl/GBaseBAServiceImpl.java
  6. 30
      src/main/java/com/biutag/supervisiondata/service/impl/GBaseJJDServiceImpl.java
  7. 11
      src/main/java/com/biutag/supervisiondata/service/impl/GBaseSHRWFRServiceImpl.java
  8. 1
      src/main/java/com/biutag/supervisiondata/service/impl/HabitServiceImpl.java
  9. 7
      src/main/java/com/biutag/supervisiondata/service/impl/NoControlServiceImpl.java
  10. 2
      src/main/java/com/biutag/supervisiondata/service/impl/PersonalServiceImpl.java
  11. 36
      src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java
  12. 57
      src/main/java/com/biutag/supervisiondata/service/impl/PoliceServiceImpl.java
  13. 13
      src/main/java/com/biutag/supervisiondata/service/impl/RiskModelTaskClueServiceImpl.java
  14. 4
      src/main/java/com/biutag/supervisiondata/service/impl/RiskPersonalControlRecordImpl.java
  15. 25
      src/main/java/com/biutag/supervisiondata/service/impl/RiskPersonalServiceImpl.java
  16. 4
      src/main/java/com/biutag/supervisiondata/service/impl/RiskTaskServiceImpl.java

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

@ -111,6 +111,7 @@ public class ApplicationEvent {
// gBaseJJDService.pullAndSave(LocalDateTime.of(2023, 12, 6, 0, 0, 0), end);
// riskPersonalService.fixed();
// personalService.syncPerson(LocalDate.now());
// petitionService.petitionModelTask(initDomain(List.of(40)));
// riskTaskService.eduAndAreaModelTask(initDomain(List.of(34,41)));
// riskTaskService.infoModelTask(initDomain(List.of(32,33)));
@ -128,7 +129,7 @@ public class ApplicationEvent {
// jsbryService.syncPys(initDomain(List.of(59)));
// gBaseSHRWFRService.combatCrime(initDomain(List.of(63)));
// gBaseJJDService.warningInstance(initDomain(List.of(64)));
// gBaseJJDService.syncHomeViolence(initDomain(List.of(65,66)));
gBaseJJDService.syncHomeViolence(initDomain(List.of(65,66)));
// pointService.syncPointType(initDomain(List.of(67)));
// gBaseSHRWFRService.hadWork(initDomain(List.of(68)));
// gBaseJJDService.syncParentRelation(initDomain(List.of(69,70)));

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

@ -3,17 +3,14 @@ package com.biutag.supervisiondata.rest;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervisiondata.common.interfaces.CompletableFutureUtil;
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;
import com.biutag.supervisiondata.repository.GBaseSYRKXXRepository;
import com.biutag.supervisiondata.repository.WdpcJJDAiRepository;
import com.biutag.supervisiondata.service.ModelClueService;
import com.biutag.supervisiondata.service.PersonalService;
@ -67,13 +64,13 @@ public class ApiController {
@GetMapping("/image")
public RS<String> image() {
CompletableFutureUtil.runSync(() -> personalService.syncPersonImage());
CompletableFutureUtil.runSync(personalService::syncPersonImage);
return RS.success();
}
@GetMapping("/local/image")
public RS<String> localImage() {
CompletableFutureUtil.runSync(() -> personalService.syncLocalImage());
CompletableFutureUtil.runSync(personalService::syncLocalImage);
return RS.success();
}
@ -100,8 +97,6 @@ public class ApiController {
obj.getString("cjqk"))).toJSONString();
}
private final GBaseSYRKXXRepository repository;
private final WdpcJJDAiRepository aiRepository;
@CrossOrigin
@ -129,8 +124,6 @@ public class ApiController {
log.info("{}", array);
List<WdpcJJDAi> aiList = new ArrayList<>();
Map<String, Integer> group = new WeakHashMap<>();
List<String> idCodes = new ArrayList<>();
List<String> mobiles = new ArrayList<>();
for (int i = 0; i < array.size(); i++) {
WdpcJJDAi ai = new WdpcJJDAi();
JSONObject obj = array.getJSONObject(i);
@ -146,12 +139,6 @@ public class ApiController {
ai.setIdCodes(Optional.ofNullable(idCodesCache).orElse(""));
ai.setMobiles(Optional.ofNullable(mobilesCache).orElse(""));
if(!ai.getIdCode().isEmpty() && !ai.getIdCode().equals("暂无")) {
idCodes.add(ai.getIdCode());
}
if(!ai.getMobile().isEmpty() && !ai.getMobile().equals("暂无")) {
mobiles.add(ai.getMobile());
}
aiList.add(ai);
}
if(!aiList.isEmpty()) {

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

@ -52,7 +52,7 @@ public class AiServiceImpl implements AiService {
wdpcJJDS.add(jjd);
try {
jjd.setBjsj(gBaseJJD.getBjsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
} catch (Exception e) {}
} catch (Exception ignored) {}
connection.rPush(key.serialize(RedisKey.JJD_CACHE), value.serialize(JSON.toJSONString(jjd)));
}));
wdpcJJDRepository.saveBatch(wdpcJJDS, 10000);

6
src/main/java/com/biutag/supervisiondata/service/impl/DictServiceImpl.java

@ -2,15 +2,12 @@ package com.biutag.supervisiondata.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseZDXL;
import com.biutag.supervisiondata.pojo.entity.mine.RiskModelTaskClue;
import com.biutag.supervisiondata.repository.GBaseZDXLRepository;
import com.biutag.supervisiondata.service.DictService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
@ -32,7 +29,6 @@ public class DictServiceImpl implements DictService {
public Map<String, GBaseZDXL> syncPointType() {
List<GBaseZDXL> xlList = zdxlRepository.list(new LambdaQueryWrapper<GBaseZDXL>()
.select(GBaseZDXL::getId, GBaseZDXL::getDefine, GBaseZDXL::getFjdid));
Map<String, GBaseZDXL> map = xlList.stream().collect(Collectors.toMap(GBaseZDXL::getId, Function.identity(), (oldValue, newValue) -> newValue));
return map;
return xlList.stream().collect(Collectors.toMap(GBaseZDXL::getId, Function.identity(), (oldValue, newValue) -> newValue));
}
}

47
src/main/java/com/biutag/supervisiondata/service/impl/GBaseBAServiceImpl.java

@ -1,11 +1,8 @@
package com.biutag.supervisiondata.service.impl;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervisiondata.common.interfaces.CompletableFutureUtil;
import com.biutag.supervisiondata.pojo.constants.Default;
import com.biutag.supervisiondata.pojo.domain.TaskParamDomain;
import com.biutag.supervisiondata.pojo.entity.ads.GBaseSYRKXX;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseBAXX;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseBAYJ;
import com.biutag.supervisiondata.pojo.entity.mine.RiskModelTaskClue;
@ -26,10 +23,8 @@ import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CompletableFuture;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -56,8 +51,7 @@ public class GBaseBAServiceImpl implements GBaseBAService {
@Description("暂时用pointService里面的保安,那边数据多,但是有情况不对")
@Override
public void baModelTask(TaskParamDomain domain) {
RiskTask task = createTask(domain.getPersons().size(), 37);
riskTaskRepository.save(task);
RiskTask task = riskTaskRepository.create(domain.getPersons().size(), 37);
List<GBaseBAXX> xxList = getXX(domain);
@ -78,9 +72,9 @@ public class GBaseBAServiceImpl implements GBaseBAService {
}
LocalDate date;
try {
if (tmp.getRzsj().indexOf("-") != -1) {
if (tmp.getRzsj().contains("-")) {
date = LocalDate.parse(tmp.getRzsj(), DateTimeFormatter.ofPattern("yyyy-MM-dd"));
} else if(tmp.getRzsj().indexOf(".") != -1) {
} else if(tmp.getRzsj().contains(".")) {
date = LocalDate.parse(tmp.getRzsj(), DateTimeFormatter.ofPattern("yyyy.M.d"));
} else {
date = LocalDate.parse(tmp.getRzsj(), DateTimeFormatter.ofPattern("yyyy年MM月dd日"));
@ -92,9 +86,9 @@ public class GBaseBAServiceImpl implements GBaseBAService {
for (GBaseBAXX gBaseBAXX : entry.getValue()) {
LocalDate t;
try {
if (gBaseBAXX.getRzsj().indexOf("-") != -1) {
if (gBaseBAXX.getRzsj().contains("-")) {
t = LocalDate.parse(gBaseBAXX.getRzsj(), DateTimeFormatter.ofPattern("yyyy-MM-dd"));
} else if(tmp.getRzsj().indexOf(".") != -1) {
} else if(tmp.getRzsj().contains(".")) {
t = LocalDate.parse(tmp.getRzsj(), DateTimeFormatter.ofPattern("yyyy.M.d"));
} else {
t = LocalDate.parse(tmp.getRzsj(), DateTimeFormatter.ofPattern("yyyy年MM月dd日"));
@ -137,14 +131,7 @@ public class GBaseBAServiceImpl implements GBaseBAService {
log.info("修改线索条数 | {}", toUpdate.size());
clueRepository.updateBatchById(toUpdate);
}
RiskTask updateTask = new RiskTask();
updateTask.setId(task.getId());
updateTask.setInsertSize(toInsert.size());
updateTask.setUpdateSize(toUpdate.size());
updateTask.setState(1);
updateTask.setEndTime(LocalDateTime.now());
riskTaskRepository.updateById(updateTask);
riskTaskRepository.updateTask(task.getId(), toInsert.size(), toUpdate.size());
}
RiskModelTaskClue createClue(Integer modelId, Integer score, RiskPersonal person, Integer taskId, String reason, String data, LocalDateTime eventTime) {
@ -171,26 +158,4 @@ public class GBaseBAServiceImpl implements GBaseBAService {
}
return list;
}
List<GBaseBAXX> getYJ(TaskParamDomain domain) {
List<GBaseBAXX> list = new ArrayList<>();
for (List<String> idCard : domain.getIdCards()) {
List<GBaseBAYJ> tmp = gBaseBAYJRepository.list(new LambdaQueryWrapper<GBaseBAYJ>()
.select(GBaseBAYJ::getXm, GBaseBAYJ::getSfzhm, GBaseBAYJ::getZw, GBaseBAYJ::getRyztmc, GBaseBAYJ::getRyztmc, GBaseBAYJ::getRzsj)
.in(GBaseBAYJ::getSfzhm, idCard));
for (GBaseBAYJ gBaseBAYJ : tmp) {
}
}
return list;
}
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;
}
}

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

@ -209,7 +209,7 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
continue;
}
GBaseJJD tmp = jjds.getFirst();
jjds.remove(0);
jjds.removeFirst();
for (GBaseJJD jjd : jjds) {
try {
LocalDateTime time = jjd.getBjsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
@ -362,9 +362,6 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
// 手机号相关警情
Map<String, List<GBaseJJD>> mobileMap = new WeakHashMap<>();
List<String> idCodes = new ArrayList<>();
List<String> mobiles = new ArrayList<>();
for (GBaseJJD gBaseJJD : result) {
String idCard = PatternUtil.takeIdCard(gBaseJJD.getCjqk());
if (idCard.isEmpty()) {
@ -373,12 +370,6 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
if (!idCard.isEmpty()) {
List<String> tmp = Arrays.stream(idCard.split(",")).toList();
// 如果有多个号码,防止警察证件被录入
if (tmp.size() > 1) {
for (int i = 1; i < tmp.size(); i++) {
mobiles.add(tmp.get(i));
}
}
idCodes.addAll(tmp);
for (String s : tmp) {
idCodeMap.computeIfAbsent(s, k -> new ArrayList<>()).add(gBaseJJD);
}
@ -391,11 +382,6 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
if (!mobile.isEmpty()) {
List<String> tmp = Arrays.stream(idCard.split(",")).toList();
// 如果有多个号码,防止警察证件被录入
if (tmp.size() > 1) {
for (int i = 1; i < tmp.size(); i++) {
mobiles.add(tmp.get(i));
}
}
for (String s : tmp) {
mobileMap.computeIfAbsent(s, k -> new ArrayList<>()).add(gBaseJJD);
}
@ -664,7 +650,7 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
clueService.saveClues(toInsert2, "B52对他人家暴");
}
if (!toUpdate2.isEmpty()) {
clueService.deleteCluesAndDeleteTag(toUpdate2, deleteIdCards, "家暴");
clueService.deleteCluesAndDeleteTag(toUpdate2, deleteIdCards2, "家暴");
}
taskRepository.updateTask(task.getId(), toInsert.size(), toUpdate.size());
taskRepository.updateTask(task2.getId(), toInsert.size(), toUpdate2.size());
@ -1002,10 +988,10 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
continue;
}
String mobile = PatternUtil.takeMobile(gBaseJJD.getCjqk());
if (idCard.isEmpty()) {
if (mobile.isEmpty()) {
mobile = PatternUtil.takeMobile(gBaseJJD.getBjnr());
}
if (idCard.isEmpty()) {
if (mobile.isEmpty()) {
continue;
}
mobiles.addAll(Arrays.stream(mobile.split(",")).toList());
@ -1045,7 +1031,7 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
for (RiskPersonal person : domain.getPersons()) {
List<GBaseJJD> jjdList = Optional.ofNullable(idCodesMap.get(person.getIdCode())).orElse(new ArrayList<>());
jjdList = jjdList.stream().filter(StreamUtil.distinctByKey(GBaseJJD::getJjdbh)).toList();
if (jjdList == null || jjdList.isEmpty()) {
if (jjdList.isEmpty()) {
continue;
}
List<RiskModelTaskClue> olds = personMap.get(person.getIdCode());
@ -1276,7 +1262,7 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
for (RiskPersonal person : domain.getPersons()) {
List<GBaseJJD> jjdList = Optional.ofNullable(idCodeMap.get(person.getIdCode())).orElse(new ArrayList<>());
jjdList = jjdList.stream().filter(StreamUtil.distinctByKey(GBaseJJD::getJjdbh)).toList();
if (jjdList == null || jjdList.isEmpty()) {
if (jjdList.isEmpty()) {
continue;
}
List<RiskModelTaskClue> olds = personMap.get(person.getIdCode());
@ -1387,9 +1373,7 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
void toRedisCache(List<GBaseJJD> jjdList, String keyName) {
RedisDao.getInstance().removeListAll(keyName);
RedisDao.getInstance().pipeLineExec((connection, key, value) -> jjdList.forEach(item -> {
connection.rPush(key.serialize(keyName), value.serialize(JSON.toJSONString(item)));
}));
RedisDao.getInstance().pipeLineExec((connection, key, value) -> jjdList.forEach(item -> connection.rPush(key.serialize(keyName), value.serialize(JSON.toJSONString(item)))));
}
/**

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

@ -11,7 +11,6 @@ import com.biutag.supervisiondata.pojo.domain.Drug;
import com.biutag.supervisiondata.pojo.domain.TaskParamDomain;
import com.biutag.supervisiondata.pojo.domain.WFSHPerson;
import com.biutag.supervisiondata.pojo.entity.ads.GBaseSYRKXX;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseJJD;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseWFRXX;
import com.biutag.supervisiondata.pojo.entity.mine.RiskModelTaskClue;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonal;
@ -23,12 +22,10 @@ import com.biutag.supervisiondata.repository.*;
import com.biutag.supervisiondata.service.GBaseSHRWFRService;
import com.biutag.supervisiondata.service.RiskModelTaskClueService;
import com.biutag.supervisiondata.service.RiskPersonalService;
import com.biutag.supervisiondata.util.BhUtil;
import com.biutag.supervisiondata.util.DataUtil;
import com.biutag.supervisiondata.util.IdCodeUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cglib.core.Local;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
@ -193,12 +190,12 @@ public class GBaseSHRWFRServiceImpl implements GBaseSHRWFRService {
}
}
StringBuilder tmp = new StringBuilder("该人员");
if (zm.length() > 0) {
tmp.append("因:").append(zm.substring(0, zm.length() - 1));
if (!zm.isEmpty()) {
tmp.append("因:").append(zm, 0, zm.length() - 1);
}
tmp.append(" 已被打击处理过");
if (aj.length() > 0) {
tmp.append("具体案件编号:").append(aj.substring(0, aj.length() - 1));
if (!aj.isEmpty()) {
tmp.append("具体案件编号:").append(aj, 0, aj.length() - 1);
}
toInsert.add(DataUtil.createClueData(task, ClueData.builder()
// 案件编号、接警单编号之类

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

@ -14,7 +14,6 @@ import com.biutag.supervisiondata.pojo.entity.mine.RiskTask;
import com.biutag.supervisiondata.repository.*;
import com.biutag.supervisiondata.service.HabitService;
import com.biutag.supervisiondata.service.RiskModelTaskClueService;
import com.biutag.supervisiondata.util.BhUtil;
import com.biutag.supervisiondata.util.DataUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;

7
src/main/java/com/biutag/supervisiondata/service/impl/NoControlServiceImpl.java

@ -1,30 +1,23 @@
package com.biutag.supervisiondata.service.impl;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import com.biutag.supervisiondata.common.interfaces.CompletableFutureUtil;
import com.biutag.supervisiondata.pojo.ClueData;
import com.biutag.supervisiondata.pojo.constants.Default;
import com.biutag.supervisiondata.pojo.domain.*;
import com.biutag.supervisiondata.pojo.entity.mine.RiskModelTaskClue;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonal;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonalTag;
import com.biutag.supervisiondata.pojo.entity.mine.RiskTask;
import com.biutag.supervisiondata.repository.GBaseZDRYRepository;
import com.biutag.supervisiondata.repository.RiskPersonalRepository;
import com.biutag.supervisiondata.repository.RiskTaskRepository;
import com.biutag.supervisiondata.service.NoControlService;
import com.biutag.supervisiondata.service.RiskModelTaskClueService;
import com.biutag.supervisiondata.service.RiskPersonalTagService;
import com.biutag.supervisiondata.util.DataUtil;
import com.biutag.supervisiondata.util.IdCodeUtil;
import com.biutag.supervisiondata.util.BhUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.*;
import java.util.concurrent.CompletableFuture;

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

@ -482,8 +482,6 @@ public class PersonalServiceImpl implements PersonalService {
}
}
private final RiskTestRepository riskTestRepository;
private final RiskModelTaskClueRepository riskModelTaskClueRepository;
private final RiskPersonalTagRepository tagRepository;

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

@ -1698,8 +1698,7 @@ public class PointServiceImpl implements PointService {
@Override
public void syncIsPetition(TaskParamDomain domain) {
RiskTask task = createTask(domain.getPersons().size(), 40);
taskRepository.save(task);
RiskTask task = taskRepository.create(domain.getPersons().size(), 40);
Map<String, RiskModelTaskClue> oldMap = domain.getOldMap(task.getModelId(), true);
Map<String, Integer> idCode = new HashMap<>();
@ -1731,19 +1730,12 @@ public class PointServiceImpl implements PointService {
if (!toInsert.isEmpty()) {
modelTaskClueService.saveClues(toInsert, Default.IS_PETITION);
}
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 syncDrug(TaskParamDomain domain) {
RiskTask task = createTask(domain.getPersons().size(), 37);
taskRepository.save(task);
RiskTask task = taskRepository.create(domain.getPersons().size(), 37);
Map<String, RiskModelTaskClue> oldMap = domain.getOldMap(task.getModelId(), true);
Map<String, Integer> idCode = new HashMap<>();
@ -1776,8 +1768,7 @@ public class PointServiceImpl implements PointService {
@Override
public void syncControlNoPower(TaskParamDomain domain) {
RiskTask task = createTask(domain.getPersons().size(), 48);
taskRepository.save(task);
RiskTask task = taskRepository.create(domain.getPersons().size(), 48);
Map<String, RiskModelTaskClue> oldMap = domain.getOldMap(task.getModelId(), true);
Map<String, Integer> idCode = new HashMap<>();
List<GBaseZDRY> list = zdryRepository.getBaseMapper().noPower();
@ -1807,21 +1798,14 @@ public class PointServiceImpl implements PointService {
log.info("增加特定对象日常管控不到位人员:{}", toInsert.size());
modelTaskClueService.saveClues(toInsert, Default.CONTROLLER_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);
}
private final RiskTestRepository riskTestRepository;
@Override
public void syncPointCall(TaskParamDomain domain) {
RiskTask task = createTask(domain.getPersons().size(), 50);
taskRepository.save(task);
RiskTask task = taskRepository.create(domain.getPersons().size(), 50);
// 获取接警数据
List<MuchCall> result = jjdRepository.getBaseMapper().selectPointCall();
List<RiskPersonal> person = getPersons();
@ -1911,13 +1895,7 @@ public class PointServiceImpl implements PointService {
modelTaskClueService.saveClues(toInsert, Default.CONTROLLER_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);
}
private final GBaseOilBuyRepository oilBuyRepository;

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

@ -1,15 +1,10 @@
package com.biutag.supervisiondata.service.impl;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervisiondata.pojo.constants.Default;
import com.biutag.supervisiondata.pojo.domain.TaskParamDomain;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseAJJBXX;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseBAXX;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseJJD;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseWFRXX;
import com.biutag.supervisiondata.pojo.entity.mine.*;
import com.biutag.supervisiondata.pojo.enums.Dispute;
import com.biutag.supervisiondata.repository.GBaseJJDRepository;
import com.biutag.supervisiondata.repository.RiskModelTaskClueRepository;
import com.biutag.supervisiondata.repository.RiskPersonalRepository;
@ -41,12 +36,6 @@ public class PoliceServiceImpl implements PoliceService {
private final RiskModelTaskClueService riskModelTaskClueService;
private final RiskPersonalTagService tagService;
private final RiskPersonalService riskPersonalService;
private final RiskPersonalControlRecordService controlRecordService;
private final RiskPersonalRepository riskPersonalRepository;
private final RiskTaskRepository riskTaskRepository;
@ -97,9 +86,7 @@ public class PoliceServiceImpl implements PoliceService {
Map<String, RiskPersonal> personMap = domain.getPersons().stream().collect(Collectors.toMap(RiskPersonal::getIdCode, Function.identity(), (oldValue, newValue) -> newValue));
// ******* 数据操作 *******
List<RiskModelTaskClue> toInsert = new ArrayList<>();
List<RiskPersonalControlRecord> controlRecords = new ArrayList<>();
List<RiskPersonal> toUpdatePerson = new ArrayList<>();
// List<RiskPersonalTag> toInsertTags = new ArrayList<>();
// ******* 数据操作 *******
// 开始
for (GBaseJJD jjd : result) {
@ -117,12 +104,9 @@ public class PoliceServiceImpl implements PoliceService {
}
if(insert) {
toInsert.add(createClue(task, 1, person, jjd, "通过对近12个月的警情筛查,发现该人员涉及:"+jjd.getJqxzmc()+"的警情,接警单编号为:"+jjd.getJjdbh()));
RiskPersonalControlRecord tmpRecord = createControlRecord(person, jjd, toInsert.getLast().getRiskReason());
controlRecords.add(tmpRecord);
if(person.getControlTime() == null || tmpRecord.getControlTime().isAfter(person.getControlTime())) {
RiskPersonal personToUpdate = getRiskPersonal(person, tmpRecord);
if(person.getControlTime() == null) {
RiskPersonal personToUpdate = getRiskPersonal(person);
toUpdatePerson.add(personToUpdate);
// toInsertTags.add(createTag(Dispute.contains(jjd.getJqxzmc()), toInsert.getLast().getEventTime(), person));
}
}
}
@ -130,10 +114,6 @@ public class PoliceServiceImpl implements PoliceService {
log.info("新增线索:{}",toInsert.size());
riskModelTaskClueService.saveClues(toInsert, Default.TRUBO_IG);
}
if(!controlRecords.isEmpty()) {
log.info("新增管控记录:{}",controlRecords.size());
controlRecordService.batchInsert(controlRecords);
}
if(!toUpdatePerson.isEmpty()) {
log.info("修改风险人员:{}",toUpdatePerson.size());
riskPersonalRepository.updateBatchById(toUpdatePerson, 5000);
@ -145,12 +125,9 @@ public class PoliceServiceImpl implements PoliceService {
riskTaskRepository.updateTask(task.getId(), toInsert.size(), toUpdatePerson.size());
}
private static RiskPersonal getRiskPersonal(RiskPersonal person, RiskPersonalControlRecord tmpRecord) {
private static RiskPersonal getRiskPersonal(RiskPersonal person) {
RiskPersonal personToUpdate = new RiskPersonal();
personToUpdate.setId(person.getId());
// personToUpdate.setControlTime(tmpRecord.getControlTime());
// personToUpdate.setControlDepartName(tmpRecord.getControlDepartName());
// personToUpdate.setControlDepartId(tmpRecord.getControlDepartId());
if(person.getTags().indexOf(Default.BIG_TAG_TRUBO) == -1) {
personToUpdate.setTags(person.getTags().concat(",".concat(Default.BIG_TAG_TRUBO)));
}
@ -172,32 +149,4 @@ public class PoliceServiceImpl implements PoliceService {
clue.setCaseIds(BhUtil.jjdBh(jjd.getJjdbh()));
return clue;
}
RiskPersonalControlRecord createControlRecord(RiskPersonal person, GBaseJJD jjd, String tag) {
RiskPersonalControlRecord controlRecord = new RiskPersonalControlRecord();
controlRecord.setName(person.getName());
controlRecord.setIdCode(person.getIdCode());
controlRecord.setCreateTime(LocalDateTime.now());
try {
controlRecord.setControlTime(jjd.getBjsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
} catch (Exception e) {
log.info("报警时间转换异常");
}
controlRecord.setControlDepartId(jjd.getGxdwdm());
controlRecord.setControlDepartName(jjd.getGxdwmc());
controlRecord.setControlTag(tag);
controlRecord.setCaseId(BhUtil.jjdBh(jjd.getJjdbh()));
return controlRecord;
}
RiskPersonalTag createTag(String tag, LocalDateTime eventTime, RiskPersonal personal) {
RiskPersonalTag personalTag = new RiskPersonalTag();
personalTag.setTagTime(eventTime);
personalTag.setBigTag(Default.BIG_TAG_TRUBO);
personalTag.setSmallTag(tag);
personalTag.setIdCode(personal.getIdCode());
personalTag.setName(personal.getName());
personalTag.setCreateTime(LocalDateTime.now());
return personalTag;
}
}

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

@ -1,22 +1,15 @@
package com.biutag.supervisiondata.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.biutag.supervisiondata.common.exception.BusinessException;
import com.biutag.supervisiondata.common.response.StatusCode;
import com.biutag.supervisiondata.mapper.mine.ModelMapper;
import com.biutag.supervisiondata.mapper.mine.RiskModelTaskClueMapper;
import com.biutag.supervisiondata.mapper.mine.RiskScoreRuleMapper;
import com.biutag.supervisiondata.pojo.constants.Default;
import com.biutag.supervisiondata.pojo.domain.ScoreRule;
import com.biutag.supervisiondata.pojo.entity.mine.Model;
import com.biutag.supervisiondata.pojo.entity.mine.RiskModelTaskClue;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonalControlRecord;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonalTag;
import com.biutag.supervisiondata.repository.RiskModelTaskClueRepository;
import com.biutag.supervisiondata.repository.RiskPersonalTagRepository;
import com.biutag.supervisiondata.service.RiskModelTaskClueService;
import com.biutag.supervisiondata.service.RiskPersonalTagService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Qualifier;
@ -67,7 +60,7 @@ public class RiskModelTaskClueServiceImpl implements RiskModelTaskClueService {
Map<Integer, ScoreRule> ruleMap = rules.stream().collect(Collectors.toMap(ScoreRule::getModelId, Function.identity(), (val, old) -> val));
List<List<RiskModelTaskClue>> control = IntStream.range(0, (list.size() + 9999) / 10000)
.mapToObj(i -> list.subList(i * 10000, Math.min((i + 1) * 10000, list.size())))
.collect(Collectors.toList());
.toList();
for (List<RiskModelTaskClue> record : control) {
try {
batchInsert(record, bigTag, ruleMap);
@ -85,7 +78,7 @@ public class RiskModelTaskClueServiceImpl implements RiskModelTaskClueService {
List<RiskPersonalTag> oldTags = new ArrayList<>();
List<List<String>> idCode = IntStream.range(0, (idCodes.size() + 9999) / 10000)
.mapToObj(i -> idCodes.subList(i * 10000, Math.min((i + 1) * 10000, idCodes.size())))
.collect(Collectors.toList());
.toList();
for (List<String> strList : idCode) {
oldTags.addAll(tagRepository.list(new LambdaQueryWrapper<RiskPersonalTag>()
.select(RiskPersonalTag::getSmallTag, RiskPersonalTag::getIdCode)
@ -134,7 +127,7 @@ public class RiskModelTaskClueServiceImpl implements RiskModelTaskClueService {
try (Connection connection = getConnection();
PreparedStatement prepareStatement = connection.prepareStatement(sql)) {
connection.setAutoCommit(false);
alliances.stream().forEachOrdered(it -> {
alliances.forEach(it -> {
ScoreRule rule = ruleMap.get(it.getModelId());
BigDecimal score = new BigDecimal("0.00");
if (rule == null) {

4
src/main/java/com/biutag/supervisiondata/service/impl/RiskPersonalControlRecordImpl.java

@ -34,7 +34,7 @@ public class RiskPersonalControlRecordImpl extends ServiceImpl<RiskPersonalContr
try (Connection connection = getConnection();
PreparedStatement prepareStatement = connection.prepareStatement(sql)) {
connection.setAutoCommit(false);
records.stream().forEachOrdered(it -> {
records.forEach(it -> {
try {
prepareStatement.setObject(1, Optional.ofNullable(it.getName()).orElse(""));
prepareStatement.setObject(2, Optional.ofNullable(it.getIdCode()).orElse(""));
@ -51,7 +51,7 @@ public class RiskPersonalControlRecordImpl extends ServiceImpl<RiskPersonalContr
prepareStatement.executeBatch();
connection.commit();
} catch (Exception e) {
e.printStackTrace();
log.error("", e);
throw new BusinessException(StatusCode.BUSINESS, "数据保存失败");
}
}

25
src/main/java/com/biutag/supervisiondata/service/impl/RiskPersonalServiceImpl.java

@ -1,32 +1,22 @@
package com.biutag.supervisiondata.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervisiondata.common.exception.BusinessException;
import com.biutag.supervisiondata.common.response.StatusCode;
import com.biutag.supervisiondata.mapper.mine.RiskModelTaskClueMapper;
import com.biutag.supervisiondata.pojo.constants.Default;
import com.biutag.supervisiondata.pojo.entity.mine.RiskModelTaskClue;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonal;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonalControlRecord;
import com.biutag.supervisiondata.pojo.entity.mine.RiskPersonalTag;
import com.biutag.supervisiondata.repository.RiskPersonalRepository;
import com.biutag.supervisiondata.repository.RiskPersonalTagRepository;
import com.biutag.supervisiondata.repository.WdpcHZCRYXXRepository;
import com.biutag.supervisiondata.service.RiskPersonalService;
import com.biutag.supervisiondata.service.RiskPersonalTagService;
import com.biutag.supervisiondata.util.IdCodeUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -44,8 +34,6 @@ public class RiskPersonalServiceImpl implements RiskPersonalService {
private final RiskPersonalRepository repository;
private final RiskPersonalTagService tagService;
private final RiskPersonalTagRepository tagRepository;
@ -59,7 +47,7 @@ public class RiskPersonalServiceImpl implements RiskPersonalService {
// 速度是割出来的
List<List<String>> olds = IntStream.range(0, (searchOldCode.size() + 9999) / 10000)
.mapToObj(i -> searchOldCode.subList(i * 10000, Math.min((i + 1) * 10000, searchOldCode.size())))
.collect(Collectors.toList());
.toList();
List<RiskPersonal> oldPerson = new ArrayList<>();
for (List<String> old : olds) {
@ -74,8 +62,6 @@ public class RiskPersonalServiceImpl implements RiskPersonalService {
List<RiskPersonal> data = new ArrayList<>();
// 修改
List<RiskPersonal> updateData = new ArrayList<>();
List<RiskPersonalTag> tags = new ArrayList<>();
for (Map.Entry<String, List<RiskPersonal>> entry : map.entrySet()) {
RiskPersonal tmp = entry.getValue().getFirst();
// 看看这个人老数据里面有没有
@ -89,22 +75,17 @@ public class RiskPersonalServiceImpl implements RiskPersonalService {
}
RiskPersonal update = new RiskPersonal();
update.setId(oldPersonal.getId());
if(oldPersonal.getTags().indexOf(bigTag) == -1) {
if(!oldPersonal.getTags().contains(bigTag)) {
update.setTags(oldPersonal.getTags().concat(",".concat(bigTag)));
updateData.add(update);
}
}
log.info("保存长度: {}", data.size());
if(!data.isEmpty()) {
log.info("开始操作待新增用户:{}", tags.size());
log.info("开始操作待新增用户:{}", data.size());
repository.saveBatch(data, 10000);
}
if(!tags.isEmpty()) {
log.info("开始操作待操作标签:{}", tags.size());
tagService.saveBatchTag(tags, bigTag);
}
if(!updateData.isEmpty()) {
log.info("开始修改: {}", updateData.size());
repository.updateBatchById(updateData, 5000);

4
src/main/java/com/biutag/supervisiondata/service/impl/RiskTaskServiceImpl.java

@ -378,10 +378,8 @@ public class RiskTaskServiceImpl implements RiskTaskService {
.tag(gBaseSYRKXX.getCsdxzqhmc())
.build(), "area___" + person.getId().toString()));
}
if (!toInsert.isEmpty()) {
log.info("开始操作新增项:{}", toInsert.size());
riskModelTaskClueService.saveClues(toInsert, Default.FIGHT_IG);
}
riskTaskRepository.updateTask(task.getId(), toInsert.size(), 0);
}
@ -661,7 +659,7 @@ public class RiskTaskServiceImpl implements RiskTaskService {
if (xx.getSspcsdm() != null) {
PointOrg org = orgCodeMap.get(xx.getSspcsdm());
org = findOrg(org, orgIdMap);
SupExternalDepart depart = Optional.ofNullable(org).map(PointOrg::getDm).map(item -> jqExternalDepart.get(item)).orElse(null);
SupExternalDepart depart = Optional.ofNullable(org).map(PointOrg::getDm).map(jqExternalDepart::get).orElse(null);
if (depart != null) {
person.setControlDepartId(depart.getInternalId());
person.setControlDepartName(depart.getInternalShortName());

Loading…
Cancel
Save