diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java b/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java index 3b57247..020aeee 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java @@ -329,7 +329,7 @@ public class Patients extends BaseModel { private Integer fmWeek; // 分娩方式 private String fmType; - + //1-自动分娩 private Integer isAutoFm; // 是否发放过优惠券 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 6900e96..333a4b5 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 @@ -92,7 +92,7 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS PatientsQuery patientsQuery = new PatientsQuery(); patientsQuery.setBookbuildingDateStart(buildStart); patientsQuery.setBookbuildingDateEnd(buildEnd); - patientsQuery.setTypeList(Arrays.asList(1,3)); + patientsQuery.setTypeList(Arrays.asList(1, 3)); patientsQuery.setYn(YnEnums.YES.getId()); patientsQuery.setNeed("need"); patientsQuery.setLimit(limit); @@ -136,20 +136,23 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS List patientsList = patientsService.queryPatient(patientsQuery); if (CollectionUtils.isNotEmpty(patientsList)) { - temp.put("check", checkNum>0?1:2); // 婚检 1=勾勾 2=叉叉 + temp.put("check", checkNum > 0 ? 1 : 2); // 婚检 1=勾勾 2=叉叉 Patients patients = patientsList.get(0); temp.put("bookbuild", 1); // 孕期建档 1=勾勾 2=叉叉 temp.put("bookbuildDate", DateUtil.getyyyy_MM_dd(patients.getBookbuildingDate())); - if (patients.getType() == 3) { - temp.put("fm", 1); // 孕期建档 1=勾勾 2=叉叉 + + + if(patients.getDueStatus() == 1||patients.getIsAutoFm() == 1){//终止妊娠,或自动分娩 + temp.put("fm", 2); // 分娩 1=勾勾 2=叉叉 + }else if (patients.getType() == 3) { + temp.put("fm", 1); // 分娩 1=勾勾 2=叉叉 temp.put("fmType", patients.getFmType()); // 分娩方式 1: 顺产,2:剖宫产 } //孕检次数 temp.put("yjcount", mongoTemplate.count(Query.query(Criteria.where("parentId").is(patients.getId()).and("yn").is(1)), AntenatalExaminationModel.class) + mongoTemplate.count(Query.query(Criteria.where("parentId").is(patients.getId()).and("yn").is(1)), AntExChuModel.class)); if (patients.getType() == 3) { - //产后复查 PostReviewQuery postReviewQuery = new PostReviewQuery(); postReviewQuery.setParentId(patients.getId()); @@ -158,8 +161,8 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS if (postInt > 0) {//大于0 temp.put("chfc", 1); temp.put("chfcCount", postInt); // 复查次数 - }else{ - if(patients.getDueStatus()==1){//终止妊娠 + } else { + if (patients.getDueStatus() == 1) {//终止妊娠 //当前孕妇是孕28周后,进入产后复查追访,否则结束流程 int dueWeek = DateUtil.getWeek2(patients.getLastMenses(), patients.getFmDate()); if (dueWeek < 28) {//进入产后复查 @@ -202,7 +205,7 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS temp.put("chfc", 3);//产后复查空白 //婚检查询 Long checkNum = mongoTemplate.count(Query.query(Criteria.where("certificateNum").is(patient.getCardNo()).and("yn").is(1)), PremaritalCheckup.class); - temp.put("check", checkNum>0?1:2); // 婚检 1=勾勾 2=叉叉 + temp.put("check", checkNum > 0 ? 1 : 2); // 婚检 1=勾勾 2=叉叉 //妇女查询条件 ResidentsArchiveQuery query = new ResidentsArchiveQuery(); @@ -211,11 +214,11 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS query.setHospitalId(patient.getHospitalId()); //妇女建档主数据 List residentCount = residentsArchiveService.queryResident(query); - if(CollectionUtils.isNotEmpty(residentCount)){ + if (CollectionUtils.isNotEmpty(residentCount)) { ResidentsArchiveModel residentsArchiveModel = residentCount.get(0); temp.put("resident", 1); // 妇女建档 temp.put("residentDate", DateUtil.getyyyy_MM_dd(residentsArchiveModel.getBuildDay())); // 妇女建档日期 - }else{ + } else { temp.put("resident", 2); // 妇女建档 } temp.put("id", patient.getId()); @@ -227,8 +230,12 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS temp.put("bookbuildDate", DateUtil.getyyyy_MM_dd(patient.getBookbuildingDate())); temp.put("bookbuild", 1); // 孕期建档 1=勾勾 2=叉叉 - //已分娩 - if (patient.getType() == 3) { + + + + if(patient.getDueStatus() == 1||patient.getIsAutoFm() == 1){//终止妊娠,或自动分娩 + temp.put("fm", 2); // 分娩 1=勾勾 2=叉叉 + }else if (patient.getType() == 3) { //本院已分娩 temp.put("fm", 1); // 孕期建档 1=勾勾 2=叉叉 temp.put("fmType", patient.getFmType()); // 分娩方式 1: 顺产,2:剖宫产 } @@ -236,7 +243,7 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS //孕检次数 temp.put("yjcount", mongoTemplate.count(Query.query(Criteria.where("parentId").is(patient.getId()).and("yn").is(1)), AntenatalExaminationModel.class) + mongoTemplate.count(Query.query(Criteria.where("parentId").is(patient.getId()).and("yn").is(1)), AntExChuModel.class)); - if(patient.getType() == 3){//分娩后 + if (patient.getType() == 3) {//分娩后 //产后复查 PostReviewQuery postReviewQuery = new PostReviewQuery(); postReviewQuery.setParentId(patient.getId()); @@ -245,8 +252,8 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS if (postInt > 0) {//大于0 temp.put("chfc", 1); temp.put("chfcCount", postInt); // 复查次数 - }else{ - if(patient.getDueStatus()==1){//终止妊娠 + } else { + if (patient.getDueStatus() == 1) {//终止妊娠 //当前孕妇是孕28周后,进入产后复查追访,否则结束流程 int dueWeek = DateUtil.getWeek2(patient.getLastMenses(), patient.getFmDate()); if (dueWeek < 28) {//进入产后复查 @@ -545,9 +552,10 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS Map temp = new HashMap<>(); temp.put("trackDownDate", DateUtil.getyyyy_MM_dd(trackDown.getTrackDownDate())); temp.put("trackDownUser", trackDown.getTrackDownUserId()); - temp.put("trackDownType", TrackDownTypeEnums.getName(trackDown.getTrackDownDateType())); + temp.put("trackDownType", TrackDownTypeEnums.getName(trackDown.getTrackDownType())); temp.put("result", StringUtils.isEmpty(trackDown.getResult()) ? "--" : trackDown.getResult()); - temp.put("reservatDate", DateUtil.getyyyy_MM_dd(trackDown.getReservatDate())); + Date resDate = trackDown.getReservatDate(); + temp.put("reservatDate", resDate == null ? "--" : DateUtil.getyyyy_MM_dd(trackDown.getReservatDate())); temp.put("trackDownTransfer", trackDown.getTrackDownTransfer()); if (TrackDownDateEnums.A.getId().equals(trackDown.getTrackDownDateType())) { hqjcList.add(temp); @@ -589,7 +597,7 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS } else { criteria.and("trackDownDateType").in(trackType); } - List trackDowns = mongoTemplate.find(Query.query(criteria), TrackDown.class); + List trackDowns = mongoTemplate.find(Query.query(criteria).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); for (TrackDown trackDown : trackDowns) { Map temp = new HashMap<>();