From 3de4b3b5bf9b15648e4affc8b08dc560ad376af5 Mon Sep 17 00:00:00 2001 From: tranny <1163285868@qq.com> Date: Wed, 25 Nov 2020 10:05:52 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=93=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operate/web/facade/HealthChargeFacade.java | 73 ++++++++++++++++++++-- 1 file changed, 69 insertions(+), 4 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java index c7b3045..fd6b038 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java @@ -1,9 +1,6 @@ package com.lyms.platform.operate.web.facade; -import com.lyms.platform.biz.service.BabyBookbuildingService; -import com.lyms.platform.biz.service.ChargeRecordService; -import com.lyms.platform.biz.service.HealthChargeService; -import com.lyms.platform.biz.service.PatientsService; +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.BaseListResponse; @@ -18,10 +15,13 @@ import com.lyms.platform.operate.web.service.TemporaryWeightService; import com.lyms.platform.permission.model.Users; import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.*; +import com.lyms.platform.query.AntExRecordQuery; import com.lyms.platform.query.ChargeRecordQuery; import com.lyms.platform.query.HealthChargeQuery; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang.math.NumberUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; @@ -55,8 +55,17 @@ public class HealthChargeFacade { private UsersService usersService; @Autowired + private AntExRecordService recordService; + + @Autowired private BabyBookbuildingService babyBookbuildingService; + @Autowired + private CommonService commonService; + + @Autowired + private AntenatalExaminationService antenatalExaminationService; + /** * 新增字段:报表解读人 孕妇/儿童 * @@ -284,6 +293,7 @@ public class HealthChargeFacade { { return null; } + map.put("risk",getLastRisk(patients,model.getCreated())); map.put("userName", patients.getUsername()); map.put("age",DateUtil.getAge(patients.getBirth(), model.getCreated())); map.put("week",patients.getType() == 3 ? "已分娩": DateUtil.getWeekDesc(patients.getLastMenses(),model.getCreated())); @@ -302,6 +312,61 @@ public class HealthChargeFacade { } + private String getLastRisk(Patients patients,Date lastDate) + { + String ri = ""; + AntExRecordQuery antExRecordQuery = new AntExRecordQuery(); + antExRecordQuery.setPid(patients.getPid()); + antExRecordQuery.setCheckTimeEnd(lastDate); + List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created"); + if (CollectionUtils.isNotEmpty(antExRecordModelList)) + { + + AntExRecordModel model = antExRecordModelList.get(0); + + + String risk = null; + if (model.getType() == 2) { + AntExChuModel model1 = antenatalExaminationService.findOne(model.getfId()); + if (null != model1) { + risk = model1.getOtherHighRisk(); + } + } else if (model.getType() == 1) { + AntenatalExaminationModel model2 = antenatalExaminationService.findOneById(model.getfId()); + if (null != model2) { + risk = model2.getOtherRisk(); + } + } + + List> results = commonService.resolveOtherRisk(risk); + StringBuffer name = new StringBuffer(); + Integer score = 0; + if (CollectionUtils.isNotEmpty(results)) { + for (Map result : results) { + //高危因素名字 + name.append(result.get("name").toString() + ","); + String level = result.get("levelId").toString(); + score += NumberUtils.toInt(result.get("score").toString(), 0); + if (org.apache.commons.lang.StringUtils.isNotEmpty(level) && !"null".equals(level)) { + model.gethLevel().add(level); + } + } + } + + ri = commonService.resloveFactor(model.gethRisk()); + if (StringUtils.isNotEmpty(name.toString())) { + if (StringUtils.isNotEmpty(ri)) { + ri += ","; + } + ri += name.substring(0, name.length() - 1); + } + } + + return ri; + } + + + /** * 获取临时用户信息 * @param map -- 1.8.3.1