Commit a68d0316cbb7a3e47a9d70452b242958bb02e139
1 parent
126cf8b3cf
Exists in
master
and in
6 other branches
追访数据个节点更新
Showing 10 changed files with 241 additions and 180 deletions
- platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java
- platform-dal/src/main/java/com/lyms/platform/pojo/MaternalDeliverModel.java
- platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java
- platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java
- platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownJobFacade.java
- platform-operate-api/src/main/resources/spring/applicationContext-quartz.xml
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java
View file @
a68d031
| 1 | 1 | package com.lyms.platform.biz.service; |
| 2 | 2 | |
| 3 | 3 | import com.lyms.platform.biz.RemoteService; |
| 4 | -import com.lyms.platform.biz.RemoteUrlEnum; | |
| 5 | 4 | import com.lyms.platform.biz.dal.*; |
| 6 | 5 | import com.lyms.platform.common.dao.operator.MongoQuery; |
| 7 | 6 | import com.lyms.platform.common.enums.SieveStatusEnums; |
| 7 | +import com.lyms.platform.common.enums.TrackDownDateEnums; | |
| 8 | 8 | import com.lyms.platform.common.enums.YnEnums; |
| 9 | 9 | import com.lyms.platform.common.utils.DateUtil; |
| 10 | 10 | import com.lyms.platform.common.utils.PropertiesUtils; |
| 11 | 11 | |
| ... | ... | @@ -46,7 +46,10 @@ |
| 46 | 46 | private PatientCheckTicketService patientCheckTicketService; |
| 47 | 47 | @Autowired |
| 48 | 48 | private RemoteService remoteService; |
| 49 | + @Autowired | |
| 50 | + private TrackDownRecordService trackDownRecordService; | |
| 49 | 51 | |
| 52 | + | |
| 50 | 53 | public Patients addPatient(Patients obj) { |
| 51 | 54 | return iPatientDao.addPatient(obj); |
| 52 | 55 | } |
| ... | ... | @@ -239,6 +242,51 @@ |
| 239 | 242 | } |
| 240 | 243 | }**/ |
| 241 | 244 | } |
| 245 | + | |
| 246 | + /** | |
| 247 | + * 处理预产期前两周的孕妇数据,进入分娩住院追访 | |
| 248 | + */ | |
| 249 | + public void dandleReachDue(){ | |
| 250 | + //查询出满足预产期前两周的孕妇 | |
| 251 | + Date endDate = new Date(); | |
| 252 | + Date start = DateUtil.addDay(DateUtil.formatDate(endDate), -14); | |
| 253 | + | |
| 254 | + PatientsQuery patientsQuery = new PatientsQuery(); | |
| 255 | + patientsQuery.setDueDateEnd(endDate); | |
| 256 | + patientsQuery.setDueDateStart(start); | |
| 257 | + patientsQuery.setYn(YnEnums.YES.getId()); | |
| 258 | + patientsQuery.setDueStatus(0); | |
| 259 | + patientsQuery.setType(1); | |
| 260 | + List<Patients> patientses = iPatientDao.queryPatient(patientsQuery.convertToQuery()); | |
| 261 | + if (CollectionUtils.isNotEmpty(patientses)) { | |
| 262 | + logger.info("处理预产期前两周的孕妇数据,进入分娩住院追访 size:" + patientses.size()); | |
| 263 | + for(Patients patient:patientses){ | |
| 264 | + if(patient.getHospitalId().equals("216")){ | |
| 265 | + System.out.println("cardNo:"+patient.getCardNo()); | |
| 266 | + } | |
| 267 | + //添加产后追访信息 | |
| 268 | + TrackDownRecord trackDownRecord = patient.build(); | |
| 269 | + //添加产后追访信息 | |
| 270 | + TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); | |
| 271 | + downRecordQuery.setParentId(trackDownRecord.getParentId()); | |
| 272 | + List<TrackDownRecord> records = trackDownRecordService.queryTrackDown(downRecordQuery); | |
| 273 | + //不存在追访或者追访未结束流程并且追访类型小于分娩住院 | |
| 274 | + if(CollectionUtils.isEmpty(records)||(records.get(0).getStatus() == 1 && records.get(0).getTrackType()<TrackDownDateEnums.E.getId())){ | |
| 275 | + trackDownRecord.setHospitalId(patient.getHospitalId()); | |
| 276 | + trackDownRecord.setSource(patient.getId()); | |
| 277 | + trackDownRecord.setStatus(1); | |
| 278 | + trackDownRecord.setTrackType(TrackDownDateEnums.E.getId()); | |
| 279 | + if(CollectionUtils.isEmpty(records)){ | |
| 280 | + trackDownRecordService.addTrackDown(trackDownRecord); | |
| 281 | + }else{ | |
| 282 | + trackDownRecordService.updateTrackDown(trackDownRecord,records.get(0).getId()); | |
| 283 | + } | |
| 284 | + } | |
| 285 | + } | |
| 286 | + } | |
| 287 | + } | |
| 288 | + | |
| 289 | + | |
| 242 | 290 | |
| 243 | 291 | /** |
| 244 | 292 | * 删除过期产筛的数据,删掉自动到期的部分 |
platform-dal/src/main/java/com/lyms/platform/pojo/MaternalDeliverModel.java
View file @
a68d031
| 1 | 1 | package com.lyms.platform.pojo; |
| 2 | 2 | |
| 3 | 3 | import com.lyms.platform.beans.SerialIdEnum; |
| 4 | +import com.lyms.platform.common.enums.TrackDownDateEnums; | |
| 4 | 5 | import com.lyms.platform.common.result.BaseModel; |
| 5 | 6 | import org.apache.commons.lang.math.NumberUtils; |
| 6 | 7 | import org.springframework.data.mongodb.core.mapping.Document; |
| ... | ... | @@ -806,6 +807,32 @@ |
| 806 | 807 | |
| 807 | 808 | public void setExtPlacentas(List<ExtPlacenta> extPlacentas) { |
| 808 | 809 | this.extPlacentas = extPlacentas; |
| 810 | + } | |
| 811 | + | |
| 812 | + public TrackDownRecord build(Patients patients) { | |
| 813 | + if (null == patients) { | |
| 814 | + return null; | |
| 815 | + } | |
| 816 | + TrackDownRecord downRecord = new TrackDownRecord(); | |
| 817 | + downRecord.setParentId(getParentId()); | |
| 818 | + downRecord.setPid(getPid()); | |
| 819 | + downRecord.setLastMenses(patients.getLastMenses()); | |
| 820 | + downRecord.setUsername(patients.getUsername()); | |
| 821 | + downRecord.setCityRegisterId(patients.getCityRegisterId()); | |
| 822 | + downRecord.setBirth(patients.getBirth()); | |
| 823 | + downRecord.setAreaRegisterId(patients.getAreaRegisterId()); | |
| 824 | + downRecord.setCardNo(patients.getCardNo()); | |
| 825 | + downRecord.setAddressRegister(patients.getAddressRegister()); | |
| 826 | + downRecord.setPhone(patients.getPhone()); | |
| 827 | + downRecord.setStreetRegisterId(patients.getStreetRegisterId()); | |
| 828 | + downRecord.setAreaRegisterId(patients.getAreaRegisterId()); | |
| 829 | + | |
| 830 | + //默认值 | |
| 831 | + downRecord.setSource(getId()); | |
| 832 | + downRecord.setHospitalId(getHospitalId()); | |
| 833 | + downRecord.setStatus(1); | |
| 834 | + downRecord.setTrackType(TrackDownDateEnums.F.getId()); | |
| 835 | + return downRecord; | |
| 809 | 836 | } |
| 810 | 837 | } |
platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java
View file @
a68d031
| 1 | 1 | package com.lyms.platform.pojo; |
| 2 | 2 | |
| 3 | 3 | import com.lyms.platform.beans.SerialIdEnum; |
| 4 | +import com.lyms.platform.common.enums.TrackDownDateEnums; | |
| 4 | 5 | import com.lyms.platform.common.result.BaseModel; |
| 5 | 6 | import com.lyms.platform.common.utils.DateUtil; |
| 6 | 7 | import org.springframework.data.mongodb.core.mapping.Document; |
| ... | ... | @@ -1175,6 +1176,10 @@ |
| 1175 | 1176 | downRecord.setPhone(getPhone()); |
| 1176 | 1177 | downRecord.setStreetRegisterId(getStreetRegisterId()); |
| 1177 | 1178 | downRecord.setAreaRegisterId(getAreaRegisterId()); |
| 1179 | + //默认值 | |
| 1180 | + downRecord.setHospitalId(getHospitalId()); | |
| 1181 | + downRecord.setStatus(1); | |
| 1182 | + downRecord.setTrackType(TrackDownDateEnums.C.getId()); | |
| 1178 | 1183 | return downRecord; |
| 1179 | 1184 | } |
| 1180 | 1185 |
platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java
View file @
a68d031
| 1 | 1 | package com.lyms.platform.pojo; |
| 2 | 2 | |
| 3 | 3 | import com.lyms.platform.beans.SerialIdEnum; |
| 4 | +import com.lyms.platform.common.enums.TrackDownDateEnums; | |
| 4 | 5 | import com.lyms.platform.common.result.BaseModel; |
| 6 | +import com.lyms.platform.common.utils.StringUtils; | |
| 5 | 7 | import org.springframework.data.mongodb.core.mapping.Document; |
| 6 | 8 | |
| 7 | 9 | import java.util.Date; |
| ... | ... | @@ -1525,6 +1527,30 @@ |
| 1525 | 1527 | |
| 1526 | 1528 | public void setHunJianDoctor(String hunJianDoctor) { |
| 1527 | 1529 | this.hunJianDoctor = hunJianDoctor; |
| 1530 | + } | |
| 1531 | + | |
| 1532 | + public TrackDownRecord build(ResidentsArchiveModel resid) { | |
| 1533 | + if (StringUtils.isEmpty(getParentId())) { | |
| 1534 | + return null; | |
| 1535 | + } | |
| 1536 | + TrackDownRecord record = new TrackDownRecord(); | |
| 1537 | + | |
| 1538 | + record.setResidentsArchiveId(resid.getId()); | |
| 1539 | + record.setAddressRegister(resid.getAddressRegister()); | |
| 1540 | + record.setAreaRegisterId(resid.getAreaRegisterId()); | |
| 1541 | + record.setBirth(resid.getBirthday()); | |
| 1542 | + record.setCityRegisterId(resid.getCityRegisterId()); | |
| 1543 | + record.setUsername(resid.getUsername()); | |
| 1544 | + record.setStreetRegisterId(resid.getStreetRegisterId()); | |
| 1545 | + record.setPhone(resid.getPhone()); | |
| 1546 | + | |
| 1547 | + //默认值 | |
| 1548 | + record.setSource(getId()); | |
| 1549 | + record.setHospitalId(getHospitalId()); | |
| 1550 | + record.setStatus(1); | |
| 1551 | + record.setCardNo(getCertificateNum()); | |
| 1552 | + record.setTrackType(TrackDownDateEnums.B.getId()); | |
| 1553 | + return record; | |
| 1528 | 1554 | } |
| 1529 | 1555 | |
| 1530 | 1556 | } |
platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java
View file @
a68d031
| 1 | 1 | package com.lyms.platform.pojo; |
| 2 | 2 | |
| 3 | 3 | import com.lyms.platform.beans.SerialIdEnum; |
| 4 | +import com.lyms.platform.common.enums.TrackDownDateEnums; | |
| 4 | 5 | import com.lyms.platform.common.result.BaseModel; |
| 5 | 6 | import org.springframework.data.mongodb.core.mapping.Document; |
| 6 | 7 | |
| ... | ... | @@ -446,8 +447,8 @@ |
| 446 | 447 | record.setHospitalId(getHospitalId()); |
| 447 | 448 | record.setSource(getId()); |
| 448 | 449 | record.setCardNo(getCertificateNum()); |
| 449 | - // record.setStatus(1); | |
| 450 | - // record.setTrackType(TrackDownDateEnums.A.getId()); | |
| 450 | + record.setStatus(1); | |
| 451 | + record.setTrackType(TrackDownDateEnums.A.getId()); | |
| 451 | 452 | return record; |
| 452 | 453 | } |
| 453 | 454 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java
View file @
a68d031
| ... | ... | @@ -26,6 +26,11 @@ |
| 26 | 26 | @Autowired |
| 27 | 27 | private ITrackDownService trackDownService; |
| 28 | 28 | |
| 29 | + @Autowired | |
| 30 | + private TrackDownFacade downFacade; | |
| 31 | + @Autowired | |
| 32 | + private TrackDownJobFacade downJobFacade; | |
| 33 | + | |
| 29 | 34 | @ResponseBody |
| 30 | 35 | @TokenRequired |
| 31 | 36 | @RequestMapping(value = "/mother/{parentId}/{trackType}", method = RequestMethod.GET) |
| ... | ... | @@ -91,9 +96,6 @@ |
| 91 | 96 | public BaseResponse list(TrackDownQueryRequest downQueryRequest,HttpServletRequest request){ |
| 92 | 97 | return downFacade.list(downQueryRequest,getUserId(request)); |
| 93 | 98 | } |
| 94 | - @Autowired | |
| 95 | - private TrackDownFacade downFacade; | |
| 96 | - @Autowired | |
| 97 | - private TrackDownJobFacade downJobFacade; | |
| 99 | + | |
| 98 | 100 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java
View file @
a68d031
| ... | ... | @@ -282,15 +282,11 @@ |
| 282 | 282 | |
| 283 | 283 | //添加产后追访信息 |
| 284 | 284 | if (CollectionUtils.isNotEmpty(patients)) { |
| 285 | - TrackDownRecord trackDownRecord = patients.get(0).build(); | |
| 285 | + TrackDownRecord trackDownRecord = maternalDeliverModel.build(patients.get(0)); | |
| 286 | 286 | trackDownRecord.setHospitalId(maternalDeliverModel.getHospitalId()); |
| 287 | - trackDownRecord.setStatus(1); | |
| 288 | 287 | trackDownRecord.setSource(maternalDeliverModel.getId()); |
| 289 | - trackDownRecord.setStatus(1); | |
| 290 | - trackDownRecord.setTrackType(TrackDownDateEnums.F.getId()); | |
| 291 | 288 | trackDownService.addOrupdateTrackDownRecord(userId,trackDownRecord); |
| 292 | 289 | } |
| 293 | - | |
| 294 | 290 | |
| 295 | 291 | operateLogFacade.addAddOptLog(userId, Integer.parseInt(hospitalId), maternalDeliverModel, OptActionEnums.ADD.getId(), "添加分娩"); |
| 296 | 292 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java
View file @
a68d031
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownJobFacade.java
View file @
a68d031
| ... | ... | @@ -54,21 +54,6 @@ |
| 54 | 54 | |
| 55 | 55 | @Autowired |
| 56 | 56 | private PatientsService patientsService; |
| 57 | - | |
| 58 | - @PostConstruct | |
| 59 | - private void init() { | |
| 60 | - //婚前检查数据加载 | |
| 61 | - downJobHandlers.add(new HJTrackDownDataLoader()); | |
| 62 | - //怀孕数据加载 | |
| 63 | - downJobHandlers.add(new HYTrackDownDataLoader()); | |
| 64 | - //产检数据加载 | |
| 65 | - downJobHandlers.add(new CJTrackDownDataLoader()); | |
| 66 | - //分娩数据加载 | |
| 67 | - downJobHandlers.add(new FMTrackDownDataLoader()); | |
| 68 | - //产后访视和产后复查的数据加载 产后访视和产后复查的规则一样 | |
| 69 | - downJobHandlers.add(new CHTrackDownDataLoader()); | |
| 70 | - } | |
| 71 | - | |
| 72 | 57 | /** |
| 73 | 58 | * 妇女建档 |
| 74 | 59 | */ |
| ... | ... | @@ -81,19 +66,6 @@ |
| 81 | 66 | @Autowired |
| 82 | 67 | private PremaritalCheckupService premaritalCheckupService; |
| 83 | 68 | |
| 84 | - | |
| 85 | - public BaseResponse doBatchExecute(Integer d) { | |
| 86 | - for (final TrackDownDataLoader downDataLoader : downJobHandlers) { | |
| 87 | - commonThreadPool.execute(new Thread() { | |
| 88 | - @Override | |
| 89 | - public void run() { | |
| 90 | - downDataLoader.execute(); | |
| 91 | - } | |
| 92 | - }); | |
| 93 | - } | |
| 94 | - return new BaseResponse().setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION).setErrorcode(ErrorCodeConstants.SUCCESS); | |
| 95 | - } | |
| 96 | - | |
| 97 | 69 | interface TrackDownDataLoader<T> { |
| 98 | 70 | //分页的条数 |
| 99 | 71 | int limit = 100; |
| ... | ... | @@ -112,6 +84,50 @@ |
| 112 | 84 | } |
| 113 | 85 | |
| 114 | 86 | /** |
| 87 | + * 产筛追访数据加载 | |
| 88 | + */ | |
| 89 | + class CSTrackDownDataLoader implements TrackDownDataLoader<Patients> { | |
| 90 | + @Override | |
| 91 | + public void execute() { | |
| 92 | + } | |
| 93 | + | |
| 94 | + @Override | |
| 95 | + public void handOneByOne(Patients model) { | |
| 96 | + } | |
| 97 | + | |
| 98 | + public TrackDownRecord build(Patients model) { | |
| 99 | + return null; | |
| 100 | + } | |
| 101 | + } | |
| 102 | + | |
| 103 | + | |
| 104 | + @PostConstruct | |
| 105 | + private void init() { | |
| 106 | + //婚前检查数据加载 | |
| 107 | + downJobHandlers.add(new HJTrackDownDataLoader()); | |
| 108 | + //怀孕数据加载 | |
| 109 | + downJobHandlers.add(new HYTrackDownDataLoader()); | |
| 110 | + //产检数据加载 | |
| 111 | + downJobHandlers.add(new CJTrackDownDataLoader()); | |
| 112 | + //分娩数据加载 | |
| 113 | + downJobHandlers.add(new FMTrackDownDataLoader()); | |
| 114 | + //产后访视和产后复查的数据加载 产后访视和产后复查的规则一样 | |
| 115 | + downJobHandlers.add(new CHTrackDownDataLoader()); | |
| 116 | + } | |
| 117 | + | |
| 118 | + | |
| 119 | + public BaseResponse doBatchExecute(Integer d) { | |
| 120 | + for (final TrackDownDataLoader downDataLoader : downJobHandlers) { | |
| 121 | + commonThreadPool.execute(new Thread() { | |
| 122 | + @Override | |
| 123 | + public void run() { | |
| 124 | + downDataLoader.execute(); | |
| 125 | + } | |
| 126 | + }); | |
| 127 | + } | |
| 128 | + return new BaseResponse().setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION).setErrorcode(ErrorCodeConstants.SUCCESS); | |
| 129 | + } | |
| 130 | + /** | |
| 115 | 131 | * 分娩追访数据加载 |
| 116 | 132 | */ |
| 117 | 133 | class FMTrackDownDataLoader implements TrackDownDataLoader<Patients> { |
| ... | ... | @@ -150,7 +166,11 @@ |
| 150 | 166 | List<TrackDownRecord> records = downRecordService.queryTrackDown(downRecordQuery); |
| 151 | 167 | if (CollectionUtils.isEmpty(records)) { |
| 152 | 168 | logger.info("FMTrackDownDataLoader addTrackDown by id :" + model.getId()); |
| 153 | - downRecordService.addTrackDown(model.build()); | |
| 169 | + TrackDownRecord downRecord = model.build(); | |
| 170 | + downRecord.setHospitalId(model.getHospitalId()); | |
| 171 | + downRecord.setStatus(1); | |
| 172 | + downRecord.setTrackType(TrackDownDateEnums.E.getId()); | |
| 173 | + downRecordService.addTrackDown(downRecord); | |
| 154 | 174 | } |
| 155 | 175 | } |
| 156 | 176 | |
| 157 | 177 | |
| 158 | 178 | |
| 159 | 179 | |
| ... | ... | @@ -194,55 +214,19 @@ |
| 194 | 214 | List<TrackDownRecord> records = downRecordService.queryTrackDown(downRecordQuery); |
| 195 | 215 | if (CollectionUtils.isEmpty(records)) { |
| 196 | 216 | logger.info("CJTrackDownDataLoader addTrackDown by id :" + model.getId()); |
| 197 | - downRecordService.addTrackDown(build(model)); | |
| 217 | + TrackDownRecord downRecord = model.build(); | |
| 218 | + downRecord.setHospitalId(model.getHospitalId()); | |
| 219 | + downRecord.setStatus(1); | |
| 220 | + downRecord.setTrackType(TrackDownDateEnums.C.getId()); | |
| 221 | + downRecordService.addTrackDown(downRecord); | |
| 198 | 222 | } else { |
| 199 | 223 | //TODO 处理已经在追访列表的情况 |
| 200 | 224 | } |
| 201 | 225 | } |
| 226 | + } | |
| 202 | 227 | |
| 203 | - public TrackDownRecord build(Patients model) { | |
| 204 | - TrackDownRecord downRecord = new TrackDownRecord(); | |
| 205 | - downRecord.setParentId(model.getId()); | |
| 206 | - downRecord.setPid(model.getPid()); | |
| 207 | - downRecord.setLastMenses(model.getLastMenses()); | |
| 208 | - downRecord.setUsername(model.getUsername()); | |
| 209 | - downRecord.setCityRegisterId(model.getCityRegisterId()); | |
| 210 | - downRecord.setBirth(model.getBirth()); | |
| 211 | - downRecord.setAreaRegisterId(model.getAreaRegisterId()); | |
| 212 | - downRecord.setCardNo(model.getCardNo()); | |
| 213 | - downRecord.setAddressRegister(model.getAddressRegister()); | |
| 214 | - downRecord.setHospitalId(model.getHospitalId()); | |
| 215 | - downRecord.setPhone(model.getPhone()); | |
| 216 | - downRecord.setStreetRegisterId(model.getStreetRegisterId()); | |
| 217 | - downRecord.setAreaRegisterId(model.getAreaRegisterId()); | |
| 218 | - downRecord.setStatus(1); | |
| 219 | - downRecord.setSource(model.getId()); | |
| 220 | - downRecord.setTrackType(TrackDownDateEnums.C.getId()); | |
| 221 | - return downRecord; | |
| 222 | - } | |
| 223 | - } | |
| 224 | 228 | |
| 225 | 229 | /** |
| 226 | - * 产筛追访数据加载 | |
| 227 | - */ | |
| 228 | - class CSTrackDownDataLoader implements TrackDownDataLoader<Patients> { | |
| 229 | - | |
| 230 | - @Override | |
| 231 | - public void execute() { | |
| 232 | - | |
| 233 | - } | |
| 234 | - | |
| 235 | - @Override | |
| 236 | - public void handOneByOne(Patients model) { | |
| 237 | - | |
| 238 | - } | |
| 239 | - | |
| 240 | - public TrackDownRecord build(Patients model) { | |
| 241 | - return null; | |
| 242 | - } | |
| 243 | - } | |
| 244 | - | |
| 245 | - /** | |
| 246 | 230 | * 怀孕建档数据加载 |
| 247 | 231 | * <p/> |
| 248 | 232 | * 完成婚检流程并没有建档 |
| 249 | 233 | |
| ... | ... | @@ -283,38 +267,21 @@ |
| 283 | 267 | Integer count = patientsService.queryPatientCount(patientsQuery1); |
| 284 | 268 | if (null != count && count == 0) { |
| 285 | 269 | logger.info("HYTrackDownDataLoader addTrackDown by id :" + model.getId()); |
| 286 | - TrackDownRecord down = build(model); | |
| 287 | - if (null != down) { | |
| 288 | - downRecordService.addTrackDown(down); | |
| 270 | + ResidentsArchiveModel resid = residentsArchiveService.getResident(model.getParentId()); | |
| 271 | + if (null != resid) { | |
| 272 | + TrackDownRecord downRecord = model.build(resid); | |
| 273 | + // downRecord.setSource(model.getId()); | |
| 274 | + // downRecord.setHospitalId(model.getHospitalId()); | |
| 275 | + // downRecord.setStatus(1); | |
| 276 | + // downRecord.setCardNo(model.getCertificateNum()); | |
| 277 | + // downRecord.setTrackType(TrackDownDateEnums.B.getId()); | |
| 278 | + | |
| 279 | + if (null != downRecord) { | |
| 280 | + downRecordService.addTrackDown(downRecord); | |
| 281 | + } | |
| 289 | 282 | } |
| 290 | 283 | } |
| 291 | 284 | } |
| 292 | - | |
| 293 | - public TrackDownRecord build(PremaritalCheckup model) { | |
| 294 | - if (StringUtils.isEmpty(model.getParentId())) { | |
| 295 | - return null; | |
| 296 | - } | |
| 297 | - TrackDownRecord record = new TrackDownRecord(); | |
| 298 | - | |
| 299 | - ResidentsArchiveModel resid = residentsArchiveService.getResident(model.getParentId()); | |
| 300 | - if (null == resid) { | |
| 301 | - return null; | |
| 302 | - } | |
| 303 | - record.setResidentsArchiveId(resid.getId()); | |
| 304 | - record.setSource(model.getId()); | |
| 305 | - record.setAddressRegister(resid.getAddressRegister()); | |
| 306 | - record.setAreaRegisterId(resid.getAreaRegisterId()); | |
| 307 | - record.setBirth(resid.getBirthday()); | |
| 308 | - record.setCityRegisterId(resid.getCityRegisterId()); | |
| 309 | - record.setUsername(resid.getUsername()); | |
| 310 | - record.setStreetRegisterId(resid.getStreetRegisterId()); | |
| 311 | - record.setPhone(resid.getPhone()); | |
| 312 | - record.setHospitalId(model.getHospitalId()); | |
| 313 | - record.setStatus(1); | |
| 314 | - record.setCardNo(model.getCertificateNum()); | |
| 315 | - record.setTrackType(TrackDownDateEnums.B.getId()); | |
| 316 | - return record; | |
| 317 | - } | |
| 318 | 285 | } |
| 319 | 286 | |
| 320 | 287 | |
| ... | ... | @@ -363,7 +330,8 @@ |
| 363 | 330 | |
| 364 | 331 | if (CollectionUtils.isEmpty(DATA)) { |
| 365 | 332 | logger.info("HJTrackDownDataLoader addTrackDown by id :" + model.getId()); |
| 366 | - downRecordService.addTrackDown(model.build()); | |
| 333 | + TrackDownRecord record = model.build(); | |
| 334 | + downRecordService.addTrackDown(record); | |
| 367 | 335 | } else { |
| 368 | 336 | //TODO 如果有婚检还存在的情况 |
| 369 | 337 | } |
| 370 | 338 | |
| 371 | 339 | |
| ... | ... | @@ -413,32 +381,17 @@ |
| 413 | 381 | |
| 414 | 382 | if (CollectionUtils.isEmpty(DATA)) { |
| 415 | 383 | logger.info("HJTrackDownDataLoader addTrackDown by id :" + model.getId()); |
| 416 | - downRecordService.addTrackDown(build(model)); | |
| 384 | + Patients patients = patientsService.findOnePatientById(model.getParentId()); | |
| 385 | + TrackDownRecord record = model.build(patients); | |
| 386 | + downRecordService.addTrackDown(record); | |
| 387 | + | |
| 417 | 388 | } else { |
| 418 | 389 | //TODO 如果有婚检还存在的情况 |
| 419 | 390 | } |
| 420 | 391 | } |
| 421 | 392 | } |
| 422 | 393 | |
| 423 | - public TrackDownRecord build(MaternalDeliverModel model) { | |
| 424 | - TrackDownRecord record = new TrackDownRecord(); | |
| 425 | - record.setParentId(model.getId()); | |
| 426 | 394 | |
| 427 | - Patients patients = patientsService.findOnePatientById(model.getParentId()); | |
| 428 | - record.setAddressRegister(patients.getAddressRegister()); | |
| 429 | - record.setAreaRegisterId(patients.getAreaRegisterId()); | |
| 430 | - record.setBirth(patients.getBirth()); | |
| 431 | - record.setCityRegisterId(patients.getCityRegisterId()); | |
| 432 | - record.setUsername(patients.getUsername()); | |
| 433 | - record.setStreetRegisterId(patients.getStreetRegisterId()); | |
| 434 | - record.setPhone(patients.getPhone()); | |
| 435 | - record.setHospitalId(model.getHospitalId()); | |
| 436 | - record.setStatus(1); | |
| 437 | - record.setSource(model.getId()); | |
| 438 | - record.setCardNo(patients.getCardNo()); | |
| 439 | - record.setTrackType(TrackDownDateEnums.F.getId()); | |
| 440 | - return record; | |
| 441 | - } | |
| 442 | 395 | } |
| 443 | 396 | |
| 444 | 397 | |
| 445 | 398 | |
| 446 | 399 | |
| 447 | 400 | |
| 448 | 401 | |
| ... | ... | @@ -446,27 +399,30 @@ |
| 446 | 399 | * 产后访视追访数据加载 |
| 447 | 400 | * 1.分娩并出院有出院小结的孕妇 |
| 448 | 401 | */ |
| 449 | - class CHTrackDownDataLoader implements TrackDownDataLoader<DischargeAbstractMotherModel> { | |
| 402 | + class CHTrackDownDataLoader implements TrackDownDataLoader<MaternalDeliverModel> { | |
| 450 | 403 | |
| 451 | 404 | @Override |
| 452 | 405 | public void execute() { |
| 453 | 406 | int page = 0; |
| 454 | - List<DischargeAbstractMotherModel> data = null; | |
| 407 | + | |
| 408 | + List<MaternalDeliverModel> data = null; | |
| 455 | 409 | do { |
| 456 | 410 | |
| 457 | 411 | logger.info("CHTrackDownDataLoader execute "); |
| 458 | 412 | |
| 459 | - DischargeAbstractMotherQuery dischargeAbstractMotherQuery = new DischargeAbstractMotherQuery(); | |
| 460 | - dischargeAbstractMotherQuery.setYn(YnEnums.YES.getId()); | |
| 461 | - dischargeAbstractMotherQuery.setSort("createDate asc"); | |
| 462 | - dischargeAbstractMotherQuery.setNeed("1"); | |
| 463 | - dischargeAbstractMotherQuery.setPage(page); | |
| 464 | - dischargeAbstractMotherQuery.setLimit(limit); | |
| 413 | + MatDeliverQuery matDeliverQuery = new MatDeliverQuery(); | |
| 414 | + matDeliverQuery.setYn(YnEnums.YES.getId()); | |
| 465 | 415 | |
| 466 | - data = dischargeAbstractMotherService.query(dischargeAbstractMotherQuery); | |
| 416 | + matDeliverQuery.setSort("createDate asc"); | |
| 417 | + matDeliverQuery.setNeed("1"); | |
| 418 | + matDeliverQuery.setPage(page); | |
| 419 | + matDeliverQuery.setLimit(limit); | |
| 420 | + | |
| 421 | + data = matDeliverService.query(matDeliverQuery); | |
| 422 | + | |
| 467 | 423 | //查询妇女建档 |
| 468 | 424 | if (CollectionUtils.isNotEmpty(data)) { |
| 469 | - for (DischargeAbstractMotherModel model : data) { | |
| 425 | + for (MaternalDeliverModel model : data) { | |
| 470 | 426 | handOneByOne(model); |
| 471 | 427 | } |
| 472 | 428 | } |
| 473 | 429 | |
| 474 | 430 | |
| 475 | 431 | |
| 476 | 432 | |
| ... | ... | @@ -475,53 +431,23 @@ |
| 475 | 431 | } |
| 476 | 432 | |
| 477 | 433 | @Override |
| 478 | - public void handOneByOne(DischargeAbstractMotherModel model) { | |
| 434 | + public void handOneByOne(MaternalDeliverModel model) { | |
| 479 | 435 | |
| 480 | - | |
| 481 | 436 | TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); |
| 482 | 437 | downRecordQuery.setParentId(model.getId()); |
| 483 | 438 | List<TrackDownRecord> records = downRecordService.queryTrackDown(downRecordQuery); |
| 484 | 439 | if (CollectionUtils.isEmpty(records)) { |
| 485 | 440 | logger.info("CHTrackDownDataLoader addTrackDown by id :" + model.getId()); |
| 486 | - TrackDownRecord trackDownRecord = build(model); | |
| 487 | - if (null != trackDownRecord) { | |
| 488 | - downRecordService.addTrackDown(trackDownRecord); | |
| 489 | - trackDownRecord.setId(null); | |
| 490 | - trackDownRecord.setTrackType(TrackDownDateEnums.G.getId()); | |
| 491 | - downRecordService.addTrackDown(trackDownRecord); | |
| 441 | + Patients patients = patientsService.findOnePatientById(model.getParentId()); | |
| 442 | + if (null != patients) { | |
| 443 | + TrackDownRecord trackDownRecord = model.build(patients); | |
| 444 | + if (null != trackDownRecord) { | |
| 445 | + downRecordService.addTrackDown(trackDownRecord); | |
| 446 | + } | |
| 492 | 447 | } |
| 493 | 448 | } |
| 494 | 449 | } |
| 495 | - | |
| 496 | - public TrackDownRecord build(DischargeAbstractMotherModel model) { | |
| 497 | - | |
| 498 | - Patients patients = patientsService.findOnePatientById(model.getPatientId()); | |
| 499 | - if (null == patients) { | |
| 500 | - return null; | |
| 501 | - } | |
| 502 | - TrackDownRecord downRecord = new TrackDownRecord(); | |
| 503 | - downRecord.setParentId(model.getPatientId()); | |
| 504 | - downRecord.setSource(model.getId()); | |
| 505 | - downRecord.setPid(model.getPid()); | |
| 506 | - downRecord.setLastMenses(patients.getLastMenses()); | |
| 507 | - downRecord.setUsername(patients.getUsername()); | |
| 508 | - downRecord.setCityRegisterId(patients.getCityRegisterId()); | |
| 509 | - downRecord.setBirth(patients.getBirth()); | |
| 510 | - downRecord.setAreaRegisterId(patients.getAreaRegisterId()); | |
| 511 | - downRecord.setCardNo(patients.getCardNo()); | |
| 512 | - downRecord.setAddressRegister(patients.getAddressRegister()); | |
| 513 | - downRecord.setHospitalId(model.getHospitalId()); | |
| 514 | - downRecord.setPhone(patients.getPhone()); | |
| 515 | - downRecord.setStreetRegisterId(patients.getStreetRegisterId()); | |
| 516 | - downRecord.setAreaRegisterId(patients.getAreaRegisterId()); | |
| 517 | - downRecord.setStatus(1); | |
| 518 | - downRecord.setTrackType(TrackDownDateEnums.F.getId()); | |
| 519 | - return downRecord; | |
| 520 | - } | |
| 521 | 450 | } |
| 522 | - | |
| 523 | - @Autowired | |
| 524 | - private DischargeAbstractMotherService dischargeAbstractMotherService; | |
| 525 | 451 | @Autowired |
| 526 | 452 | private MatDeliverService matDeliverService; |
| 527 | 453 | } |
platform-operate-api/src/main/resources/spring/applicationContext-quartz.xml
View file @
a68d031
| ... | ... | @@ -61,6 +61,16 @@ |
| 61 | 61 | <property name="concurrent" value="false"></property> |
| 62 | 62 | </bean> |
| 63 | 63 | |
| 64 | + <!--预产期两周前自动创建分娩住院追访任务 --> | |
| 65 | + <bean id="dandleReachDue" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> | |
| 66 | + <!-- 要调用的bean --> | |
| 67 | + <property name="targetObject" ref="patientsServiceLocal"></property> | |
| 68 | + <!-- 要调用的Method --> | |
| 69 | + <property name="targetMethod" value="dandleReachDue"></property> | |
| 70 | + <!-- 是否并发,false表示 如果发生错误也不影响下一次的调用 --> | |
| 71 | + <property name="concurrent" value="false"></property> | |
| 72 | + </bean> | |
| 73 | + | |
| 64 | 74 | <bean id="delSieveTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> |
| 65 | 75 | <!-- 要调用的bean --> |
| 66 | 76 | <property name="targetObject" ref="patientsServiceLocal"></property> |
| ... | ... | @@ -142,6 +152,12 @@ |
| 142 | 152 | </bean> |
| 143 | 153 | |
| 144 | 154 | <!-- 配置一个触发器 --> |
| 155 | + <bean id="dandleReachDueTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> | |
| 156 | + <property name="jobDetail" ref="dandleReachDue"></property> | |
| 157 | + <property name="cronExpression" value="0 0 2 * * ?"></property> | |
| 158 | + </bean> | |
| 159 | + | |
| 160 | + <!-- 配置一个触发器 --> | |
| 145 | 161 | <bean id="delSieveTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> |
| 146 | 162 | <property name="jobDetail" ref="delSieveTask"></property> |
| 147 | 163 | <property name="cronExpression" value="0 30 3 * * ?"></property> |
| 148 | 164 | |
| ... | ... | @@ -188,7 +204,15 @@ |
| 188 | 204 | <property name="repeatCount" value="0" /> |
| 189 | 205 | </bean> |
| 190 | 206 | |
| 207 | + <!-- 分娩前20周分娩住院追访配置项目启动后任务就执行一次 --> | |
| 208 | + <bean id="firstDandleReachDueTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"> | |
| 209 | + <property name="jobDetail" ref="dandleReachDue" /> | |
| 210 | + <property name="startDelay" value="500" /> | |
| 211 | + <property name="repeatInterval" value="0" /> | |
| 212 | + <property name="repeatCount" value="0" /> | |
| 213 | + </bean> | |
| 191 | 214 | |
| 215 | + | |
| 192 | 216 | <!-- 孕妇学校定时任务 --> |
| 193 | 217 | <bean id="courseWorker" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> |
| 194 | 218 | <!-- 要调用的bean --> |
| ... | ... | @@ -216,6 +240,10 @@ |
| 216 | 240 | <ref bean="correctSieveOrderTrigger"/> |
| 217 | 241 | <ref bean="autoInsertIdTrigger"/> |
| 218 | 242 | <ref bean="courseTrigger"/> |
| 243 | + <!--预产期前两周自动创建分娩住院追访--> | |
| 244 | + <ref bean="dandleReachDueTrigger"/> | |
| 245 | + <!--预产期前两周自动创建分娩住院追访启动时执行一次--> | |
| 246 | + <ref bean="firstDandleReachDueTrigger" /> | |
| 219 | 247 | <!--乐陵住院系统同步--> |
| 220 | 248 | <!--<ref bean="synLlHisDataTrigger"/>--> |
| 221 | 249 | <!--乐陵住院启动时执行一次--> |