From c67a2605b4c452e4a06a1941f31829ce4529caed Mon Sep 17 00:00:00 2001 From: jiangjiazhi Date: Tue, 16 Aug 2016 10:56:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=AE=BE=E7=BD=AEparentid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lyms/platform/biz/service/SieveService.java | 40 +++++++++++++++++++++- .../web/facade/AntenatalExaminationFacade.java | 7 ++-- .../operate/web/facade/MatDeliverFacade.java | 14 +++++--- .../operate/web/facade/StopPregnancyFacade.java | 7 +++- .../lyms/platform/operate/web/result/AntData.java | 14 ++++---- 5 files changed, 66 insertions(+), 16 deletions(-) diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java index 7ad0494..cf9cc1d 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java @@ -1,11 +1,16 @@ package com.lyms.platform.biz.service; +import com.lyms.platform.biz.dal.ISieveApplyOrderDao; import com.lyms.platform.biz.dal.ISieveDao; import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.pojo.SieveApplyOrderModel; import com.lyms.platform.pojo.SieveModel; import com.lyms.platform.pojo.SieveResultModel; +import com.lyms.platform.query.SieveApplyOrderQuery; import com.lyms.platform.query.SieveQuery; import com.lyms.platform.query.SieveResultQuery; +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Sort; import org.springframework.stereotype.Service; @@ -21,6 +26,8 @@ public class SieveService { @Autowired private ISieveDao iSieveDao; + @Autowired + private ISieveApplyOrderDao sieveApplyOrderDao; public SieveResultModel addSieve(SieveResultModel obj) { obj.setModified(new Date()); @@ -32,7 +39,8 @@ public class SieveService { public SieveResultModel findById(String id) { return iSieveDao.findById(id); } - public List queryListSieveResult(SieveResultQuery sieveResultQuery){ + + public List queryListSieveResult(SieveResultQuery sieveResultQuery) { return iSieveDao.queryListSieveResult(sieveResultQuery.convertToQuery()); } @@ -51,4 +59,34 @@ public class SieveService { public List queryList(SieveQuery sieveQuery) { return iSieveDao.queryList(sieveQuery.convertToQuery().addOrder(Sort.Direction.DESC, "created")); } + + /** + * 根据id删除数据 + * + * @param mongoQuery + */ + public void deleteById(SieveQuery mongoQuery) { + iSieveDao.deleteById(mongoQuery.convertToQuery()); + } + + public void deleteSieve(String parentId, String hospitalId,Date lastMenses) { + + int days = DateUtil.daysBetween(lastMenses, new Date()); + //判断是否在区间 + if (days >= 108 && days <= 146) { + SieveApplyOrderQuery sieveApplyOrderQuery = new SieveApplyOrderQuery(); + sieveApplyOrderQuery.setParentId(parentId); + sieveApplyOrderQuery.setYn(YnEnums.YES.getId()); + sieveApplyOrderQuery.setHospitalId(hospitalId); + List list = sieveApplyOrderDao.queryList(sieveApplyOrderQuery.convertToQuery()); + if (CollectionUtils.isEmpty(list)) { + //做分娩的时候需要删除产筛数据 + SieveQuery sieveQuery = new SieveQuery(); + sieveQuery.setParentId(parentId); + sieveQuery.setYn(YnEnums.YES.getId()); + sieveQuery.setHospitalId(hospitalId); + deleteById(sieveQuery); + } + } + } } \ No newline at end of file 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 80338fa..4347315 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 @@ -439,7 +439,7 @@ public class AntenatalExaminationFacade { if (null != an.getHospitalId()) { organization = organizationService.getOrganization(Integer.valueOf(an.getHospitalId())); } - data.add(new AntData(an, null != organization ? organization.getName() : "")); + data.add(new AntData(an, null != organization ? organization.getName() : "",patients.getLastMenses())); } } @@ -473,7 +473,7 @@ public class AntenatalExaminationFacade { if (null != postReviewModel.getHospitalId()) { organization = organizationService.getOrganization(Integer.valueOf(postReviewModel.getHospitalId())); } - data.add(new AntData(postReviewModel, null != organization ? organization.getName() : "")); + data.add(new AntData(postReviewModel, null != organization ? organization.getName() : "",patients.getDueDate())); } } @@ -649,7 +649,8 @@ public class AntenatalExaminationFacade { if (null != model.getHospitalId()) { organization = organizationService.getOrganization(Integer.valueOf(model.getHospitalId())); } - dataList.add(new AntData(model, null != organization ? organization.getName() : "")); + Patients patients =patientsService.findOnePatientById(model.getParentId()); + dataList.add(new AntData(model, null != organization ? organization.getName() : "",patients.getLastMenses())); } } return dataList; 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 8bbad09..efbbb94 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 @@ -42,7 +42,7 @@ public class MatDeliverFacade { @Autowired private AntenatalExaminationService antenatalExaminationService; @Autowired - private BasicConfigService basicConfigService; + private SieveService sieveService; @Autowired private AutoMatchFacade autoMatchFacade; @Autowired @@ -157,10 +157,14 @@ public class MatDeliverFacade { maternalDeliverModel.setBaby(babies); } } - List list1 = autoMatchFacade.matchOrgId(userId); - if (CollectionUtils.isNotEmpty(list1)) { - maternalDeliverModel.setHospitalId(list1.get(0) + ""); - } + String hospitalId = autoMatchFacade.getHospitalId(userId); + maternalDeliverModel.setHospitalId(hospitalId); + //做分娩的时候需要删除产筛数据 + SieveQuery sieveQuery = new SieveQuery(); + sieveQuery.setParentId(deliverAddRequest.getParentId()); + sieveQuery.setYn(YnEnums.YES.getId()); + sieveQuery.setHospitalId(hospitalId); + sieveService.deleteById(sieveQuery); maternalDeliverModel.setYn(YnEnums.YES.getId()); matDeliverService.addMatDeliver(maternalDeliverModel); 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 e0e1c61..24b819e 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 @@ -50,6 +50,10 @@ public class StopPregnancyFacade { @Autowired private PersonService personService; + @Autowired + private SieveService sieveService; + @Autowired + private AutoMatchFacade autoMatchFacade; /** @@ -149,7 +153,8 @@ public class StopPregnancyFacade { model.setPatientId(pat.getId()); model.setCreated(new Date()); model.setModified(new Date()); - + String hospital=autoMatchFacade.getHospitalId(userId); + sieveService.deleteSieve(pat.getId(),hospital,pat.getLastMenses()); stopPregnancyService.addStopPreg(model); BaseResponse objectResponse = new BaseResponse(); objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntData.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntData.java index d366c47..a6c1573 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntData.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntData.java @@ -49,9 +49,10 @@ public class AntData { this.title = title; } - public AntData(AntenatalExaminationModel model,String hospitalName) { + public AntData(AntenatalExaminationModel model,String hospitalName,Date lastMenses) { this.id = model.getId(); - this.dueWeek = model.getCurrentDueDate(); + int days = DateUtil.daysBetween(lastMenses, model.getCheckDate()); + this.dueWeek = StringUtils.dueWeek(days); if(null!=model.getCheckDate()){ this.checkTime = DateUtil.getyyyy_MM_dd(model.getCheckDate()); } @@ -63,7 +64,7 @@ public class AntData { public AntData(AntExChuModel model,String hospitalName) { this.id = model.getId(); - int days = DateUtil.daysBetween(model.getLastMenses(), model.getCreated()); + int days = DateUtil.daysBetween(model.getLastMenses(), model.getCheckTime()); this.dueWeek = StringUtils.dueWeek(days); if(null!=model.getCheckTime()){ this.checkTime = DateUtil.getyyyy_MM_dd(model.getCheckTime()); @@ -88,7 +89,7 @@ public class AntData { public AntData(MaternalDeliverModel model,Date lastMenses,String hospitalName) { this.id = model.getId(); - int days = DateUtil.daysBetween(lastMenses,model.getCreated()); + int days = DateUtil.daysBetween(lastMenses,DateUtil.parseYMD(model.getDueDate())); this.dueWeek = StringUtils.dueWeek(days); this.checkTime = DateUtil.getyyyy_MM_dd(model.getCreated()); this.title="孕妇分娩"; @@ -97,9 +98,10 @@ public class AntData { this.hospitalId=model.getHospitalId(); } - public AntData(PostReviewModel postReviewModel,String hospitalName) { + public AntData(PostReviewModel postReviewModel,String hospitalName,Date dueDate) { this.id=postReviewModel.getId(); - this.dueWeek=postReviewModel.getDay(); + int days = DateUtil.daysBetween(dueDate,DateUtil.parseYMD(postReviewModel.getCheckTime())); + this.dueWeek= StringUtils.dueWeek(days); this.checkTime=postReviewModel.getCheckTime(); this.title="产后复查"; this.type="5"; -- 1.8.3.1