From c4d8363af0353168b2f9ec90a172c607b004647b Mon Sep 17 00:00:00 2001 From: gengxiaokai Date: Fri, 11 Jan 2019 14:31:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A8=81=E6=B5=B7=E4=BA=A7=E5=90=8E=E8=A7=82?= =?UTF-8?q?=E5=AF=9F=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lyms/platform/biz/service/RecordsService.java | 2 +- .../main/java/com/lyms/platform/pojo/Records.java | 9 + .../java/com/lyms/platform/query/RecordsQuery.java | 12 + .../web/facade/PostpartumRecordsFacade.java | 154 ++++++++--- .../web/result/PostpartumRecordsResult.java | 289 +++++++++++---------- 5 files changed, 293 insertions(+), 173 deletions(-) diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/RecordsService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/RecordsService.java index cb2b056..19d6d4c 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/RecordsService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/RecordsService.java @@ -19,7 +19,7 @@ public class RecordsService { @Autowired private IRecordsDao recordsDao; - public List getBabySieveQuery(RecordsQuery recordsQuery){ + public List getRecordsListQuery(RecordsQuery recordsQuery){ MongoQuery query = recordsQuery.convertToQuery(); return recordsDao.queryRecordsList(query.addOrder(Sort.Direction.DESC, "created")); } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/Records.java b/platform-dal/src/main/java/com/lyms/platform/pojo/Records.java index 1b5864a..e23b73a 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/Records.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/Records.java @@ -24,6 +24,7 @@ public class Records { private String nz;//内诊 private String fz;//附注 private String qm;//签名 + private String isDelete;//是否有效(0:无效;1:有效) public String getPostId() { return postId; @@ -136,4 +137,12 @@ public class Records { public void setId(String id) { this.id = id; } + + public String getIsDelete() { + return isDelete; + } + + public void setIsDelete(String isDelete) { + this.isDelete = isDelete; + } } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/RecordsQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/RecordsQuery.java index 15f5ad4..683056c 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/RecordsQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/RecordsQuery.java @@ -14,6 +14,7 @@ public class RecordsQuery extends BaseQuery implements IConvertToNativeQuery { private String id;//主键ID private String postId;//产后观察基本表ID + private String isDelete;//是否有效 public MongoQuery convertToQuery() { MongoCondition condition = MongoCondition.newInstance(); @@ -23,6 +24,9 @@ public class RecordsQuery extends BaseQuery implements IConvertToNativeQuery { if(null !=postId){ condition = condition.and("postId", postId, MongoOper.IS); } + if(null != isDelete){ + condition = condition.and("isDelete", isDelete, MongoOper.IS); + } return condition.toMongoQuery(); } @@ -41,4 +45,12 @@ public class RecordsQuery extends BaseQuery implements IConvertToNativeQuery { public void setPostId(String postId) { this.postId = postId; } + + public String getIsDelete() { + return isDelete; + } + + public void setIsDelete(String isDelete) { + this.isDelete = isDelete; + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumRecordsFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumRecordsFacade.java index c7d075f..c3c3c68 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumRecordsFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumRecordsFacade.java @@ -1,20 +1,20 @@ package com.lyms.platform.operate.web.facade; -import com.lyms.platform.biz.service.MatDeliverService; -import com.lyms.platform.biz.service.PatientsService; -import com.lyms.platform.biz.service.PostpartumRecordsService; +import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.common.utils.DateUtil; import com.lyms.platform.operate.web.request.PostpartumRecordsQueryRequest; +import com.lyms.platform.operate.web.result.HighScoreResult; import com.lyms.platform.operate.web.result.PostpartumRecordsResult; -import com.lyms.platform.pojo.MaternalDeliverModel; -import com.lyms.platform.pojo.Patients; -import com.lyms.platform.pojo.PostpartumRecords; -import com.lyms.platform.query.MatDeliverQuery; -import com.lyms.platform.query.PatientsQuery; -import com.lyms.platform.query.PostpartumRecordsQuery; +import com.lyms.platform.permission.model.Organization; +import com.lyms.platform.permission.model.Users; +import com.lyms.platform.permission.service.OrganizationService; +import com.lyms.platform.permission.service.UsersService; +import com.lyms.platform.pojo.*; +import com.lyms.platform.query.*; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -23,6 +23,7 @@ import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.stereotype.Component; import java.util.ArrayList; +import java.util.Date; import java.util.List; /** @@ -42,6 +43,16 @@ public class PostpartumRecordsFacade { private AutoMatchFacade autoMatchFacade; @Autowired private MatDeliverService matDeliverService; + @Autowired + private RecordsService recordsService; + @Autowired + private AntenatalExaminationService antenatalExaminationService; + @Autowired + private AntenatalExaminationFacade antenatalExaminationFacade; + @Autowired + private OrganizationService organizationService; + @Autowired + private UsersService usersService; /** @@ -69,42 +80,123 @@ public class PostpartumRecordsFacade { List list = patientsService.queryPatient(patientsQuery); if(CollectionUtils.isNotEmpty(list)){ parentId = list.get(0).getId(); - + Patients patients = list.get(0); MatDeliverQuery matDeliverQuery = new MatDeliverQuery(); matDeliverQuery.setPid(list.get(0).getPid()); matDeliverQuery.setYn(YnEnums.YES.getId()); //查询分娩 List mdList = matDeliverService.query(matDeliverQuery); if(CollectionUtils.isNotEmpty(mdList)){ + MaternalDeliverModel maternalDeliverModel = mdList.get(0); prQuery.setParentId(parentId); prQuery.setHospitalId(hospital); List prList = postpartumRecordsService.getBabySieveQuery(prQuery); + PostpartumRecords postpartumRecords = new PostpartumRecords(); if(CollectionUtils.isNotEmpty(prList)){ - postpartumRecordsResult.convertToResult(prList.get(0)); - postpartumRecordsResult.setName(list.get(0).getUsername()); - postpartumRecordsResult.setBhnum(mdList.get(0).getBhNum()); - postpartumRecordsResult.setOneCxl(mdList.get(0).getTotalOneCxl()); - if(StringUtils.isNotEmpty(prList.get(0).getOneCxl())){ - postpartumRecordsResult.setOneCxl(prList.get(0).getOneCxl()); + postpartumRecords = prList.get(0); + //查询是否存在记录详情 + String postId = postpartumRecords.getId(); + RecordsQuery recordsQuery = new RecordsQuery(); + recordsQuery.setPostId(postId); + recordsQuery.setIsDelete("1");//查询有效的数据 + List recordList = recordsService.getRecordsListQuery(recordsQuery); + if(CollectionUtils.isNotEmpty(recordList)){ + postpartumRecordsResult.setRecords(recordList); + } + } + postpartumRecordsResult.convertToResult(postpartumRecords); + postpartumRecordsResult.setName(patients.getUsername()); + postpartumRecordsResult.setBhnum(maternalDeliverModel.getBhNum()); + postpartumRecordsResult.setOneCxl(maternalDeliverModel.getTotalOneCxl()); + if(StringUtils.isNotEmpty(postpartumRecords.getOneCxl())){ + postpartumRecordsResult.setOneCxl(postpartumRecords.getOneCxl()); + } + postpartumRecordsResult.setTwoCxl(maternalDeliverModel.getTotalTwoCxl()); + if(StringUtils.isNotEmpty(postpartumRecords.getTwoCxl())){ + postpartumRecordsResult.setTwoCxl(postpartumRecords.getTwoCxl()); + } + String dueWeek=""; + if (null!=patients.getDueStatus()&&patients.getDueStatus() == 1) { + dueWeek = "终止妊娠"; + } else if (null != patients.getFmDate()&&patients.getType()==3) { + dueWeek = "已分娩"; + } else { + int days = DateUtil.daysBetween(patients.getLastMenses(), new Date()); + String week = (days / 7) + ""; + int day = (days % 7); + dueWeek = "孕" + week + "周" + (day > 0 ? "+" + day + "天" : ""); + } + postpartumRecordsResult.setYz(dueWeek); + if (null != patients.getDueDate()) { + postpartumRecordsResult.setYcq(DateUtil.getyyyy_MM_dd(patients.getDueDate())); + } + postpartumRecordsResult.setPhone(patients.getPhone()); + + AntExQuery antExQuery = new AntExQuery(); + antExQuery.setParentId(patients.getId()); + antExQuery.setYn(YnEnums.YES.getId()); + List examinationModel = antenatalExaminationService.queryAntenatalExamination(antExQuery.convertToQuery()); + + AntExChuQuery antExChuQuery = new AntExChuQuery(); + antExChuQuery.setYn(YnEnums.YES.getId()); + antExChuQuery.setParentId(patients.getId()); + List antExChuModels = antenatalExaminationService.queryAntExChu(antExChuQuery); + + HighScoreResult highScoreResult = antenatalExaminationFacade.findLastRisk(patients.getPid(), false); + String tTireNumber = ""; + if (CollectionUtils.isNotEmpty(examinationModel)) { + if (null != examinationModel && StringUtils.isNotEmpty(examinationModel.get(0).getRiskFactor())) { + tTireNumber = examinationModel.get(0).getTireNumber(); + } + } else { + if (CollectionUtils.isNotEmpty(antExChuModels)) { + tTireNumber = antExChuModels.get(0).getTireNumber(); } - postpartumRecordsResult.setTwoCxl(mdList.get(0).getTotalTwoCxl()); - if(StringUtils.isNotEmpty(prList.get(0).getTwoCxl())){ - postpartumRecordsResult.setTwoCxl(prList.get(0).getTwoCxl()); + } + postpartumRecordsResult.setGwys(highScoreResult.getHighRisk()); + postpartumRecordsResult.setGwpf(highScoreResult.getScoreStr()); + postpartumRecordsResult.setBz(patients.getMremark()); + postpartumRecordsResult.setBirth(DateUtil.getyyyy_MM_dd(patients.getBirth())); + postpartumRecordsResult.setAge(String.valueOf(DateUtil.getAge(patients.getBirth()))); + if(null != maternalDeliverModel.getParity()){ + postpartumRecordsResult.setTc(String.valueOf(maternalDeliverModel.getParity())); + } + if(null != maternalDeliverModel.getGravidity()){ + postpartumRecordsResult.setYc(String.valueOf(maternalDeliverModel.getGravidity())); + } + if(null != maternalDeliverModel.getDueCount()){ + postpartumRecordsResult.setCc(String.valueOf(maternalDeliverModel.getDueCount())); + } + postpartumRecordsResult.setKs(maternalDeliverModel.getDepartment()); + String fmHospital = ""; + + if (StringUtils.isNotEmpty(maternalDeliverModel.getFmHospital())) { + if (com.lyms.platform.common.utils.StringUtils.isNum(maternalDeliverModel.getFmHospital())) { + Organization organization = organizationService.getOrganization(Integer.parseInt(maternalDeliverModel.getFmHospital())); + if (organization != null && organization.getYn() == YnEnums.YES.getId()) { + fmHospital = organization.getName(); + } + } else { + fmHospital = maternalDeliverModel.getFmHospital(); } - /*List records = prList.get(0).getRecords(); - List recordsList = new ArrayList(); - if(CollectionUtils.isNotEmpty(records)){ - for(PostpartumRecords.Records r : records){ - recordsList.add(postpartumRecordsResult.new Records(r)); + + } + postpartumRecordsResult.setFmHospital(fmHospital); + String deliverDoctor = ""; + + if (StringUtils.isNotEmpty(maternalDeliverModel.getDeliverDoctor())) { + if (com.lyms.platform.common.utils.StringUtils.isNum(maternalDeliverModel.getDeliverDoctor())) { + Users users = usersService.getUsers(Integer.parseInt(maternalDeliverModel.getDeliverDoctor())); + if (users != null && users.getYn() == YnEnums.YES.getId()) { + deliverDoctor = users.getName(); } - postpartumRecordsResult.setRecords(recordsList); - }*/ - }else{ - postpartumRecordsResult.setName(list.get(0).getUsername()); - postpartumRecordsResult.setBhnum(mdList.get(0).getBhNum()); - postpartumRecordsResult.setOneCxl(mdList.get(0).getTotalOneCxl()); - postpartumRecordsResult.setTwoCxl(mdList.get(0).getTotalTwoCxl()); + } else { + deliverDoctor = maternalDeliverModel.getDeliverDoctor(); + } } + postpartumRecordsResult.setJsys(deliverDoctor); + + }else{ return new BaseObjectResponse().setErrormsg("孕妇未填写分娩记录,不能进行产后观察!").setErrorcode(ErrorCodeConstants.NO_DATA); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PostpartumRecordsResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PostpartumRecordsResult.java index 1a2265a..5a6e34e 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PostpartumRecordsResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PostpartumRecordsResult.java @@ -2,6 +2,7 @@ package com.lyms.platform.operate.web.result; import com.lyms.platform.beans.SerialIdEnum; import com.lyms.platform.pojo.PostpartumRecords; +import com.lyms.platform.pojo.Records; import java.io.Serializable; import java.util.List; @@ -17,7 +18,7 @@ public class PostpartumRecordsResult { private String maternalDeliverId;//分娩ID private String created;//创建时间 private String modified;//修改时间 - //private List records;//记录列表 + private List records;//记录列表 private String hospitalId;//医院ID private String doctor;//操作医生 private String name;//孕妇姓名 @@ -25,145 +26,23 @@ public class PostpartumRecordsResult { private String oneCxl;//一小时出血量 private String twoCxl;//两小时出血量 - /*public class Records implements Serializable { - private String id; - private String date;//时间 - private String tw;//体温 - private String xy;//血压 - private String mb;//脉搏 - private String xybhd;//血氧饱和度 - private String gd;//宫底 - private String cxl;//出血量 - private String pgjc;//膀胱检查 - private String hyqk;//会阴情况 - private String nz;//内诊 - private String fz;//附注 - private String qm;//签名 - - public Records(){ - - } - - public Records(PostpartumRecords.Records record){ - setId(record.getId()); - setDate(record.getDate()); - setTw(record.getTw()); - setXy(record.getXy()); - setMb(record.getMb()); - setXybhd(record.getXybhd()); - setGd(record.getGd()); - setCxl(record.getCxl()); - setPgjc(record.getPgjc()); - setHyqk(record.getHyqk()); - setNz(record.getNz()); - setFz(record.getFz()); - setQm(record.getQm()); - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getDate() { - return date; - } - - public void setDate(String date) { - this.date = date; - } - - public String getTw() { - return tw; - } - - public void setTw(String tw) { - this.tw = tw; - } - - public String getXy() { - return xy; - } - - public void setXy(String xy) { - this.xy = xy; - } - - public String getMb() { - return mb; - } - - public void setMb(String mb) { - this.mb = mb; - } - - public String getXybhd() { - return xybhd; - } - - public void setXybhd(String xybhd) { - this.xybhd = xybhd; - } - - public String getGd() { - return gd; - } - - public void setGd(String gd) { - this.gd = gd; - } - - public String getCxl() { - return cxl; - } - - public void setCxl(String cxl) { - this.cxl = cxl; - } - - public String getPgjc() { - return pgjc; - } - - public void setPgjc(String pgjc) { - this.pgjc = pgjc; - } - - public String getHyqk() { - return hyqk; - } - - public void setHyqk(String hyqk) { - this.hyqk = hyqk; - } - - public String getNz() { - return nz; - } - - public void setNz(String nz) { - this.nz = nz; - } - - public String getFz() { - return fz; - } - - public void setFz(String fz) { - this.fz = fz; - } + private String fmDate;//分娩日期 + private String age;//年龄 + private String yz;//孕周 + private String ycq;//预产期 + private String phone;//联系方式 + private List gwys;//高危因素 + private String gwpf;//高危评分 + private String bz;//备注 + private String birth;//孕妇出生日期 + private String fmyz;//分娩孕周 + private String tc;//胎次 + private String yc;//孕次 + private String cc;//产次 + private String ks;//科室 + private String fmHospital;//分娩医院 + private String jsys;//接生医生 - public String getQm() { - return qm; - } - - public void setQm(String qm) { - this.qm = qm; - } - }*/ public String getId() { return id; @@ -205,13 +84,13 @@ public class PostpartumRecordsResult { this.modified = modified; } - /*public List getRecords() { + public List getRecords() { return records; } public void setRecords(List records) { this.records = records; - }*/ + } public String getHospitalId() { return hospitalId; @@ -261,6 +140,134 @@ public class PostpartumRecordsResult { this.twoCxl = twoCxl; } + public String getFmDate() { + return fmDate; + } + + public void setFmDate(String fmDate) { + this.fmDate = fmDate; + } + + public String getAge() { + return age; + } + + public void setAge(String age) { + this.age = age; + } + + public String getYz() { + return yz; + } + + public void setYz(String yz) { + this.yz = yz; + } + + public String getYcq() { + return ycq; + } + + public void setYcq(String ycq) { + this.ycq = ycq; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public List getGwys() { + return gwys; + } + + public void setGwys(List gwys) { + this.gwys = gwys; + } + + public String getGwpf() { + return gwpf; + } + + public void setGwpf(String gwpf) { + this.gwpf = gwpf; + } + + public String getBz() { + return bz; + } + + public void setBz(String bz) { + this.bz = bz; + } + + public String getBirth() { + return birth; + } + + public void setBirth(String birth) { + this.birth = birth; + } + + public String getFmyz() { + return fmyz; + } + + public void setFmyz(String fmyz) { + this.fmyz = fmyz; + } + + public String getTc() { + return tc; + } + + public void setTc(String tc) { + this.tc = tc; + } + + public String getYc() { + return yc; + } + + public void setYc(String yc) { + this.yc = yc; + } + + public String getCc() { + return cc; + } + + public void setCc(String cc) { + this.cc = cc; + } + + public String getKs() { + return ks; + } + + public void setKs(String ks) { + this.ks = ks; + } + + public String getFmHospital() { + return fmHospital; + } + + public void setFmHospital(String fmHospital) { + this.fmHospital = fmHospital; + } + + public String getJsys() { + return jsys; + } + + public void setJsys(String jsys) { + this.jsys = jsys; + } + public PostpartumRecordsResult convertToResult(PostpartumRecords postpartumRecords){ setId(postpartumRecords.getId()); setHospitalId(postpartumRecords.getHospitalId()); -- 1.8.3.1