diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java index 135a33b..5fdac85 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java @@ -118,7 +118,7 @@ public class ResidentsArchiveModel extends BaseModel { private Integer yn; private String publishId; - + /*****冗余字段*****/ private String publishName; //是否婚检 0 未婚检 1. 已婚检 private String checkup; @@ -126,6 +126,11 @@ public class ResidentsArchiveModel extends BaseModel { //是否怀孕建档 0 否 1 是 private String pregnantBuild; + //追访预约时间 + private Date followupTime; + + //是否终止流程 0 正常流程 1 终止流程 + private String stop; /***********荣成新增男性建档字段**********/ private String isOrNotrdl;//是否进食肉、蛋类(0:否;1:是;默认为1) @@ -165,6 +170,22 @@ public class ResidentsArchiveModel extends BaseModel { private String jtbm;//注明具体病名 + public String getStop() { + return stop; + } + + public void setStop(String stop) { + this.stop = stop; + } + + public Date getFollowupTime() { + return followupTime; + } + + public void setFollowupTime(Date followupTime) { + this.followupTime = followupTime; + } + public String getCheckup() { return checkup; } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/ResidentsArchiveQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/ResidentsArchiveQuery.java index ccea01f..6d6410e 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/ResidentsArchiveQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/ResidentsArchiveQuery.java @@ -124,6 +124,17 @@ public class ResidentsArchiveQuery extends BaseQuery implements IConvertToNative //是否怀孕建档 0 否 1 是 private String pregnantBuild; + //追访状态 0 正常 1. 待追访 2.已终止 + private Integer followupStatus; + + + public Integer getFollowupStatus() { + return followupStatus; + } + + public void setFollowupStatus(Integer followupStatus) { + this.followupStatus = followupStatus; + } public String getPregnantBuild() { return pregnantBuild; @@ -162,6 +173,17 @@ public class ResidentsArchiveQuery extends BaseQuery implements IConvertToNative if (StringUtils.isNotEmpty(pregnantBuild)) { condition = condition.and("pregnantBuild", pregnantBuild, MongoOper.IS); } + if (null != followupStatus) { + if (followupStatus == 1) { + condition = condition.and("followupTime", new Date(), MongoOper.LTE); + } else if (followupStatus == 2) { + condition = condition.and("followupTime", new Date(), MongoOper.GTE); + } else if (followupStatus == 3) { + condition = condition.and("stop", "1", MongoOper.IS); + } + } + + if (StringUtils.isNotBlank(username)) { condition = condition.and("username", username, MongoOper.LIKE); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java index 12c87f6..3b544b4 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java @@ -86,9 +86,9 @@ public class TrackDownController extends BaseController { @RequestMapping(value = "/all", method = RequestMethod.GET) public BaseResponse all(Date buildStart, Date buildEnd, Date checkStart, Date checkEnd, Date fmStart, Date fmEnd, String key, Integer type, @RequestParam Integer page, @RequestParam Integer limit, HttpServletRequest request, - Integer check, String checkup, String pregnantBuild) { + Integer check, String checkup, String pregnantBuild, Integer followupStatus) { return trackDownService.all(buildStart, buildEnd, checkStart, checkEnd, fmStart, fmEnd, key, - page, limit, getUserId(request), type, check, checkup, pregnantBuild); + page, limit, getUserId(request), type, check, checkup, pregnantBuild, followupStatus); } @ResponseBody diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/ITrackDownService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/ITrackDownService.java index be4f6a0..1be3887 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/ITrackDownService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/ITrackDownService.java @@ -17,7 +17,7 @@ public interface ITrackDownService extends IBaseService { BaseObjectResponse list(String provinceId, String cityId, String areaId, String streetId, String key, Integer trackType, Integer page, Integer limit, Integer userId); BaseObjectResponse all(Date buildStart, Date buildEnd, Date checkStart, Date checkEnd, Date fmStart, - Date fmEnd, String key, Integer page, Integer limit, Integer userId, Integer type, Integer check, String checkup, String pregnantBuild); + Date fmEnd, String key, Integer page, Integer limit, Integer userId, Integer type, Integer check, String checkup, String pregnantBuild, Integer followupStatus); BaseObjectResponse info(String patientId, Integer trackType, Integer buildType); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java index 1992327..b933492 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java @@ -68,7 +68,7 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS */ @Override public BaseObjectResponse all(Date buildStart, Date buildEnd, Date checkStart, Date checkEnd, Date fmStart, Date fmEnd, String key, - Integer page, Integer limit, Integer userId, Integer type, Integer check, String checkup, String pregnantBuild) { + Integer page, Integer limit, Integer userId, Integer type, Integer check, String checkup, String pregnantBuild, Integer followupStatus) { String hospitalId = autoMatchFacade.getHospitalId(userId); List> restList = new ArrayList<>(); Integer archiveModelCount = 0; @@ -87,6 +87,7 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS query.setEndBuildDay(buildEnd); query.setCheckup(checkup); query.setPregnantBuild(pregnantBuild); + query.setFollowupStatus(followupStatus); //妇女建档主数据 List modelList = residentsArchiveService.queryResident(query); // StopWatch stopWatch = new StopWatch("妇女建档主数据"); @@ -789,12 +790,33 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS } } } + /**冗余预约追访日期*/ + if (StringUtils.isNotEmpty(trackDown.getParentId()) && StringUtils.isNotEmpty(trackDown.getHospitalId())) { + ResidentsArchiveModel residentsArchiveModel = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(trackDown.getParentId()).and("hospitalId").is(trackDown.getHospitalId())), ResidentsArchiveModel.class); + if (null != residentsArchiveModel) { + ResidentsArchiveModel residentsArchiveModel1 = new ResidentsArchiveModel(); + if (null != residentsArchiveModel.getFollowupTime()) { + residentsArchiveModel1.setFollowupTime(trackDown.getReservatDate()); + } else { + residentsArchiveModel1.setFollowupTime(new Date()); + } + /**冗余 现在处于哪一个流程*/ + if (1 == trackDown.getTrackDownTransfer() || 2 == trackDown.getTrackDownTransfer()) { + residentsArchiveModel1.setStop("0"); + } else if (3 == trackDown.getTrackDownTransfer()) { + residentsArchiveModel1.setStop("1"); + } + residentsArchiveService.updateResident(residentsArchiveModel1, trackDown.getParentId()); + } + } trackDown.setId(null); trackDown.setYn(YnEnums.YES.getId()); trackDown.setCreated(new Date()); trackDown.setHospitalId(hospitalId); trackDown.setOperaterId(userId); trackDown.setModified(new Date()); + + trackDownService.add(trackDown); String recordId = trackDown.getTrackDownRecId(); updateRecordStatus(trackDown, recordId);