diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java index 1c401b3..1476bbd 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java @@ -14,6 +14,7 @@ import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.common.utils.*; import com.lyms.platform.operate.web.request.*; import com.lyms.platform.operate.web.result.*; +import com.lyms.platform.operate.web.service.ITrackDownService; import com.lyms.platform.operate.web.utils.InitDataUtils; import com.lyms.platform.operate.web.utils.MongoUtil; import com.lyms.platform.operate.web.utils.ResolveUtils; @@ -100,7 +101,10 @@ public class AntenatalExaminationFacade { @Autowired private DzfyHisService dzfyHisService; - + @Autowired + private ITrackDownService trackDownService; + @Autowired + private TrackDownRecordService trackDownRecordService; @Autowired private HosptialHighRiskFacade highRiskFacade; @@ -399,8 +403,6 @@ public class AntenatalExaminationFacade { model1.setModified(new Date()); model1.setStatus(2); applyOrderService.updateByParentId(referralApplyOrderQuery1, model1); - - ReferralApplyOrderQuery referralApplyOrderQuery2 = new ReferralApplyOrderQuery(); referralApplyOrderQuery2.setOutHospitalId(hospital); referralApplyOrderQuery2.setTransferredHospital(outHospitalId); @@ -409,6 +411,8 @@ public class AntenatalExaminationFacade { applyOrderService.updateByParentId(referralApplyOrderQuery2, model1); } } + //添加复诊时添加追访信息 + addTrackDownInfo(userId,patients); } //处理自定义高危状态为已使用状态 highRiskFacade.dispHospHighRiskUse(model.getOtherRisk()); @@ -612,6 +616,8 @@ public class AntenatalExaminationFacade { applyOrderService.updateByParentId(referralApplyOrderQuery2, model); } } + //初诊是添加追访记录 + addTrackDownInfo(userId,patients); } else { return new BaseResponse().setErrorcode(ErrorCodeConstants.PARAMETER_ERROR).setErrormsg("您已经做过初诊"); } @@ -622,6 +628,26 @@ public class AntenatalExaminationFacade { } /** + * 初诊、复诊添加或更新追访信息 + * @param userId + * @param patient + */ + public void addTrackDownInfo(Integer userId, Patients patient) { + //添加产后追访信息 + TrackDownRecord trackDownRecord = patient.build(); + //根据patient查询是否存在追访信息 + TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); + downRecordQuery.setParentId(patient.getId()); + List records = trackDownRecordService.queryTrackDown(downRecordQuery); + if (CollectionUtils.isNotEmpty(records)) {//存在则进行修改,只修改基本信息,不修改显示状态和追访类型 + TrackDownRecord trackDownRecord1 = records.get(0); + trackDownRecord.setId(trackDownRecord1.getId()); + } + trackDownService.addOrupdateTrackDownRecord(userId, trackDownRecord); + } + + + /** * 修改最后一次定义高危的时间 * * @param parentId diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/StopPregnancyFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/StopPregnancyFacade.java index 7748813..cb96575 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/StopPregnancyFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/StopPregnancyFacade.java @@ -17,10 +17,7 @@ import com.lyms.platform.permission.model.UsersQuery; import com.lyms.platform.permission.service.CouponService; import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.*; -import com.lyms.platform.query.AntExChuQuery; -import com.lyms.platform.query.MatDeliverQuery; -import com.lyms.platform.query.PatientsQuery; -import com.lyms.platform.query.StopPregQuery; +import com.lyms.platform.query.*; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -70,6 +67,8 @@ public class StopPregnancyFacade { private OperateLogFacade operateLogFacade; @Autowired private ITrackDownService trackDownService; + @Autowired + private TrackDownRecordService trackDownRecordService; /** * 更新终止妊娠 @@ -113,20 +112,8 @@ public class StopPregnancyFacade { if (patient != null) { patient.setFmDate(DateUtil.parseYMD(request.getStopDate())); yunBookbuildingService.updatePregnant(patient, patient.getId()); - - //当前孕妇是孕28周后,进入产后复查追访,否则结束流程 - int dueWeek = DateUtil.getWeek2(patient.getLastMenses(), patient.getBookbuildingDate()); - TrackDownRecord trackDownRecord = patient.build(); - if(dueWeek>28){//进入产后复查 - trackDownRecord.setTrackType(TrackDownDateEnums.F.getId()); - //--终止妊娠后不显示追访 - trackDownRecord.setStatus(1); - trackDownService.addOrupdateTrackDownRecord(patient.getOperator(),trackDownRecord); - }else{//结束流程 - //--终止妊娠后不显示追访 - trackDownRecord.setStatus(0); - } - trackDownService.addOrupdateTrackDownRecord(patient.getOperator(),trackDownRecord); + //终止妊娠生成追访信息 + addTrackDownInfo(patient.getOperator(),patient); } } } @@ -136,7 +123,6 @@ public class StopPregnancyFacade { /** 终止妊娠后 【未使用的产检券和分娩券】要自动作废 */ couponService.invalid(model.getPid(), "2,4"); - BaseResponse objectResponse = new BaseResponse(); objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS); objectResponse.setErrormsg("成功"); @@ -218,20 +204,8 @@ public class StopPregnancyFacade { sieveService.deleteSieve(pat.getId(), hospital, pat.getLastMenses()); //分娩状态 0未终止妊娠 1终止妊娠 yunBookbuildingService.updatePregnant(patient, patient.getId()); - - //当前孕妇是孕28周后,进入产后复查追访,否则结束流程 - int dueWeek = DateUtil.getWeek2(patient.getLastMenses(), patient.getBookbuildingDate()); - TrackDownRecord trackDownRecord = patient.build(); - if(dueWeek>28){//进入产后复查 - trackDownRecord.setTrackType(TrackDownDateEnums.F.getId()); - //--终止妊娠后不显示追访 - trackDownRecord.setStatus(1); - trackDownService.addOrupdateTrackDownRecord(patient.getOperator(),trackDownRecord); - }else{//结束流程 - //--终止妊娠后不显示追访 - trackDownRecord.setStatus(0); - } - trackDownService.addOrupdateTrackDownRecord(patient.getOperator(),trackDownRecord); + //终止妊娠生成追访信息 + addTrackDownInfo(userId,patient); } } @@ -271,6 +245,36 @@ public class StopPregnancyFacade { return objectResponse; } + /** + * 初诊、复诊添加或更新追访信息 + * @param userId + * @param patient + */ + public void addTrackDownInfo(Integer userId, Patients patient) { + TrackDownRecord trackDownRecord = patient.build(); + //根据patient查询是否存在追访信息 + TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); + downRecordQuery.setParentId(patient.getId()); + List records = trackDownRecordService.queryTrackDown(downRecordQuery); + if (CollectionUtils.isNotEmpty(records)) {//存在则进行修改,只修改基本信息,不修改显示状态和追访类型 + TrackDownRecord trackDownRecord1 = records.get(0); + trackDownRecord.setId(trackDownRecord1.getId()); + } + + //当前孕妇是孕28周后,进入产后复查追访,否则结束流程 + int dueWeek = DateUtil.getWeek2(patient.getLastMenses(), patient.getBookbuildingDate()); + + if(dueWeek>=28){//进入产后复查 + trackDownRecord.setTrackType(TrackDownDateEnums.F.getId()); + //--终止妊娠后不显示追访 + trackDownRecord.setStatus(1); + }else{//结束流程 + //--终止妊娠后不显示追访 + trackDownRecord.setStatus(0); + } + trackDownService.addOrupdateTrackDownRecord(userId,trackDownRecord); + } + private StopPregModel getStopPregModel(StopPregRequest request) { StopPregModel model = new StopPregModel(); model.setPid(request.getPid());