From 303b93544dfee230844976081582a8df2dee57aa Mon Sep 17 00:00:00 2001 From: landong2015 Date: Tue, 17 Jan 2017 11:48:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=AB=98=E5=8D=B1=E6=95=B0?= =?UTF-8?q?=E6=8D=AEbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../platform/operate/web/facade/ViewFacade.java | 76 ++++++------- .../platform/operate/web/utils/FunvCommonUtil.java | 6 +- .../platform/operate/web/utils/ResolveUtils.java | 118 +++++++++++++++++++-- 3 files changed, 153 insertions(+), 47 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java index bb39efd..fd6d063 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java @@ -7,6 +7,7 @@ import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.utils.DateUtil; import com.lyms.platform.common.utils.JsonUtil; import com.lyms.platform.operate.web.request.MatDeliverAddRequest; +import com.lyms.platform.operate.web.result.HighScoreResult; import com.lyms.platform.operate.web.utils.*; import com.lyms.platform.permission.model.Organization; import com.lyms.platform.permission.model.Users; @@ -79,7 +80,7 @@ public class ViewFacade { map.put("pliveType", getBasicConfig(data.getPliveTypeId())); map.put("pprofessionType", getBasicConfig(data.getPprofessionTypeId())); map.put("plevelType", getBasicConfig(data.getPlevelTypeId())); - //TODO 家庭人均收入 + //TODO 家庭人均收入(暂时去掉) /* 孕妇联系方式 */ map.put("residence", CommonsHelper.getResidence(data.getProvinceId(), data.getCityId(), @@ -108,7 +109,7 @@ public class ViewFacade { map.put("correctionLastMenses", DateUtil.getyyyy_MM_dd(data.getLastMenses())); map.put("dueDate", DateUtil.getyyyy_MM_dd(data.getDueDate())); map.put("vcCardNo", data.getVcCardNo()); - //TODO 条码 + //TODO 条码(暂时去掉) //档案编号 map.put("fileCode", data.getFileCode()); map.put("mremark", data.getMremark()); @@ -185,8 +186,23 @@ public class ViewFacade { map.put("fmWeek",patients.getFmWeek()); map.put("dueDate",DateUtil.getyyyy_MM_dd(patients.getDueDate())); map.put("mremark",patients.getMremark()); - map.put("oRiskFactor",patients.getoRiskFactor());//TODO 高危需要处理 - map.put("riskScore",patients.getRiskScore()); + + //TODO 高危需要处理,高危因素名称+颜色+高危评分 + HighScoreResult highScoreResult = null; + if (StringUtils.isNotEmpty(data.getHighrisk())){ + List ids = JsonUtil.toList(data.getHighrisk(), String.class); + if (CollectionUtils.isNotEmpty(ids)){ + highScoreResult = ResolveUtils.queryRisk(ids, true, basicConfigService); + } + } + map.put("highRisk",highScoreResult); + + Map otherRisk = new HashMap<>(); + if (StringUtils.isNotEmpty(data.getOtherHighRisk())){ + ResolveUtils.queryOtherRisk(data.getOtherHighRisk(),otherRisk,basicConfigService); + } + map.put("otherHighRisk",otherRisk); + //产检基本信息 map.put("checkDate",DateUtil.getyyyy_MM_dd(data.getCheckTime())); //TODO 产检孕周 @@ -479,8 +495,21 @@ public class ViewFacade { map.put("fmWeek",patients.getFmWeek()); map.put("dueDate",DateUtil.getyyyy_MM_dd(patients.getDueDate())); map.put("mremark",patients.getMremark()); - map.put("oRiskFactor",patients.getoRiskFactor()); - map.put("riskScore",patients.getRiskScore()); + //TODO 高危需要处理,高危因素名称+颜色+高危评分 + HighScoreResult highScoreResult = null; + if (StringUtils.isNotEmpty(data.getRiskFactor())){ + List ids = JsonUtil.toList(data.getRiskFactor(), String.class); + if (CollectionUtils.isNotEmpty(ids)){ + highScoreResult = ResolveUtils.queryRisk(ids, true, basicConfigService); + } + } + map.put("highRisk",highScoreResult); + + Map otherRisk = new HashMap<>(); + if (StringUtils.isNotEmpty(data.getOtherRisk())){ + ResolveUtils.queryOtherRisk(data.getOtherRisk(),otherRisk,basicConfigService); + } + map.put("otherHighRisk",otherRisk); //产检基本信息 map.put("checkDate",DateUtil.getyyyy_MM_dd(data.getCheckDate())); map.put("currentDueDate",data.getCurrentDueDate()); @@ -630,40 +659,13 @@ public class ViewFacade { map.put("dueDate",DateUtil.getyyyy_MM_dd(patients.getDueDate())); map.put("mremark",patients.getMremark()); - String riskFactor = ""; - if (StringUtils.isNotEmpty(patients.getoRiskFactor())){ - riskFactor = patients.getoRiskFactor(); - } - + //高危因素 + HighScoreResult highScoreResult = null; if (CollectionUtils.isNotEmpty(patients.getRiskFactorId())){ - if (StringUtils.isEmpty(riskFactor)){ - riskFactor = commonService.resloveFactor(patients.getRiskFactorId()); - }else { - riskFactor = riskFactor + "," + commonService.resloveFactor(patients.getRiskFactorId()); - } + highScoreResult = ResolveUtils.queryRisk(patients.getRiskFactorId(),true,basicConfigService); } - map.put("oRiskFactor",riskFactor); - - String riskLevel = ""; - - if (StringUtils.isNotEmpty(patients.getRiskLevelId())){ - List riskLevels = JsonUtil.toList(patients.getRiskLevelId(), String.class); - if (CollectionUtils.isNotEmpty(riskLevels)){ - StringBuilder sb = new StringBuilder(); - for (String r : riskLevels){ - sb.append(FunvCommonUtil.getBaseicConfigByid(r, basicConfigService)).append(","); - } - - if (sb.toString().endsWith(",")){ - riskLevel = sb.substring(0, sb.length() - 1); - }else { - riskLevel = sb.toString(); - } - } - } - map.put("riskLevel", riskLevel); - map.put("riskScore", UnitUtils.unitSplice(patients.getRiskScore(), UnitConstants.FEN)); + map.put("riskFactorId", highScoreResult); map.put("deliveryDate", data.getDueDate()); map.put("dueWeek", data.getDueWeek()); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/FunvCommonUtil.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/FunvCommonUtil.java index 8622b9a..b8e23f7 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/FunvCommonUtil.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/FunvCommonUtil.java @@ -1,10 +1,15 @@ package com.lyms.platform.operate.web.utils; import com.lyms.platform.biz.service.BasicConfigService; +import com.lyms.platform.common.enums.RiskDefaultTypeEnum; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.utils.JsonUtil; +import com.lyms.platform.operate.web.result.HighScoreResult; import com.lyms.platform.pojo.BasicConfig; +import com.lyms.platform.query.BasicConfigQuery; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang.math.NumberUtils; import java.util.*; @@ -354,5 +359,4 @@ public class FunvCommonUtil { } - } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/ResolveUtils.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/ResolveUtils.java index 447b147..ab653d7 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/ResolveUtils.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/ResolveUtils.java @@ -1,12 +1,17 @@ package com.lyms.platform.operate.web.utils; import com.lyms.platform.biz.service.BasicConfigService; +import com.lyms.platform.common.enums.RiskDefaultTypeEnum; import com.lyms.platform.common.utils.JsonUtil; +import com.lyms.platform.operate.web.result.HighScoreResult; +import com.lyms.platform.pojo.BasicConfig; +import com.lyms.platform.query.BasicConfigQuery; +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang.math.NumberUtils; +import org.springframework.beans.factory.annotation.Autowired; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.Set; +import java.util.*; /** * Created by Administrator on 2017/1/9 0009. @@ -144,6 +149,103 @@ public class ResolveUtils { return ""; } + /** + * 解析高危 + * @param id + * @param n + * @param basicConfigService + * @return + */ + public static HighScoreResult queryRisk(List id, boolean n,BasicConfigService basicConfigService) { + HighScoreResult highScoreResult = new HighScoreResult(); + BasicConfigQuery + basicConfigQuery = new BasicConfigQuery(); + List data = new ArrayList(); + List dat1a = new ArrayList(); + Integer score = null; + if (CollectionUtils.isNotEmpty(id)) { + score = 0; + for (String i : id) { + basicConfigQuery.setId(i); + List basicConfigs = basicConfigService.queryBasicConfig(basicConfigQuery); + if (CollectionUtils.isNotEmpty(basicConfigs)) { + for (BasicConfig basicConfig : basicConfigs) { + Map map = new HashMap<>(); + map.put("id", basicConfig.getId()); + map.put("name", basicConfig.getName()); + map.put("code", basicConfig.getCode()); + basicConfigQuery.setId(basicConfig.getParentId()); + List basicConfigs2 = basicConfigService.queryBasicConfig(basicConfigQuery); + if (CollectionUtils.isNotEmpty(basicConfigs2)) { + for (BasicConfig bc : basicConfigs2) { + String name = bc.getName(); + if (name.indexOf("预警") > -1) { + name = name.replace("预警", ""); + } + map.put("color", "risk_" + RiskDefaultTypeEnum.getColor(name)); + } + } + if (StringUtils.isNotEmpty(basicConfig.getCode())) { + score += NumberUtils.toInt(basicConfig.getCode(), 0); + } + if (n) { + BasicConfig basicConfig1 = basicConfigService.getOneBasicConfigById(basicConfig.getParentId()); + if (null != basicConfig1) { + Map map1 = new HashMap<>(); + map1.put("id", basicConfig1.getId()); + String name = basicConfig1.getName(); + if (name.indexOf("预警") > -1) { + name = name.replace("预警", ""); + } + map1.put("name", name); + map1.put("color", "risk_" + RiskDefaultTypeEnum.getColor(name)); + dat1a.add(map1); + } + } + data.add(map); + } + } + } + } + highScoreResult.setHighRisk(data); + highScoreResult.setScore(score); + highScoreResult.setLevel(dat1a); + return highScoreResult; + } + + public static Map queryOtherRisk(String otherHighRisk,Mapmap,BasicConfigService basicConfigService){ + if (StringUtils.isEmpty(otherHighRisk)){ + return map; + } + + String color = ""; + String pingfen = ""; + String yinsu = ""; + + Map otherMap = JsonUtil.jkstr2Obj(otherHighRisk, Map.class); + if (otherMap!=null){ + if (otherMap.get("fyyse")!=null){ + String id = otherMap.get("fyyse").toString(); + color = FunvCommonUtil.getBaseicConfigByid(id,basicConfigService); + if (color.indexOf("预警") > -1) { + color = color.replace("预警", ""); + } + } + if (otherMap.get("fxpf")!=null){ + String id = otherMap.get("fxpf").toString(); + pingfen = FunvCommonUtil.getBaseicConfigByid(id,basicConfigService); + } + if (otherMap.get("fxysu")!=null){ + yinsu = otherMap.get("fxysu").toString(); + } + } + map.put("color", "risk_" + RiskDefaultTypeEnum.getColor(color)); + map.put("score",pingfen); + map.put("name",yinsu); + return map; + } + + public static void main(String[] str) { // String ssss = "{\"qztp\":true,\"yesOrNo\":\"no\",\"tpzb\":true,\"zxqqz\":true,\"zxqqq\":true,\"tpzl\":true," + @@ -154,12 +256,10 @@ public class ResolveUtils { // String a = replace(m); // System.out.print("哈哈.................... " + a); - String s = "{\"qt\":true,\"jsjmj\":true,\"ydqjd\":\"5769ef930cf2d37f03479390\",\"qtText\":\"其他\",\"yesOrNO\":\"yes\",\"dc\":true}"; - Map m = JsonUtil.str2Obj(s,Map.class); - - String a = replaceYDFMW(m,1); +// String s = "{\"qt\":true,\"jsjmj\":true,\"ydqjd\":\"5769ef930cf2d37f03479390\",\"qtText\":\"其他\",\"yesOrNO\":\"yes\",\"dc\":true}"; +// Map m = JsonUtil.str2Obj(s,Map.class); +// String a = replaceYDFMW(m,1); - System.out.print("......................... "+ a); } } -- 1.8.3.1