diff --git a/src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java b/src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java index 2c43ae7..05d4ab7 100644 --- a/src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java +++ b/src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java @@ -158,13 +158,14 @@ public class ApplicationEvent { // pointService.syncFamilyDie(initDomain(List.of(118))); // pointService.syncFatherDie(initDomain(List.of(119))); // pointService.syncMotherDie(initDomain(List.of(120))); - pointService.syncChildNo(initDomain(List.of(121))); - pointService.syncXIDU(initDomain(List.of(122))); - pointService.syncFiliation(initDomain(List.of(123))); - // 必须在123后面 - gBaseJJDService.syncOtherContradict(initDomain(List.of(75))); - - pointService.syncPetitionContent(initDomain(List.of(124))); +// pointService.syncChildNo(initDomain(List.of(121))); +// pointService.syncXIDU(initDomain(List.of(122))); +// pointService.syncFiliation(initDomain(List.of(123))); +// // 必须在123后面 +// gBaseJJDService.syncOtherContradict(initDomain(List.of(75))); +// +// pointService.syncPetitionContent(initDomain(List.of(124))); + pointService.syncMedicalPressure(initDomain(List.of(125))); // *********暂时不要********** // riskTaskService.caseModelTask(initDomain(List.of(35))); diff --git a/src/main/java/com/biutag/supervisiondata/mapper/wdpc2/WdpcYbxxMapper.java b/src/main/java/com/biutag/supervisiondata/mapper/wdpc2/WdpcYbxxMapper.java new file mode 100644 index 0000000..7d2f50b --- /dev/null +++ b/src/main/java/com/biutag/supervisiondata/mapper/wdpc2/WdpcYbxxMapper.java @@ -0,0 +1,17 @@ +package com.biutag.supervisiondata.mapper.wdpc2; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.biutag.supervisiondata.pojo.entity.wdpc2.WdpcYbxx; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + * @author kami on 2024-12-06 10:23:13 + * @version 0.0.1 + * @since 1.8 + */ +public interface WdpcYbxxMapper extends BaseMapper { + @Select("select distinct id_code from wdpc_grjd_ybxx") + List selectMedicalPressure(); +} diff --git a/src/main/java/com/biutag/supervisiondata/pojo/constants/Default.java b/src/main/java/com/biutag/supervisiondata/pojo/constants/Default.java index ee3db83..0c707ef 100644 --- a/src/main/java/com/biutag/supervisiondata/pojo/constants/Default.java +++ b/src/main/java/com/biutag/supervisiondata/pojo/constants/Default.java @@ -132,4 +132,6 @@ public class Default { public static final String PETITIONCONTENT = "上访诉求内容"; + public static final String MEDICALPRESSURE = "医疗压力"; + } diff --git a/src/main/java/com/biutag/supervisiondata/pojo/entity/wdpc2/WdpcYbxx.java b/src/main/java/com/biutag/supervisiondata/pojo/entity/wdpc2/WdpcYbxx.java new file mode 100644 index 0000000..cdd98d2 --- /dev/null +++ b/src/main/java/com/biutag/supervisiondata/pojo/entity/wdpc2/WdpcYbxx.java @@ -0,0 +1,28 @@ +package com.biutag.supervisiondata.pojo.entity.wdpc2; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.io.Serializable; + +/** + * 医保信息 + * @author kami on 2024-12-06 10:20:42 + * @version 0.0.1 + * @since 1.8 + */ +@Data +@TableName("`wdpc_grjd_ybxx`") +public class WdpcYbxx implements Serializable { + + /** + * 身份证号码 + */ + @TableField("`id_code`") + String idCode; + + @TableField("`name`") + String name; + +} diff --git a/src/main/java/com/biutag/supervisiondata/repository/WdpcYbxxRepository.java b/src/main/java/com/biutag/supervisiondata/repository/WdpcYbxxRepository.java new file mode 100644 index 0000000..b963af8 --- /dev/null +++ b/src/main/java/com/biutag/supervisiondata/repository/WdpcYbxxRepository.java @@ -0,0 +1,16 @@ +package com.biutag.supervisiondata.repository; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.biutag.supervisiondata.mapper.wdpc2.WdpcYbxxMapper; +import com.biutag.supervisiondata.pojo.entity.wdpc2.WdpcYbxx; +import org.springframework.stereotype.Service; + +/** + * @author kami on 2024-12-06 10:25:23 + * @version 0.0.1 + * @since 1.8 + */ +@Service +public class WdpcYbxxRepository extends ServiceImpl { + +} diff --git a/src/main/java/com/biutag/supervisiondata/service/PointService.java b/src/main/java/com/biutag/supervisiondata/service/PointService.java index ab69332..6003d38 100644 --- a/src/main/java/com/biutag/supervisiondata/service/PointService.java +++ b/src/main/java/com/biutag/supervisiondata/service/PointService.java @@ -107,4 +107,7 @@ public interface PointService { // 上访诉求内容 void syncPetitionContent(TaskParamDomain domain); + + // 医疗压力 + void syncMedicalPressure(TaskParamDomain domain); } diff --git a/src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java b/src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java index 3fc8197..9254856 100644 --- a/src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java +++ b/src/main/java/com/biutag/supervisiondata/service/impl/PointServiceImpl.java @@ -77,6 +77,8 @@ public class PointServiceImpl implements PointService { private final WdpcXfsjCsDetailRepository xfsjCsDetailRepository; + private final WdpcYbxxRepository ybxxRepository; + @Override public void personPullAndSave(LocalDateTime start, LocalDateTime end) { riskPersonalService.formatAndSave(getPersons(), Default.POINT_POEPLE); @@ -611,6 +613,46 @@ public class PointServiceImpl implements PointService { taskRepository.updateById(updateTask); } + @Override + public void syncMedicalPressure(TaskParamDomain domain) { + RiskTask task = createTask(domain.getPersons().size(), 125); + taskRepository.save(task); + + Map oldMap = domain.getOldMap(task.getModelId(), true); + Map idCode = new HashMap<>(); + log.info("模型125开始查询"); + List list = ybxxRepository.getBaseMapper().selectMedicalPressure(); + log.info("模型125查询结果数:{}", list.size()); + List persons = domain.getPersons(); + List toInsert = new ArrayList<>(); + for (RiskPersonal person : persons) { + if (list.contains(person.getIdCode())) continue; + if (oldMap.get(person.getIdCode()) != null) continue; + if (idCode.get(person.getIdCode()) != null) continue; + idCode.put(person.getIdCode(), 1); + ClueData data = ClueData.builder() + .name(person.getName()) + .id(person.getId().toString()) + .idCode(person.getIdCode()) + .tag("医疗压力") + .eventTime(LocalDateTime.now()) + .personId(person.getId()) + .sourceData("发现该人员近三年没有医保缴纳信息,存在医疗压力,增加风险分5分") + .build(); + toInsert.add(createClue(task.getModelId(), 5, task.getId(), data)); + } + if (!toInsert.isEmpty()) { + modelTaskClueService.saveClues(toInsert, Default.MEDICALPRESSURE); + } + 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 syncPetitionContent(TaskParamDomain domain) { RiskTask task = createTask(domain.getPersons().size(), 124);