diff --git a/platform-dal/src/main/java/com/lyms/platform/query/MatDeliverQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/MatDeliverQuery.java index 6fe5f9c..d50c6cf 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/MatDeliverQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/MatDeliverQuery.java @@ -43,6 +43,16 @@ public class MatDeliverQuery extends BaseQuery implements IConvertToNativeQuery private Date modifiedStart; private Date modifiedEnd; + private List cunZai; + + public List getCunZai() { + return cunZai; + } + + public void setCunZai(List cunZai) { + this.cunZai = cunZai; + } + public Date getModifiedStart() { return modifiedStart; } @@ -142,6 +152,10 @@ public class MatDeliverQuery extends BaseQuery implements IConvertToNativeQuery condition = condition.and("id", ids, MongoOper.IN); } + if (CollectionUtils.isNotEmpty(cunZai)) { + condition = condition.and("id", cunZai, MongoOper.NIN); + } + if (CollectionUtils.isNotEmpty(pregnancyOuts)) { condition = condition.and("baby.pregnancyOut", pregnancyOuts, MongoOper.IN); } 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 66e2fc0..e4d451a 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 @@ -129,6 +129,12 @@ public class MatDeliverFacade { private PostVisitHospitalService postVisitHospitalService; @Autowired + private PostpartumRecordsService postpartumRecordsService; + + @Autowired + private RecordsService recordsService; + + @Autowired private BookbuildingFacade bookbuildingFacade; private static Map ONE_ENUMS = new HashMap<>(); @@ -2126,6 +2132,35 @@ public class MatDeliverFacade { matDeliverQuery.setParentIdList(parentIdList); } + /**********增加产后观察,观察状态条件查询**********/ + if(StringUtils.isNotEmpty(childbirthManagerRequest.getGcStatus())){ + if("0".equals(childbirthManagerRequest.getGcStatus())){//正在观察的产妇,填写完分娩记录默认为正在观察 + PostpartumRecordsQuery prQuery = new PostpartumRecordsQuery(); + prQuery.setGcStatus("1"); + prQuery.setIsDelete("1"); + List prList = postpartumRecordsService.getPostpartumRecordsQuery(prQuery); + if(CollectionUtils.isNotEmpty(prList)){ + List sList = new ArrayList(); + for(PostpartumRecords p : prList){ + sList.add(p.getMaternalDeliverId()); + } + matDeliverQuery.setCunZai(sList); + } + }else{ + PostpartumRecordsQuery prQuery = new PostpartumRecordsQuery(); + prQuery.setGcStatus("1"); + prQuery.setIsDelete("1"); + List prList = postpartumRecordsService.getPostpartumRecordsQuery(prQuery); + if(CollectionUtils.isNotEmpty(prList)){ + List sList = new ArrayList(); + for(PostpartumRecords p : prList){ + sList.add(p.getMaternalDeliverId()); + } + matDeliverQuery.setIds(sList); + } + } + } + /**********增加完毕***********/ List maternalDeliverModelList; if (!childbirthManagerRequest.isExcel() && (childbirthManagerRequest.getHloseBloodType() != null @@ -2158,7 +2193,7 @@ public class MatDeliverFacade { List mlist = maternalDeliverModelList.subList(i, end); Callable c = new MaterDeliverWorker(organizationService, usersService, babyService, basicConfigService, childbirthManagerRequest.getInitQuery(), - mlist, patientsMap); + mlist, patientsMap,postpartumRecordsService,recordsService); Future f = commonThreadPool.submit(c); if (f != null) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ChildbirthManagerRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ChildbirthManagerRequest.java index 278e275..47f443e 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ChildbirthManagerRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/ChildbirthManagerRequest.java @@ -168,6 +168,16 @@ public class ChildbirthManagerRequest extends BasePageQueryRequest { // 1 <2500g、2 ≥4000g、3 ≥2500g与<4000g之间 private Integer weight; + private String gcStatus;//观察状态(0:正在观察;1:观察完成) + + public String getGcStatus() { + return gcStatus; + } + + public void setGcStatus(String gcStatus) { + this.gcStatus = gcStatus; + } + public Integer getWeight() { return weight; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/ChildbirthManagerQueryModel.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/ChildbirthManagerQueryModel.java index f3a5829..5af540d 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/ChildbirthManagerQueryModel.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/ChildbirthManagerQueryModel.java @@ -425,6 +425,25 @@ public class ChildbirthManagerQueryModel { private String zypbfm;//专业陪伴分娩(0:未选择;1:已选择) private String bhnum;//住院号 + private String gcStatus;//观察状态(0:正在观察;1:观察完成) + private String recordsNum;//记录条数 + + public String getGcStatus() { + return gcStatus; + } + + public void setGcStatus(String gcStatus) { + this.gcStatus = gcStatus; + } + + public String getRecordsNum() { + return recordsNum; + } + + public void setRecordsNum(String recordsNum) { + this.recordsNum = recordsNum; + } + public String getBhnum() { return bhnum; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker.java index 28e3866..9cb3a01 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker.java @@ -15,6 +15,8 @@ import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.*; import com.lyms.platform.query.AntExRecordQuery; import com.lyms.platform.query.BabyModelQuery; +import com.lyms.platform.query.PostpartumRecordsQuery; +import com.lyms.platform.query.RecordsQuery; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.MapUtils; import org.apache.commons.lang.*; @@ -43,10 +45,13 @@ public class MaterDeliverWorker implements Callable maternalDeliverModelList; private Map patientsMap; + private PostpartumRecordsService postpartumRecordsService; + private RecordsService recordsService; public MaterDeliverWorker(OrganizationService organizationService,UsersService usersService, BabyService babyService,BasicConfigService basicConfigService,String initQuery, - List maternalDeliverModelList,Map patientsMap) { + List maternalDeliverModelList,Map patientsMap, + PostpartumRecordsService postpartumRecordsService,RecordsService recordsService) { this.maternalDeliverModelList = maternalDeliverModelList; this.patientsMap = patientsMap; this.organizationService = organizationService; @@ -54,6 +59,8 @@ public class MaterDeliverWorker implements Callable prList = postpartumRecordsService.getPostpartumRecordsQuery(prQuery); + if(CollectionUtils.isNotEmpty(prList)){ + childbirthManagerQueryModel.setGcStatus(prList.get(0).getGcStatus()); + RecordsQuery rQuery = new RecordsQuery(); + rQuery.setPostId(prList.get(0).getId()); + rQuery.setIsDelete("1"); + List rList = recordsService.getRecordsListQuery(rQuery); + if(CollectionUtils.isNotEmpty(rList)){ + childbirthManagerQueryModel.setRecordsNum(String.valueOf(rList.size())); + } + }else{ + childbirthManagerQueryModel.setGcStatus("0"); + childbirthManagerQueryModel.setRecordsNum("0"); + } + childbirthManagerQueryModelList.add(childbirthManagerQueryModel); }