Commit e6da7accecf840c202cf904d4ad8d4e73c9c45ff

Authored by yangfei
1 parent 52090feae0

自动生成追访信息

Showing 2 changed files with 40 additions and 44 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java View file @ e6da7ac
... ... @@ -281,12 +281,6 @@
281 281 //新增分娩信息
282 282 matDeliverService.addMatDeliver(maternalDeliverModel);
283 283  
284   -
285   - //添加产后追访信息
286   - if (CollectionUtils.isNotEmpty(patients)) {
287   - addTrackDownInfo(userId,patients.get(0));
288   - }
289   -
290 284 operateLogFacade.addAddOptLog(userId, Integer.parseInt(hospitalId), maternalDeliverModel, OptActionEnums.ADD.getId(), "添加分娩");
291 285  
292 286 /** 使用优惠券 */
... ... @@ -299,6 +293,10 @@
299 293  
300 294 //作废产检劵
301 295 patientCheckTicketService.cancelCheckTicket(hospitalId, deliverAddRequest.getParentId());
  296 +
  297 + //添加产后追访信息
  298 + addTrackDownInfo(userId, patients2);
  299 +
302 300 //修改
303 301 } else if (StringUtils.isNotEmpty(deliverAddRequest.getId()) && StringUtils.isNotEmpty(deliverAddRequest.getParentId())) {
304 302  
... ... @@ -341,8 +339,7 @@
341 339 List<MaternalDeliverModel> results = matDeliverService.query(query);
342 340  
343 341 matDeliverService.updateOne(maternalDeliverModel, maternalDeliverModel.getId());
344   - if (CollectionUtils.isNotEmpty(results))
345   - {
  342 + if (CollectionUtils.isNotEmpty(results)) {
346 343 operateLogFacade.addModifyOptLog(userId, Integer.parseInt(hospitalId), maternalDeliverModel, results.get(0), OptActionEnums.UPDATE.getId(), "修改分娩");
347 344 }
348 345  
... ... @@ -384,6 +381,9 @@
384 381 /** 填写分娩表分娩 >> 作废未使用的产检券 */
385 382 // remoteService.invalidCoupon(patients.getPid(), "2", RemoteUrlEnum.INVALID_COUPON_URL);
386 383 }
  384 +
  385 + //添加产后追访信息
  386 + addTrackDownInfo(userId, patients2);
387 387 } else {
388 388 return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("parentId 为空,找不到产妇");
389 389 }
... ... @@ -393,6 +393,7 @@
393 393  
394 394 /**
395 395 * 分娩添加或更新追访信息
  396 + *
396 397 * @param userId
397 398 */
398 399 public void addTrackDownInfo(Integer userId, Patients patients) {
399 400  
400 401  
... ... @@ -401,14 +402,14 @@
401 402 if (day <= 60) {//产后60天内,可做产后访视或产后复查环节
402 403 if (null != patients) {
403 404 TrackDownRecord trackDownRecord = patients.build();
404   - if(patients.getDueStatus() == 1){//终止妊娠
  405 + if (patients.getDueStatus() == 1) {//终止妊娠
405 406 trackDownRecord.setTrackType(TrackDownDateEnums.F.getId());
406 407 //当前孕妇是孕28周后,进入产后复查追访,否则结束流程
407 408 int dueWeek = DateUtil.getWeek2(patients.getLastMenses(), patients.getFmDate());
408 409  
409   - if(dueWeek>=28){//进入产后复查
  410 + if (dueWeek >= 28) {//进入产后复查
410 411 trackDownRecord.setTrackType(TrackDownDateEnums.J.getId());
411   - }else{//结束流程
  412 + } else {//结束流程
412 413 trackDownRecord.setStatus(0);
413 414 }
414 415 }
415 416  
... ... @@ -704,12 +705,12 @@
704 705 baby1.setId(babyModel.getId());
705 706  
706 707 //儿童分娩自动建档开通增值服务
707   - if (babyModel.getServiceType()!=null) {
  708 + if (babyModel.getServiceType() != null) {
708 709 PatientService patientService = new PatientService();
709 710 patientService.setPerType(2);
710 711 List<Map<String, String>> serInfos = new ArrayList<>();
711 712 Map<String, String> serMap = new HashMap<>();
712   - serMap.put("serType",String.valueOf(PatientSerEnums.SerTypeEnums.babyBzfw.getId()));
  713 + serMap.put("serType", String.valueOf(PatientSerEnums.SerTypeEnums.babyBzfw.getId()));
713 714 serInfos.add(serMap);
714 715 patientService.setSerInfos(serInfos);
715 716 patientService.setCreateUser(String.valueOf("a9e5507f-e7da-4ec6-b8db-9a1e4d1b7c29"));
... ... @@ -718,7 +719,7 @@
718 719 patientService.setParentid(babyModel.getId());
719 720 patientService.setPid(babyModel.getPid());
720 721 try {
721   - patientServiceFacade.addPatientService(patientService, Integer.parseInt(patients.getBookbuildingDoctor()),babyModel.getHospitalId());
  722 + patientServiceFacade.addPatientService(patientService, Integer.parseInt(patients.getBookbuildingDoctor()), babyModel.getHospitalId());
722 723 } catch (Exception e) {
723 724 System.out.println("儿童建档服务开通异常!");
724 725 e.printStackTrace();
725 726  
726 727  
... ... @@ -753,15 +754,11 @@
753 754 String hospital = autoMatchFacade.getHospitalId(userId);
754 755  
755 756 //聊城东昌府分娩界面通过住院号从his中查询到孕妇的身份号码,然后用身份证号码作为院内系统的查询条件查询孕妇信息
756   - if ("2100001305".equals(hospital) && StringUtils.isNotEmpty(deliverQueryRequest.getZhuYuanNo()))
757   - {
  757 + if ("2100001305".equals(hospital) && StringUtils.isNotEmpty(deliverQueryRequest.getZhuYuanNo())) {
758 758 LcdcfHisModel lcdcfHisModel = lcdcfHisService.getHisPatientByZyh(deliverQueryRequest.getZhuYuanNo());
759   - if (lcdcfHisModel != null && StringUtils.isNotEmpty(lcdcfHisModel.getIdCard()))
760   - {
  759 + if (lcdcfHisModel != null && StringUtils.isNotEmpty(lcdcfHisModel.getIdCard())) {
761 760 deliverQueryRequest.setCardNo(lcdcfHisModel.getIdCard());
762   - }
763   - else
764   - {
  761 + } else {
765 762 return new BaseResponse().setErrormsg("该孕妇还未在本院建档不能进行分娩").setErrorcode(ErrorCodeConstants.NO_DATA);
766 763 }
767 764 }
768 765  
... ... @@ -1311,12 +1308,12 @@
1311 1308 patientsQuery.setFmDateEnd(DateUtil.getSNDate(matdeliverFollowRequest.getBirthDate())[1]);
1312 1309 }
1313 1310  
1314   - if(matdeliverFollowRequest.getFollowStage()!=null){//按访视阶段查询
1315   - if(matdeliverFollowRequest.getFollowStage() == 1){//1、访视期内 分娩时间为:21天到当前时间
1316   - patientsQuery.setFmDateStart(DateUtil.addDay(new Date(),-22));
  1311 + if (matdeliverFollowRequest.getFollowStage() != null) {//按访视阶段查询
  1312 + if (matdeliverFollowRequest.getFollowStage() == 1) {//1、访视期内 分娩时间为:21天到当前时间
  1313 + patientsQuery.setFmDateStart(DateUtil.addDay(new Date(), -22));
1317 1314 patientsQuery.setFmDateEnd(new Date());
1318   - }else if(matdeliverFollowRequest.getFollowStage() == 2){//2、超出访视期 分娩时间为:结束时间为:21天前的
1319   - patientsQuery.setFmDateEnd(DateUtil.addDay(new Date(),-22));
  1315 + } else if (matdeliverFollowRequest.getFollowStage() == 2) {//2、超出访视期 分娩时间为:结束时间为:21天前的
  1316 + patientsQuery.setFmDateEnd(DateUtil.addDay(new Date(), -22));
1320 1317 }
1321 1318 }
1322 1319 patientsQuery.setFmHospitalQueryList(hospitalList);
1323 1320  
... ... @@ -1339,12 +1336,12 @@
1339 1336 matDeliverQuery.setCreatedStart(DateUtil.getSNDate(matdeliverFollowRequest.getBirthDate())[0]);
1340 1337 matDeliverQuery.setEndStart(DateUtil.getSNDate(matdeliverFollowRequest.getBirthDate())[1]);
1341 1338 }
1342   - if(matdeliverFollowRequest.getFollowStage()!=null){//按访视阶段查询
1343   - if(matdeliverFollowRequest.getFollowStage() == 1){//1、访视期内 分娩时间为:21天到当前时间
1344   - matDeliverQuery.setCreatedStart(DateUtil.addDay(new Date(),-22));
  1339 + if (matdeliverFollowRequest.getFollowStage() != null) {//按访视阶段查询
  1340 + if (matdeliverFollowRequest.getFollowStage() == 1) {//1、访视期内 分娩时间为:21天到当前时间
  1341 + matDeliverQuery.setCreatedStart(DateUtil.addDay(new Date(), -22));
1345 1342 matDeliverQuery.setEndStart(new Date());
1346   - }else if(matdeliverFollowRequest.getFollowStage() == 2){//2、超出访视期 分娩时间为:结束时间为:21天前的
1347   - matDeliverQuery.setEndStart(DateUtil.addDay(new Date(),-22));
  1343 + } else if (matdeliverFollowRequest.getFollowStage() == 2) {//2、超出访视期 分娩时间为:结束时间为:21天前的
  1344 + matDeliverQuery.setEndStart(DateUtil.addDay(new Date(), -22));
1348 1345 }
1349 1346 }
1350 1347  
1351 1348  
... ... @@ -1361,12 +1358,12 @@
1361 1358 matDeliverQuery.setMakeType(matdeliverFollowRequest.getMakeType());
1362 1359 List<MaternalDeliverModel> maternalDeliverModelList;
1363 1360  
1364   - if(StringUtils.isNotEmpty(matdeliverFollowRequest.getNeed())){//是否分页
  1361 + if (StringUtils.isNotEmpty(matdeliverFollowRequest.getNeed())) {//是否分页
1365 1362 matDeliverQuery.setNeed("need");
1366 1363 matDeliverQuery.setLimit(matdeliverFollowRequest.getLimit());
1367 1364 matDeliverQuery.setPage(matdeliverFollowRequest.getPage());
1368 1365 maternalDeliverModelList = matDeliverService.pageQuery(matDeliverQuery);
1369   - }else{
  1366 + } else {
1370 1367 maternalDeliverModelList = matDeliverService.query(matDeliverQuery);
1371 1368 }
1372 1369  
... ... @@ -1431,7 +1428,7 @@
1431 1428 //预约联系结果
1432 1429 if (deliverModel.getContactResult() != null) {
1433 1430 matdeliverFollowListResult.setContactResultStr(PostpartumFollowMakeEnums.ResultEnum.getTitle(deliverModel.getContactResult()));
1434   - if(deliverModel.getContactResult() == 1){//预约成功,返回访视类型
  1431 + if (deliverModel.getContactResult() == 1) {//预约成功,返回访视类型
1435 1432 //访视类型
1436 1433 if (deliverModel.getMakeType() != null) {
1437 1434 matdeliverFollowListResult.setMakeType(PostpartumFollowMakeEnums.TypeEnum.getTitle(deliverModel.getMakeType()));
... ... @@ -1444,7 +1441,6 @@
1444 1441 }
1445 1442  
1446 1443  
1447   -
1448 1444 //下次访视时间
1449 1445 if (deliverModel.getNextVisitDate() != null) {
1450 1446 matdeliverFollowListResult.setNextVisitDate(DateUtil.getyyyy_MM_dd(deliverModel.getNextVisitDate()));
1451 1447  
... ... @@ -1459,10 +1455,10 @@
1459 1455 }
1460 1456  
1461 1457 matdeliverFollowListResult.setFollowStage(2);
1462   - if(StringUtils.isNotEmpty(deliverModel.getDueDate())){//根据分娩时间判断访视时间是否过期
  1458 + if (StringUtils.isNotEmpty(deliverModel.getDueDate())) {//根据分娩时间判断访视时间是否过期
1463 1459 Date resultDate = DateUtil.parseYMD(deliverModel.getDueDate());
1464   - boolean isScope = DateUtil.isBetween(resultDate,DateUtil.addDay(new Date(),-22),new Date());
1465   - matdeliverFollowListResult.setFollowStage(isScope?1:2);
  1460 + boolean isScope = DateUtil.isBetween(resultDate, DateUtil.addDay(new Date(), -22), new Date());
  1461 + matdeliverFollowListResult.setFollowStage(isScope ? 1 : 2);
1466 1462 }
1467 1463 matdeliverFollowListResults.add(matdeliverFollowListResult);
1468 1464 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java View file @ e6da7ac
... ... @@ -284,8 +284,8 @@
284 284 temp.put("bookbuildDate", DateUtil.getyyyy_MM_dd(patient.getBookbuildingDate()));
285 285 temp.put("bookbuild", 1); // 孕期建档 1=勾勾 2=叉叉
286 286  
287   -
288   - if (patient.getDueStatus() == 1 || (patient.getIsAutoFm() != null && patient.getIsAutoFm() == 1)) {//终止妊娠,或自动分娩
  287 + //终止妊娠,或自动分娩
  288 + if ((patient.getDueStatus()!=null && patient.getDueStatus() == 1) || (patient.getIsAutoFm() != null && patient.getIsAutoFm() == 1)) {
289 289 temp.put("fm", 2); // 分娩 1=勾勾 2=叉叉
290 290 } else if (patient.getType() == 3) { //本院已分娩
291 291 if (patient.getIsAutoFm() != null && patient.getIsAutoFm() == 1) {
... ... @@ -323,7 +323,7 @@
323 323 temp.put("chfc", 1);
324 324 temp.put("chfcCount", postInt); // 复查次数
325 325 } else {
326   - if (patient.getDueStatus() == 1) {//终止妊娠
  326 + if (patient.getDueStatus()!=null && patient.getDueStatus() == 1) {//终止妊娠
327 327 //当前孕妇是孕28周后,进入产后复查追访,否则结束流程
328 328 int dueWeek = DateUtil.getWeek2(patient.getLastMenses(), patient.getFmDate());
329 329 if (dueWeek < 28) {//进入产后复查
330 330  
... ... @@ -456,12 +456,12 @@
456 456 if (StringUtils.isNotEmpty(trackDownRecord.getId())) {
457 457 TrackDownRecord trackDownRecord1 = trackDownRecordService.getTrackDown(trackDownRecord.getId());
458 458 if (trackDownRecord1 != null) {
459   - //流程只能往下流转,不能往上回退
460   - if (trackDownRecord.getTrackType() != null && trackDownRecord.getTrackType() < trackDownRecord1.getTrackType().intValue()) {
  459 + //流程只能往下流转,不能往上回退,,因为9,10,11,12,是后面加入的产筛转出流程所以不做判断
  460 + /* if (trackDownRecord.getTrackType() != null && trackDownRecord.getTrackType() < trackDownRecord1.getTrackType().intValue()) {
461 461 //用以前追访的类型和来源id
462 462 trackDownRecord.setTrackType(trackDownRecord1.getTrackType());
463 463 trackDownRecord.setSource(trackDownRecord1.getSource());
464   - }
  464 + }*/
465 465 //由显示修改成不显示,后期数据更新时,不允许将不显示修改成显示。
466 466 if (trackDownRecord1.getStatus() < trackDownRecord.getStatus()) {
467 467 trackDownRecord.setStatus(trackDownRecord1.getStatus());