From d29956b7bae8c55469331886e9b95d64e254167d Mon Sep 17 00:00:00 2001 From: liquanyu Date: Thu, 17 Oct 2019 17:04:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/PatientWeightController.java | 15 +++++++---- .../operate/web/service/PatientWeightService.java | 6 ++--- .../web/service/impl/PatientWeightServiceImpl.java | 30 ++++++++++++++++++---- 3 files changed, 38 insertions(+), 13 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PatientWeightController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PatientWeightController.java index 149207c..9fe6f56 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PatientWeightController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PatientWeightController.java @@ -95,8 +95,9 @@ public class PatientWeightController extends BaseController { HttpServletRequest request, @RequestParam(value = "rid", required = false) String rid, @RequestParam(value = "doctorId") String doctorId, + @RequestParam(value = "beforeWeight",required = false) String beforeWeight, String version) { - return patientWeightService.report(id, getUserId(request), rid, version, doctorId); + return patientWeightService.report(id, getUserId(request), rid, version, doctorId,beforeWeight); } @@ -274,11 +275,13 @@ public class PatientWeightController extends BaseController { @TokenRequired public BaseResponse getWeightsReport(@PathVariable String pid, HttpServletRequest request, - @RequestParam(value = "rid", required = false) String rid, String version, @RequestParam(value = "doctorId") String doctorId) { + @RequestParam(value = "rid", required = false) String rid, String version, + @RequestParam(value = "beforeWeight",required = false) String beforeWeight, + @RequestParam(value = "doctorId") String doctorId) { if (pid.isEmpty() || "null".equals(pid)) { return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.USER_PASSWORD_ERROR).setErrormsg("pid值不能为空!"); } - return patientWeightService.getWeightsReport(pid, getUserId(request), rid, version, doctorId); + return patientWeightService.getWeightsReport(pid, getUserId(request), rid, version, doctorId,beforeWeight); } @@ -293,11 +296,13 @@ public class PatientWeightController extends BaseController { @TokenRequired public BaseResponse qhdReport(@PathVariable String pid, HttpServletRequest request, - @RequestParam(value = "rid", required = false) String rid, String version, @RequestParam(value = "doctorId") String doctorId) { + @RequestParam(value = "rid", required = false) String rid, String version, + @RequestParam(value = "beforeWeight",required = false) String beforeWeight, + @RequestParam(value = "doctorId") String doctorId) { if (pid.isEmpty() || "null".equals(pid)) { return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.USER_PASSWORD_ERROR).setErrormsg("pid值不能为空!"); } - return patientWeightService.qhdHighRiskReport(pid, getUserId(request), rid, version, doctorId); + return patientWeightService.qhdHighRiskReport(pid, getUserId(request), rid, version, doctorId,beforeWeight); } /** diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/PatientWeightService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/PatientWeightService.java index 085c299..2637f5a 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/PatientWeightService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/PatientWeightService.java @@ -35,7 +35,7 @@ public interface PatientWeightService extends IBaseService { BaseResponse delete(String id); - BaseResponse report(String id, Integer userId, String rid, String version, String doctorId); + BaseResponse report(String id, Integer userId, String rid, String version, String doctorId,String beforeWeight); BaseResponse wxReport(String pid); @@ -60,9 +60,9 @@ public interface PatientWeightService extends IBaseService { public void getSeries(Map series, String bmiStr, String bregmatic); - BaseResponse getWeightsReport(String pid, Integer userId, String rid, String version, String doctorId); + BaseResponse getWeightsReport(String pid, Integer userId, String rid, String version, String doctorId,String beforeWeight); - BaseResponse qhdHighRiskReport(String pid, Integer userId, String rid, String version, String doctorId); + BaseResponse qhdHighRiskReport(String pid, Integer userId, String rid, String version, String doctorId,String beforeWeight); public void setReport(Map restMap, Map weights, String beforeWeight, String bmi, Map dayWeights, String bregmatic); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java index bdb119e..561a9c0 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java @@ -634,15 +634,32 @@ public class PatientWeightServiceImpl extends BaseServiceImpl implements Patient return new BaseObjectResponse().setData(map).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } + + public void updateWeight(String beforeWeight,PatientWeight patientWeight) + { + if (patientWeight != null && StringUtils.isNotEmpty(beforeWeight) && StringUtils.isNotEmpty(patientWeight.getBeforeHeight())) + { + PatientWeight patientWeightBefore = new PatientWeight(); + patientWeightBefore.setBeforeWeight(beforeWeight); + patientWeightBefore.setBmi(getBmi(beforeWeight,patientWeight.getBeforeHeight())); + patientWeightService2.update(Query.query(Criteria.where("_id").is(patientWeight.getId())), patientWeightBefore); + } + } + + @Override - public BaseResponse report(String id, Integer userId, String rid, String version, String doctorId) { + public BaseResponse report(String id, Integer userId, String rid, String version, String doctorId,String beforeWeight) { String hospitalId = autoMatchFacade.getHospitalId(userId); Organization org = organizationService.getOrganization(Integer.parseInt(hospitalId)); BasicConfig basicConfig = basicConfigService.getOneBasicConfigById(org.getProvinceId()); + PatientWeight patientWeight = mongoTemplate.findById(id, PatientWeight.class); + + updateWeight( beforeWeight, patientWeight); + if (patientWeight != null) { Map map = new LinkedHashMap<>(); Patients patients = mongoTemplate.findById(patientWeight.getPatientId(), Patients.class); @@ -2198,10 +2215,13 @@ public class PatientWeightServiceImpl extends BaseServiceImpl implements Patient } @Override - public BaseResponse getWeightsReport(String pid, Integer userId, String rid, String version, String doctorId) { + public BaseResponse getWeightsReport(String pid, Integer userId, String rid, String version, String doctorId,String beforeWeight) { Map> series = new HashMap<>(); Map> datas = new TreeMap<>(); PatientWeight patientWeight = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(pid)), PatientWeight.class); + + updateWeight(beforeWeight,patientWeight); + //1.获取该孕妇是否有推荐的高危项 Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(patientWeight.getPatientId())), Patients.class); //1.1获取到这孕妇所有的高危因素id @@ -2335,7 +2355,7 @@ public class PatientWeightServiceImpl extends BaseServiceImpl implements Patient } } if (datas.size() == 0) { - BaseResponse baseResponse = this.report(pid, userId, rid, version, doctorId); + BaseResponse baseResponse = this.report(pid, userId, rid, version, doctorId,beforeWeight); return baseResponse; } //同时出现高血压和肝硬化或肝功能不全则按照肝硬化或肝功能不全 @@ -2355,7 +2375,7 @@ public class PatientWeightServiceImpl extends BaseServiceImpl implements Patient * 秦皇岛高危报告 */ @Override - public BaseResponse qhdHighRiskReport(String pid, Integer userId, String rid, String version, String doctorId) { + public BaseResponse qhdHighRiskReport(String pid, Integer userId, String rid, String version, String doctorId,String beforeWeight) { Map> series = new HashMap<>(); Map> datas = new TreeMap<>(); PatientWeight patientWeight = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(pid)), PatientWeight.class); @@ -2457,7 +2477,7 @@ public class PatientWeightServiceImpl extends BaseServiceImpl implements Patient } } if (datas.size() == 0) { - BaseResponse baseResponse = this.report(pid, userId, rid, "1", doctorId); + BaseResponse baseResponse = this.report(pid, userId, rid, "1", doctorId,beforeWeight); return baseResponse; } /*//同时出现高血压和肝硬化或肝功能不全则按照肝硬化或肝功能不全 -- 1.8.3.1