From 54151130f3ee466780f2ec44f3c0a650f2286dea Mon Sep 17 00:00:00 2001 From: jiangjiazhi Date: Fri, 24 Jun 2016 10:39:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=A7=E5=A6=87=E5=A2=9E=E5=8A=A0=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/PuerperaManageController.java | 12 ++- .../platform/operate/web/facade/PatientFacade.java | 105 ++++++++++++------ .../operate/web/result/QuanChanResult.java | 120 +++++++++++++++++++++ 3 files changed, 204 insertions(+), 33 deletions(-) create mode 100644 platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/QuanChanResult.java diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java index a45cd5a..89b6ceb 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java @@ -84,7 +84,7 @@ public class PuerperaManageController extends BaseController { @RequestMapping(value = "/hPuer", method = RequestMethod.GET) @ResponseBody public BaseResponse queryHighRiskPuerpera(@Valid RiskPatientsQueryRequest patientsQueryRequest) { - return patientFacade.queryHighRisk(patientsQueryRequest,Boolean.TRUE); + return patientFacade.queryHighRisk(patientsQueryRequest, Boolean.TRUE,1); } /** *全部孕妇管理 @@ -95,6 +95,14 @@ public class PuerperaManageController extends BaseController { @RequestMapping(value = "/aPuer", method = RequestMethod.GET) @ResponseBody public BaseResponse queryAllPuerpera(@Valid RiskPatientsQueryRequest patientsQueryRequest) { - return patientFacade.queryHighRisk(patientsQueryRequest,null); + return patientFacade.queryHighRisk(patientsQueryRequest,null,1); + } + + /** + * + * @return + */ + public BaseResponse queryAllPatients(@Valid RiskPatientsQueryRequest patientsQueryRequest){ + return patientFacade.queryHighRisk(patientsQueryRequest,null,3); } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java index 24876f5..472643e 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java @@ -13,6 +13,7 @@ import com.lyms.platform.operate.web.request.PuerperaManagerUpdateRequest; import com.lyms.platform.operate.web.request.PuerperaMatcherCommunityRequest; import com.lyms.platform.operate.web.request.RiskPatientsQueryRequest; import com.lyms.platform.operate.web.result.PuerperaResult; +import com.lyms.platform.operate.web.result.QuanChanResult; import com.lyms.platform.operate.web.result.QuanPatientsResult; import com.lyms.platform.operate.web.result.RiskPatientsResult; import com.lyms.platform.operate.web.utils.CommonsHelper; @@ -186,14 +187,16 @@ public class PatientFacade { * 查询高危孕妇 * * @param riskPatientsQueryRequest + * @param isHighRisk 控制是否是高危 + * @param type 控制类型 1孕妇 3产妇 * @return */ - public BaseResponse queryHighRisk(RiskPatientsQueryRequest riskPatientsQueryRequest,Boolean isHighRisk) { + public BaseResponse queryHighRisk(RiskPatientsQueryRequest riskPatientsQueryRequest, Boolean isHighRisk, int type) { PatientsQuery patientsQuery = new PatientsQuery(); patientsQuery.setPhone(riskPatientsQueryRequest.getPhone()); patientsQuery.setCardNo(riskPatientsQueryRequest.getCardNo()); //设置为孕妇 - patientsQuery.setType(1); + patientsQuery.setType(type); patientsQuery.setName(riskPatientsQueryRequest.getName()); patientsQuery.sethScore(riskPatientsQueryRequest.gethScore()); patientsQuery.setrFactor(riskPatientsQueryRequest.getrFactor()); @@ -206,38 +209,78 @@ public class PatientFacade { List patientses = patientsService.queryPatient(patientsQuery); List data = new ArrayList<>(); if (CollectionUtils.isNotEmpty(patientses)) { - AntExChuQuery antExChuQuery = new AntExChuQuery(); - AntExQuery antExQuery = new AntExQuery(); //如果是查高危孕妇 - if(null!=isHighRisk&&Boolean.TRUE.equals(isHighRisk)){ - for (Patients patients : patientses) { - RiskPatientsResult riskPatientsResult = new RiskPatientsResult(); - riskPatientsResult.convertToResult(patients); - //复诊次数 - int i = antExService.queryAntenatalExaminationCount(antExQuery.convertToQuery()); - antExChuQuery.setParentId(patients.getId()); - antExChuQuery.setYn(YnEnums.YES.getId()); - //初诊次数 - int b = antExService.queryAntExChuCount(antExChuQuery.convertToQuery()); - riskPatientsResult.setcTimes(i + b); - data.add(riskPatientsResult); - } - }else{ - //处理全部产妇的情况 - for (Patients patients : patientses) { - QuanPatientsResult quanPatientsResult = new QuanPatientsResult(); - quanPatientsResult.convertToResult(patients); - //复诊次数 - int i = antExService.queryAntenatalExaminationCount(antExQuery.convertToQuery()); - antExChuQuery.setParentId(patients.getId()); - antExChuQuery.setYn(YnEnums.YES.getId()); - //初诊次数 - int b = antExService.queryAntExChuCount(antExChuQuery.convertToQuery()); - quanPatientsResult.setcTimes(i + b); - data.add(quanPatientsResult); - } + if (null != isHighRisk && Boolean.TRUE.equals(isHighRisk)) { + data = convertToHighRisk(patientses); + } else if (type == 1) { + //处理全部孕妇的情况 + data = convertToQuanPatient(patientses); + //处理全部产妇 + } else if (type == 3) { + data=convertToQuanCPatient(patientses); } } return new BaseObjectResponse().setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(data); } + + /** + * 转成全部产妇的返回数据 + * + * @param patientses 符合条件的产妇 + * @return + */ + private List convertToQuanCPatient(List patientses){ + List data = new ArrayList<>(); + for (Patients patients : patientses) { + QuanChanResult chanResult =new QuanChanResult(); + chanResult.convertToResult(patients); + data.add(chanResult); + } + return data; + } + + + private List convertToQuanPatient(List patientses) { + AntExChuQuery antExChuQuery = new AntExChuQuery(); + AntExQuery antExQuery = new AntExQuery(); + List data = new ArrayList<>(); + for (Patients patients : patientses) { + QuanPatientsResult quanPatientsResult = new QuanPatientsResult(); + quanPatientsResult.convertToResult(patients); + //复诊次数 + int i = antExService.queryAntenatalExaminationCount(antExQuery.convertToQuery()); + antExChuQuery.setParentId(patients.getId()); + antExChuQuery.setYn(YnEnums.YES.getId()); + //初诊次数 + int b = antExService.queryAntExChuCount(antExChuQuery.convertToQuery()); + quanPatientsResult.setcTimes(i + b); + data.add(quanPatientsResult); + } + return data; + } + + /** + * 转换成高危产妇的返回对象 + * + * @param patientses + * @return + */ + private List convertToHighRisk(List patientses) { + AntExChuQuery antExChuQuery = new AntExChuQuery(); + AntExQuery antExQuery = new AntExQuery(); + List data = new ArrayList<>(); + for (Patients patients : patientses) { + RiskPatientsResult riskPatientsResult = new RiskPatientsResult(); + riskPatientsResult.convertToResult(patients); + //复诊次数 + int i = antExService.queryAntenatalExaminationCount(antExQuery.convertToQuery()); + antExChuQuery.setParentId(patients.getId()); + antExChuQuery.setYn(YnEnums.YES.getId()); + //初诊次数 + int b = antExService.queryAntExChuCount(antExChuQuery.convertToQuery()); + riskPatientsResult.setcTimes(i + b); + data.add(riskPatientsResult); + } + return data; + } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/QuanChanResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/QuanChanResult.java new file mode 100644 index 0000000..04fb4b3 --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/QuanChanResult.java @@ -0,0 +1,120 @@ +package com.lyms.platform.operate.web.result; + +import com.lyms.platform.common.base.IBasicResultConvert; +import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.pojo.Patients; + +import java.util.Date; + +/** + * Created by Administrator on 2016/6/23 0023. + */ +public class QuanChanResult implements IBasicResultConvert { + private String id; + //名称 + private String name; + //年龄 + private Integer age; + //分娩日期 + private String dueWeek; + //产后时间 + private String cTime; + //产检次数 + private int cTimes; + + //产检医生 + private String checkDoctor; + //登记人 + private String lName; + + //联系方式 + private String phone; + + public Integer getAge() { + return age; + } + + public void setAge(Integer age) { + this.age = age; + } + + public String getCheckDoctor() { + return checkDoctor; + } + + public void setCheckDoctor(String checkDoctor) { + this.checkDoctor = checkDoctor; + } + + public String getcTime() { + return cTime; + } + + public void setcTime(String cTime) { + this.cTime = cTime; + } + + public int getcTimes() { + return cTimes; + } + + public void setcTimes(int cTimes) { + this.cTimes = cTimes; + } + + + public String getDueWeek() { + return dueWeek; + } + + public void setDueWeek(String dueWeek) { + this.dueWeek = dueWeek; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getlName() { + return lName; + } + + public void setlName(String lName) { + this.lName = lName; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + @Override + public QuanChanResult convertToResult(Patients destModel) { + setId(destModel.getId()); + setAge(destModel.getAge()); + setCheckDoctor(destModel.getLastReportDoctorName()); + setName(destModel.getUsername()); + setPhone(destModel.getPhone()); + if (null != destModel.getFmDate()) { + setDueWeek(DateUtil.getyyyy_MM_dd(destModel.getFmDate())); + setcTime(DateUtil.daysBetween(destModel.getFmDate(),new Date())+"天"); + } + setcTimes(33); + return this; + } +} -- 1.8.3.1