From 781bc3822af6a7ecc53d78e4c055df08bdf2666d Mon Sep 17 00:00:00 2001 From: zhangchao Date: Wed, 3 Jul 2024 10:17:13 +0800 Subject: [PATCH] =?UTF-8?q?#fix:=E6=96=B0=E5=A2=9E=E9=AB=98=E5=8D=B1?= =?UTF-8?q?=E9=A5=AE=E9=A3=9F=E5=8E=9F=E5=88=99=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lyms/platform/pojo/PregnancyReportMatters.java | 31 ++++++++++++++ .../query/PregnancyReportMattersQuery.java | 47 ++++++++++++++++++++++ .../web/controller/PostpartumReportController.java | 16 ++++++++ .../web/controller/PregnancyReportController.java | 44 ++++++++++++++++++-- .../operate/web/facade/PostpartumReportFacade.java | 2 +- .../operate/web/facade/PregnancyReportFacade.java | 26 ++++++++++-- .../PregnancyReportMattersServiceFacade.java | 6 +++ 7 files changed, 164 insertions(+), 8 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/PregnancyReportMatters.java b/platform-dal/src/main/java/com/lyms/platform/pojo/PregnancyReportMatters.java index f78a8f0..1fdf65e 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/PregnancyReportMatters.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/PregnancyReportMatters.java @@ -4,6 +4,7 @@ import com.lyms.platform.common.result.BaseModel; import org.springframework.data.mongodb.core.mapping.Document; import java.util.Date; +import java.util.List; /** * 孕期营养报告注意事项 @@ -12,6 +13,12 @@ import java.util.Date; public class PregnancyReportMatters extends BaseModel { private static final long serialVersionUID = -1; private String id; + //高危饮食原则名称 + private String name; + //类型 1为高危饮食原则 其它为注意事项 + private Integer type; + //高危风险id + private List riskFactorId; //医院ID private String hospitalId; //0是健康 1是高危 @@ -23,6 +30,30 @@ public class PregnancyReportMatters extends BaseModel { private Integer yn; private Date created; + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public List getRiskFactorId() { + return riskFactorId; + } + + public void setRiskFactorId(List riskFactorId) { + this.riskFactorId = riskFactorId; + } + public String getId() { return id; } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/PregnancyReportMattersQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/PregnancyReportMattersQuery.java index 9cdd35d..f41828c 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/PregnancyReportMattersQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/PregnancyReportMattersQuery.java @@ -5,6 +5,10 @@ import com.lyms.platform.common.dao.BaseQuery; import com.lyms.platform.common.dao.operator.MongoCondition; import com.lyms.platform.common.dao.operator.MongoOper; import com.lyms.platform.common.dao.operator.MongoQuery; +import com.lyms.platform.common.utils.StringUtils; +import org.apache.commons.collections.CollectionUtils; + +import java.util.List; public class PregnancyReportMattersQuery extends BaseQuery implements IConvertToNativeQuery { private String hospitalId; @@ -15,6 +19,12 @@ public class PregnancyReportMattersQuery extends BaseQuery implements IConvertTo //当前孕周 private Integer week; + private Integer type; + + private String name; + + private List riskFactorId; + public String getHospitalId() { return hospitalId; } @@ -47,6 +57,30 @@ public class PregnancyReportMattersQuery extends BaseQuery implements IConvertTo this.week = week; } + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public List getRiskFactorId() { + return riskFactorId; + } + + public void setRiskFactorId(List riskFactorId) { + this.riskFactorId = riskFactorId; + } + @Override public MongoQuery convertToQuery() { MongoCondition condition = MongoCondition.newInstance(); @@ -62,6 +96,19 @@ public class PregnancyReportMattersQuery extends BaseQuery implements IConvertTo if (-1 != yn) { condition = condition.and("yn", yn, MongoOper.IS); } + if (type!=null){ + if (type!=1){ + condition = condition.and("type", 1, MongoOper.NE); + }else { + condition = condition.and("type", type, MongoOper.IS); + } + } + if (StringUtils.isNotEmpty(name)){ + condition = condition.and("name", name, MongoOper.IS); + } + if (CollectionUtils.isNotEmpty(riskFactorId)){ + condition = condition.and("riskFactorId", riskFactorId, MongoOper.IN); + } return condition.toMongoQuery(); } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PostpartumReportController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PostpartumReportController.java index f279f5d..404f68b 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PostpartumReportController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PostpartumReportController.java @@ -99,4 +99,20 @@ public class PostpartumReportController extends BaseController { postpartumReportQuery.setrFactorList(StringUtils.covertToList(rFactor, String.class)); return postpartumReportFacade.getPatientInfo(postpartumReportQuery,getUserId(request)); } + + /** + * 获取小程序产妇报告详情 + * @return + */ + @RequestMapping(method = RequestMethod.GET, value = "/wx/getPatientInfo") + @ResponseBody + public BaseResponse getWxPatientInfo(@RequestParam String rFactor, + @RequestParam Integer deliveryModel, + @RequestParam Integer num,HttpServletRequest request){ + PostpartumReportQuery postpartumReportQuery=new PostpartumReportQuery(); + postpartumReportQuery.setDeliveryModel(deliveryModel); + postpartumReportQuery.setNum(num); + postpartumReportQuery.setrFactorList(StringUtils.covertToList(rFactor, String.class)); + return postpartumReportFacade.getPatientInfo(postpartumReportQuery,getUserId(request)); + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PregnancyReportController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PregnancyReportController.java index f4d6651..a3cd6c0 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PregnancyReportController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PregnancyReportController.java @@ -179,28 +179,64 @@ public class PregnancyReportController extends BaseController { public BaseResponse getMattersList( @RequestParam(required = false) Integer week, @RequestParam(required = false) Integer riskType, + @RequestParam Integer type, + @RequestParam(required = false) String name, @RequestParam("page") Integer page, @RequestParam("limit") Integer limit ,HttpServletRequest request){ PregnancyReportMattersQuery postpartumReportQuery=new PregnancyReportMattersQuery(); postpartumReportQuery.setWeek(week); + postpartumReportQuery.setType(type); postpartumReportQuery.setRiskType(riskType); postpartumReportQuery.setPage(page); postpartumReportQuery.setLimit(limit); + postpartumReportQuery.setName(name); return pregnancyReportMattersServiceFacade.getList(postpartumReportQuery,getUserId(request)); } /** - * 获取模版详情 + * 获取高危饮食原则模版详情 * @return */ - @RequestMapping(method = RequestMethod.GET, value = "/matters/getInfo") + @RequestMapping(method = RequestMethod.GET, value = "/matters/getRisk") @ResponseBody @TokenRequired - public BaseResponse getMattersList(String id){ + public BaseResponse getReportByRisk(@RequestParam Integer week, + @RequestParam String riskFactorId,HttpServletRequest request){ BaseResponse baseResponse= new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); - baseResponse.setObject(pregnancyReportMattersServiceFacade.getPregnancyReport(id)); + PregnancyReportMattersQuery postpartumReportQuery=new PregnancyReportMattersQuery(); + postpartumReportQuery.setWeek(week); + postpartumReportQuery.setRiskFactorId(StringUtils.covertToList(riskFactorId, String.class)); + baseResponse.setObject(pregnancyReportMattersServiceFacade.getReportByRisk(postpartumReportQuery,getUserId(request))); return baseResponse; } + /** + * 获取高危饮食原则模版详情小程序 + * @return + */ + @RequestMapping(method = RequestMethod.GET, value = "/wx/matters/getRisk") + @ResponseBody + public BaseResponse getWxReportByRisk(@RequestParam Integer week, + @RequestParam String riskFactorId,HttpServletRequest request){ + BaseResponse baseResponse= new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + PregnancyReportMattersQuery postpartumReportQuery=new PregnancyReportMattersQuery(); + postpartumReportQuery.setWeek(week); + postpartumReportQuery.setRiskFactorId(StringUtils.covertToList(riskFactorId, String.class)); + baseResponse.setObject(pregnancyReportMattersServiceFacade.getReportByRisk(postpartumReportQuery,getUserId(request))); + return baseResponse; + } + + /** + * 获取模版详情 + * @return + */ + @RequestMapping(method = RequestMethod.GET, value = "/matters/getInfo") + @ResponseBody + @TokenRequired + public BaseResponse getMattersList(String id){ + BaseResponse baseResponse= new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + baseResponse.setObject(pregnancyReportMattersServiceFacade.getPregnancyReport(id)); + return baseResponse; + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumReportFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumReportFacade.java index f355652..093fffe 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumReportFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PostpartumReportFacade.java @@ -55,7 +55,7 @@ public class PostpartumReportFacade { postpartumReportQuery.setYn(1); List list= postpartumReportService.queryPatientList(postpartumReportQuery); BaseResponse baseResponse=new BaseResponse(); - baseResponse.setObject(list); + baseResponse.setObject(list.get(0)); baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS); baseResponse.setErrormsg("成功"); return baseResponse; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PregnancyReportFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PregnancyReportFacade.java index d89e7b1..710cd97 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PregnancyReportFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PregnancyReportFacade.java @@ -12,6 +12,7 @@ import com.lyms.platform.pojo.PregnancyReport; import com.lyms.platform.pojo.PregnancyReportMatters; import com.lyms.platform.query.PregnancyReportMattersQuery; import com.lyms.platform.query.PregnancyReportQuery; +import oracle.jdbc.proxy.annotation.Pre; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -29,13 +30,31 @@ public class PregnancyReportFacade { private BasicConfigService basicConfigService; public BaseResponse add(PregnancyReport postpartumReport){ - postpartumReport.setWeek(postpartumReport.getWeek()); + //postpartumReport.setWeek(postpartumReport.getWeek()); + PregnancyReportQuery pregnancyReportQuery=new PregnancyReportQuery(); + pregnancyReportQuery.setYn(1); + pregnancyReportQuery.setName(postpartumReport.getName()); + List reportList= pregnancyReportService.queryPregnancyReport(pregnancyReportQuery); + if (CollectionUtils.isNotEmpty(reportList)){ + return new BaseResponse().setErrorcode(ErrorCodeConstants.NAME_EXIST).setErrormsg("模版已存在"); + } pregnancyReportService.add(postpartumReport); return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } public BaseResponse update(PregnancyReport postpartumReport){ - postpartumReport.setWeek(postpartumReport.getWeek()); + //postpartumReport.setWeek(postpartumReport.getWeek()); + String name=postpartumReport.getName(); + PregnancyReport pregnancyReport1= pregnancyReportService.getPregnancyReport(postpartumReport.getId()); + if (!pregnancyReport1.getName().equals(name)){ + PregnancyReportQuery pregnancyReportQuery=new PregnancyReportQuery(); + pregnancyReportQuery.setYn(1); + pregnancyReportQuery.setName(name); + List reportList= pregnancyReportService.queryPregnancyReport(pregnancyReportQuery); + if (CollectionUtils.isNotEmpty(reportList)){ + return new BaseResponse().setErrorcode(ErrorCodeConstants.NAME_EXIST).setErrormsg("模版已存在"); + } + } pregnancyReportService.updateById(postpartumReport,postpartumReport.getId()); return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } @@ -93,9 +112,10 @@ public class PregnancyReportFacade { baseResponse.setErrormsg("成功"); return baseResponse; } - //1是孕早期 14周之前 2是孕中期 14-27周+6 3是孕晚期28周及以后 + //根据规则生成模版名称 private static String getReportName(String name,Integer week,Integer weightType){ String sb; + //1是孕早期 14周之前 2是孕中期 14-27周+6 3是孕晚期28周及以后 if (week==1){ sb="孕早期"; }else if (week==2){ diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PregnancyReportMattersServiceFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PregnancyReportMattersServiceFacade.java index ab8f6f1..ee201ab 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PregnancyReportMattersServiceFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PregnancyReportMattersServiceFacade.java @@ -44,4 +44,10 @@ public class PregnancyReportMattersServiceFacade { public PregnancyReportMatters getPregnancyReport(String id){ return pregnancyReportMattersService.getPregnancyReport(id); } + public List getReportByRisk(PregnancyReportMattersQuery postpartumReportQuery,Integer userId){ + String hospitalId= autoMatchFacade.getHospitalId(userId); + postpartumReportQuery.setHospitalId(hospitalId); + postpartumReportQuery.setYn(1); + return pregnancyReportMattersService.queryPregnancyReport(postpartumReportQuery); + } } -- 1.8.3.1