Browse Source

优化车主模型 提高速度

master
kami 1 year ago
parent
commit
2cf32f2407
  1. 2
      src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java
  2. 5
      src/main/java/com/biutag/supervisiondata/service/impl/AiServiceImpl.java
  3. 3
      src/main/java/com/biutag/supervisiondata/service/impl/GBaseJJDServiceImpl.java
  4. 40
      src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java
  5. 24
      src/main/java/com/biutag/supervisiondata/util/DateTimeUtil.java

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

@ -123,7 +123,7 @@ public class ApplicationEvent {
// habitService.habitModelTask(LocalDateTime.of(2023, 12, 6, 0, 0, 0), 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.syncCarUser(initDomain(List.of(53)));
// pointService.syncScore(initDomain(List.of(43))); // pointService.syncScore(initDomain(List.of(43)));
// pointService.syncViolence(initDomain(List.of(44))); pointService.syncViolence(initDomain(List.of(44)));
// noControlService.syncNoControlData(initDomain(List.of(45))); // noControlService.syncNoControlData(initDomain(List.of(45)));
// //
// pointService.syncControlNoPower(initDomain(List.of(48))); // pointService.syncControlNoPower(initDomain(List.of(48)));

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

@ -8,6 +8,7 @@ import com.biutag.supervisiondata.pojo.entity.wdpc2.WdpcJJD;
import com.biutag.supervisiondata.repository.GBaseJJDRepository; import com.biutag.supervisiondata.repository.GBaseJJDRepository;
import com.biutag.supervisiondata.repository.WdpcJJDRepository; import com.biutag.supervisiondata.repository.WdpcJJDRepository;
import com.biutag.supervisiondata.service.AiService; import com.biutag.supervisiondata.service.AiService;
import com.biutag.supervisiondata.util.DateTimeUtil;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -50,9 +51,7 @@ public class AiServiceImpl implements AiService {
jjd.setBjrxm(gBaseJJD.getBjrxm()); jjd.setBjrxm(gBaseJJD.getBjrxm());
jjd.setBjrzjhm(gBaseJJD.getBjrzjhm()); jjd.setBjrzjhm(gBaseJJD.getBjrzjhm());
wdpcJJDS.add(jjd); wdpcJJDS.add(jjd);
try { jjd.setBjsj(DateTimeUtil.date2LocalDateTime(gBaseJJD.getBjsj()));
jjd.setBjsj(gBaseJJD.getBjsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
} catch (Exception ignored) {}
connection.rPush(key.serialize(RedisKey.JJD_CACHE), value.serialize(JSON.toJSONString(jjd))); connection.rPush(key.serialize(RedisKey.JJD_CACHE), value.serialize(JSON.toJSONString(jjd)));
})); }));
wdpcJJDRepository.saveBatch(wdpcJJDS, 10000); wdpcJJDRepository.saveBatch(wdpcJJDS, 10000);

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

@ -191,8 +191,7 @@ public class GBaseJJDServiceImpl implements GBaseJJDService {
if (time.isAfter(jjd.getBjsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime())) { if (time.isAfter(jjd.getBjsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime())) {
tmp = jjd; tmp = jjd;
} }
} catch (Exception e) { } catch (Exception ignored) {
log.info("报警时间处理异常");
} }
} }
if (tmp == null || tmp.getGxdwdm() == null) { if (tmp == null || tmp.getGxdwdm() == null) {

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

@ -306,17 +306,13 @@ public class PointServiceImpl implements PointService {
.personId(person.getId()) .personId(person.getId())
.idCode(person.getIdCode()) .idCode(person.getIdCode())
.sourceData("通过核查案件信息,发现该人员有近3个月,每出现一次扬言滋事、自杀等行为,接警单编号为:" + extreme.getJjdbh() + Optional.ofNullable(extreme.getBjnr()).map(it -> ",具体情况为:" + it).orElse("") + Optional.ofNullable(extreme.getCjqk()).map(it -> ",处警情况为:" + it).orElse("")) .sourceData("通过核查案件信息,发现该人员有近3个月,每出现一次扬言滋事、自杀等行为,接警单编号为:" + extreme.getJjdbh() + Optional.ofNullable(extreme.getBjnr()).map(it -> ",具体情况为:" + it).orElse("") + Optional.ofNullable(extreme.getCjqk()).map(it -> ",处警情况为:" + it).orElse(""))
.tag("扬言滋事、自杀等行为") .tags(List.of("扬言滋事、自杀等行为"))
.score(10)
.build(); .build();
if (extreme.getGxdwdm() != null) {
data.setDepartId(extreme.getGxdwdm());
data.setDepartName(extreme.getGxdwmc());
}
try { try {
data.setEventTime(extreme.getBjsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime()); data.setEventTime(extreme.getBjsj().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
} catch (Exception ignored) { } catch (Exception ignored) {}
} toInsert.add(DataUtil.createClueData(task, data));
toInsert.add(createClue2(task.getModelId(), 10, task.getId(), data));
} }
if (!toInsert.isEmpty()) { if (!toInsert.isEmpty()) {
@ -2089,23 +2085,6 @@ public class PointServiceImpl implements PointService {
return clue; return clue;
} }
RiskModelTaskClue createClue2(Integer modelId, Integer score, Integer taskId, ClueData data) {
RiskModelTaskClue clue = new RiskModelTaskClue();
clue.setModelId(modelId);
clue.setScore(score);
clue.setName(data.getName());
clue.setIdCode(data.getIdCode());
clue.setTaskId(taskId);
clue.setData(data.getSourceData());
clue.setEventTime(data.getEventTime());
clue.setCreateTime(LocalDateTime.now());
clue.setUpdateTime(LocalDateTime.now());
clue.setCaseIds(BhUtil.ajBh(data.getId()));
data.setPersonId(data.getPersonId());
clue.setRiskReason(data.getTag());
return clue;
}
RiskTask createTask(Integer size, Integer modelId) { RiskTask createTask(Integer size, Integer modelId) {
RiskTask task = new RiskTask(); RiskTask task = new RiskTask();
task.setModelId(modelId); task.setModelId(modelId);
@ -2115,17 +2094,6 @@ public class PointServiceImpl implements PointService {
return task; return task;
} }
SupDepart findLevelThreeDepart(SupDepart supDepart, Map<String, SupDepart> departMap) {
if (supDepart == null) {
return null;
}
if (supDepart.getLevel() == 3) {
return supDepart;
}
supDepart = departMap.get(supDepart.getPid());
return findLevelThreeDepart(supDepart, departMap);
}
private final GBaseTbDZdrylbRepository zdrylbRepository; private final GBaseTbDZdrylbRepository zdrylbRepository;
private final SupExternalDepartRepository externalDepartRepository; private final SupExternalDepartRepository externalDepartRepository;

24
src/main/java/com/biutag/supervisiondata/util/DateTimeUtil.java

@ -0,0 +1,24 @@
package com.biutag.supervisiondata.util;
import lombok.experimental.UtilityClass;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.Date;
/**
* @author kami on 2024-12-19 17:25
* @version 1.0
* @since 1.8
*/
@UtilityClass
public class DateTimeUtil {
public LocalDateTime date2LocalDateTime(Date date) {
try {
return date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
} catch (Exception ignored) {
}
return null;
}
}
Loading…
Cancel
Save