diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java b/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java index 8e88891..cb635e9 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java @@ -74,7 +74,7 @@ public class TrackDown extends BaseModel { private String result; /** - * 追访转接 是否流转 + * 追访转接 是否流转 1-当前流程 2-流转至下一流程 3-停止所有流程 */ private Integer trackDownTransfer; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java index 42f8c34..89b4a6f 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java @@ -97,11 +97,11 @@ public class MatDeliverFacade { @Autowired private OperateLogFacade operateLogFacade; @Autowired - private TrackDownRecordService trackDownRecordService; - @Autowired private PatientServiceFacade patientServiceFacade; @Autowired private ITrackDownService trackDownService; + @Autowired + private TrackDownRecordService trackDownRecordService; private static Map ONE_ENUMS = new HashMap<>(); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java index 2832046..519c4c8 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java @@ -1,11 +1,9 @@ package com.lyms.platform.operate.web.facade; -import com.lyms.platform.biz.service.AntenatalExaminationService; -import com.lyms.platform.biz.service.ApplyOrderService; -import com.lyms.platform.biz.service.PatientsService; -import com.lyms.platform.biz.service.SieveService; +import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.enums.OptActionEnums; +import com.lyms.platform.common.enums.TrackDownDateEnums; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseObjectResponse; @@ -20,16 +18,15 @@ import com.lyms.platform.operate.web.request.SieveAddRequest; import com.lyms.platform.operate.web.result.SieveDetailResult; import com.lyms.platform.operate.web.result.SieveListResult; import com.lyms.platform.operate.web.result.SieveResult; +import com.lyms.platform.operate.web.service.ITrackDownService; import com.lyms.platform.operate.web.worker.SieveWorker; import com.lyms.platform.permission.model.Organization; import com.lyms.platform.permission.service.OrganizationService; -import com.lyms.platform.pojo.Patients; -import com.lyms.platform.pojo.SieveApplyOrderModel; -import com.lyms.platform.pojo.SieveModel; -import com.lyms.platform.pojo.SieveResultModel; +import com.lyms.platform.pojo.*; import com.lyms.platform.query.SieveApplyOrderQuery; import com.lyms.platform.query.SieveQuery; import com.lyms.platform.query.SieveResultQuery; +import com.lyms.platform.query.TrackDownRecordQuery; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.math.NumberUtils; @@ -72,6 +69,11 @@ public class SieveFacade { @Qualifier("commonThreadPool") private ThreadPoolTaskExecutor commonThreadPool; + @Autowired + private ITrackDownService trackDownService; + @Autowired + private TrackDownRecordService trackDownRecordService; + /** * 增加一条产筛结果记录 * @@ -110,9 +112,36 @@ public class SieveFacade { SieveModel sieveModel1 = sieveService.findOneById(list.get(0).getId()); SieveService.handOrder(sieveModel1); sieveService.updateOneChanQianDiaSieve(sieveModel1); + Patients patients = patientsService.findOnePatientById(sieveModel1.getParentId()); + //添加追访记录 + addTrackDownInfo(userId, patients); return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } + /** + * 分娩添加或更新追访信息 + * + * @param userId + */ + public void addTrackDownInfo(Integer userId, Patients patients) { + if (null != patients) { + TrackDownRecord trackDownRecord = patients.build(); + //查询是否存在追访记录,如果有则修改,没有则新增 + TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); + downRecordQuery.setParentId(patients.getId()); + List records = trackDownRecordService.queryTrackDown(downRecordQuery); + if (CollectionUtils.isNotEmpty(records)) { + TrackDownRecord track = records.get(0); + //获取当前流程 + Integer nextId = TrackDownDateEnums.getEnum(track.getTrackType()).getNextid(); + //做产筛时自动流转至下一流程 + track.setTrackType(nextId); + trackDownRecord.setId(track.getId()); + trackDownService.addOrupdateTrackDownRecord(patients.getOperator(), trackDownRecord); + } + } + } + //产筛结果 public BaseResponse getOneSieve(String parentId) { SieveResultQuery sieveResultQuery = new SieveResultQuery(); @@ -179,7 +208,7 @@ public class SieveFacade { * @param chanQianDiaAddRequest * @return */ - public BaseResponse addOneChanQianDiaSieve(ChanQianDiaAddRequest chanQianDiaAddRequest,Integer userId) { + public BaseResponse addOneChanQianDiaSieve(ChanQianDiaAddRequest chanQianDiaAddRequest, Integer userId) { String hospital = autoMatchFacade.getHospitalId(userId); @@ -383,7 +412,6 @@ public class SieveFacade { /** * 修改数据 * 查询产筛表中status为1的数据。如果有申请单需要修改为2 - * */ public void updateSieveStatus() { SieveQuery sieveQuery = new SieveQuery();