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 | <!--乐陵住院启动时执行一次--> |