Commit 2d84b68032e07f89f19a482f6c3dcb22410cd34d
1 parent
3c8ab1ada5
Exists in
master
and in
6 other branches
追访相关
Showing 3 changed files with 72 additions and 7 deletions
platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java
View file @
2d84b68
... | ... | @@ -18,6 +18,9 @@ |
18 | 18 | |
19 | 19 | private String parentId; |
20 | 20 | |
21 | + /** | |
22 | + * 居民健康档案(妇女健康 )模型Id ResidentsArchiveModel | |
23 | + */ | |
21 | 24 | private String residentsArchiveId; |
22 | 25 | |
23 | 26 | private String pid; |
... | ... | @@ -38,7 +41,7 @@ |
38 | 41 | private Date trackDownDate; |
39 | 42 | |
40 | 43 | /** |
41 | - * 追访人 | |
44 | + * 追访人(前端直接传入的string 返回也返回string) | |
42 | 45 | */ |
43 | 46 | private String trackDownUserId; |
44 | 47 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java
View file @
2d84b68
... | ... | @@ -49,6 +49,12 @@ |
49 | 49 | return trackDownService.list(provinceId, cityId, areaId, streetId, key, trackType, page, limit, getUserId(request)); |
50 | 50 | } |
51 | 51 | |
52 | + /** | |
53 | + * | |
54 | + * @param parentId | |
55 | + * @param trackType 产考TrackDownDateEnums里面的值 0代表所有 | |
56 | + * @return | |
57 | + */ | |
52 | 58 | @ResponseBody |
53 | 59 | @RequestMapping(value = "/{parentId}/{trackType}", method = RequestMethod.GET) |
54 | 60 | @TokenRequired |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java
View file @
2d84b68
... | ... | @@ -175,9 +175,19 @@ |
175 | 175 | |
176 | 176 | public BaseResponse add(Integer userId, TrackDown trackDown) { |
177 | 177 | String hospitalId = autoMatchFacade.getHospitalId(userId); |
178 | - String parentId = mongoUtil.doHidePatient(trackDown.getParentId(), hospitalId); | |
179 | - trackDown.setPid(mongoUtil.getPid(parentId)); | |
180 | - trackDown.setParentId(parentId); | |
178 | + if(StringUtils.isNotEmpty(trackDown.getResidentsArchiveId())) { // 怀孕建档是lyms_resident | |
179 | + ResidentsArchiveModel archiveModel = mongoTemplate.findById(trackDown.getResidentsArchiveId(), ResidentsArchiveModel.class); | |
180 | + Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("cardNo").is(archiveModel.getCertificateNum())).with(new Sort(Sort.Direction.DESC, "created")), Patients.class); | |
181 | + if(patients != null) { | |
182 | + String parentId = mongoUtil.doHidePatient(patients.getId(), hospitalId); | |
183 | + trackDown.setPid(mongoUtil.getPid(parentId)); | |
184 | + trackDown.setParentId(parentId); | |
185 | + } | |
186 | + } else { | |
187 | + String parentId = mongoUtil.doHidePatient(trackDown.getParentId(), hospitalId); | |
188 | + trackDown.setPid(mongoUtil.getPid(parentId)); | |
189 | + trackDown.setParentId(parentId); | |
190 | + } | |
181 | 191 | trackDown.setYn(YnEnums.YES.getId()); |
182 | 192 | trackDown.setCreated(new Date()); |
183 | 193 | trackDown.setHospitalId(hospitalId); |
... | ... | @@ -217,7 +227,7 @@ |
217 | 227 | } |
218 | 228 | } |
219 | 229 | |
220 | - if(trackType == TrackDownDateEnums.A.getId()) { | |
230 | + if(trackType == TrackDownDateEnums.B.getId()) { | |
221 | 231 | Criteria c = new Criteria(); |
222 | 232 | if(StringUtils.isNotEmpty(provinceId)) { |
223 | 233 | c.and("provinceId").is(provinceId); |
... | ... | @@ -247,6 +257,7 @@ |
247 | 257 | temp.put("residenceAddress", mongoUtil.findAddressName(residentsArchiveModel.getProvinceId(), residentsArchiveModel.getCityId(), residentsArchiveModel.getAreaId(), residentsArchiveModel.getStreetId())); /** 居住地 */ |
248 | 258 | temp.put("phone", StringUtils.encryPhone(residentsArchiveModel.getPhone())); |
249 | 259 | TrackDown trackDown = mongoTemplate.findOne(Query.query(Criteria.where("residentsArchiveId").is(residentsArchiveModel.getId()).and("yn").is(1)).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); |
260 | + temp.put("age", DateUtil.getAge(residentsArchiveModel.getBirthday())); | |
250 | 261 | // 婚检追访结果 |
251 | 262 | temp.put("end", trackDown == null ? "--" : TrackDownTransferEnums.getName(trackDown.getTrackDownType())); |
252 | 263 | // 婚检追访时间 |
... | ... | @@ -271,6 +282,7 @@ |
271 | 282 | Patients patients = mongoTemplate.findById(trackDown.getParentId(), Patients.class); |
272 | 283 | if(patients != null) { |
273 | 284 | temp.put("username", patients.getUsername()); |
285 | + temp.put("age", DateUtil.getAge(patients.getBirth())); | |
274 | 286 | temp.put("cardNo", StringUtils.encryCardNo(patients.getCardNo())); |
275 | 287 | temp.put("residenceAddress", mongoUtil.findAddressName(patients.getProvinceId(), patients.getCityId(), patients.getAreaId(), patients.getStreetId())); /** 居住地 */ |
276 | 288 | temp.put("phone", StringUtils.encryPhone(patients.getPhone())); |
277 | 289 | |
278 | 290 | |
... | ... | @@ -287,17 +299,61 @@ |
287 | 299 | @Override |
288 | 300 | public BaseResponse info(String patientId, Integer trackType) { |
289 | 301 | List<Map<String, Object>> tabList = new ArrayList<>(); |
290 | - List<TrackDown> trackDowns = mongoTemplate.find(Query.query(Criteria.where("parentId").is(patientId).and("trackType").is(trackType)), TrackDown.class); | |
302 | + if(trackType == 0) { | |
303 | + List<TrackDown> trackDowns = mongoTemplate.find(Query.query(Criteria.where("parentId").is(patientId).and("yn").is(1)).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); | |
304 | + List<Map<String, Object>> hqjcList = new ArrayList<>(); // 婚前检查 | |
305 | + List<Map<String, Object>> hyjdList = new ArrayList<>(); // 怀孕建档 | |
306 | + List<Map<String, Object>> cqjcList = new ArrayList<>(); // 产前检查 | |
307 | + List<Map<String, Object>> cqscList = new ArrayList<>(); // 产前筛查 | |
308 | + List<Map<String, Object>> zyfmList = new ArrayList<>(); // 住院分娩 | |
309 | + List<Map<String, Object>> chfsList = new ArrayList<>(); // 产后访视 | |
310 | + List<Map<String, Object>> chfcList = new ArrayList<>(); // 产后复查 | |
311 | + for (TrackDown trackDown : trackDowns) { | |
312 | + Map<String, Object> temp = new HashMap<>(); | |
313 | + temp.put("trackDownDate", DateUtil.getyyyy_MM_dd_hms(trackDown.getTrackDownDate())); | |
314 | + temp.put("trackDownUser", trackDown.getTrackDownUserId()); | |
315 | + temp.put("trackDownType", TrackDownTypeEnums.getName(trackDown.getTrackDownDateType())); | |
316 | + temp.put("result", StringUtils.isEmpty(trackDown.getResult()) ? "--" : trackDown.getResult()); | |
317 | + temp.put("reservatDate", DateUtil.getyyyy_MM_dd(trackDown.getReservatDate())); | |
318 | + if(TrackDownDateEnums.A.getId().equals(trackDown.getTrackDownDateType())) { | |
319 | + hqjcList.add(temp); | |
320 | + } else if(TrackDownDateEnums.B.getId().equals(trackDown.getTrackDownDateType())) { | |
321 | + hyjdList.add(temp); | |
322 | + } else if(TrackDownDateEnums.C.getId().equals(trackDown.getTrackDownDateType())) { | |
323 | + cqjcList.add(temp); | |
324 | + } else if(TrackDownDateEnums.D.getId().equals(trackDown.getTrackDownDateType())) { | |
325 | + cqscList.add(temp); | |
326 | + } else if(TrackDownDateEnums.E.getId().equals(trackDown.getTrackDownDateType())) { | |
327 | + zyfmList.add(temp); | |
328 | + } else if(TrackDownDateEnums.F.getId().equals(trackDown.getTrackDownDateType())) { | |
329 | + chfsList.add(temp); | |
330 | + } else if(TrackDownDateEnums.G.getId().equals(trackDown.getTrackDownDateType())) { | |
331 | + chfcList.add(temp); | |
332 | + } | |
333 | + } | |
334 | + setTrackType(); | |
335 | + return RespBuilder.buildSuccess("hqjcList", hqjcList, "hyjdList", hyjdList, "cqjcList", cqjcList, "cqscList", cqscList, "zyfmList", zyfmList, "chfsList", chfsList, "chfcList", chfcList); | |
336 | + } | |
337 | + List<TrackDown> trackDowns = mongoTemplate.find(Query.query(Criteria.where("parentId").is(patientId).and("trackType").is(trackType).and("yn").is(1)), TrackDown.class); | |
291 | 338 | for (TrackDown trackDown : trackDowns) { |
292 | 339 | Map<String, Object> temp = new HashMap<>(); |
293 | 340 | temp.put("trackDownDate", DateUtil.getyyyy_MM_dd_hms(trackDown.getTrackDownDate())); |
294 | - temp.put("trackDownUser", couponMapper.findUserName(trackDown.getTrackDownUserId())); | |
341 | + temp.put("trackDownUser", trackDown.getTrackDownUserId()); | |
295 | 342 | temp.put("trackDownType", TrackDownTypeEnums.getName(trackDown.getTrackDownDateType())); |
296 | 343 | temp.put("result", StringUtils.isEmpty(trackDown.getResult()) ? "--" : trackDown.getResult()); |
297 | 344 | temp.put("reservatDate", DateUtil.getyyyy_MM_dd(trackDown.getReservatDate())); |
298 | 345 | tabList.add(temp); |
299 | 346 | } |
300 | 347 | return RespBuilder.buildSuccess(tabList); |
348 | + } | |
349 | + | |
350 | + private void setTrackType(List<Map<String, Object>> ... datas) { | |
351 | + for (List<Map<String, Object>> data : datas) { | |
352 | + | |
353 | + for (Map<String, Object> map : data) { | |
354 | + | |
355 | + } | |
356 | + } | |
301 | 357 | } |
302 | 358 | |
303 | 359 | @Override |