Commit d94fa8b42ef6043da8f6cc8461717cb8ea59f126
1 parent
1b9718e2b4
Exists in
master
and in
1 other branch
update
Showing 3 changed files with 122 additions and 99 deletions
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/BasicConfigServiceTest.java
View file @
d94fa8b
... | ... | @@ -3535,8 +3535,8 @@ |
3535 | 3535 | |
3536 | 3536 | |
3537 | 3537 | // babyNutritionConfig("F:\\儿童营养报告\\婴幼儿体重与营养管理报告内容及规则\\儿童膳食报告文章2.xls"); |
3538 | - // xyPresentation("E:\\血压报告.xls"); | |
3539 | - weightReport("E:\\体重营养报告10.xls"); | |
3538 | + xyPresentation("E:\\血压报告.xls"); | |
3539 | + // weightReport("E:\\体重营养报告10.xls"); | |
3540 | 3540 | } |
3541 | 3541 | |
3542 | 3542 | } |
platform-dal/src/main/java/com/lyms/platform/pojo/WeightReportModel.java
View file @
d94fa8b
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PatientWeightServiceImpl.java
View file @
d94fa8b
... | ... | @@ -2036,15 +2036,6 @@ |
2036 | 2036 | if (risk.contains("eb146c03-b19f-4e28-b85f-fda574b2283b") || risk.contains("224b2329-cb82-4da3-a071-8527f8283aab")) { |
2037 | 2037 | return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.DEPT_NOT_EXISTS).setErrormsg("警告").setData("该风险已超过管控范围,请咨询医生进行咨询"); |
2038 | 2038 | } else { |
2039 | - Map<String, Object> data0 = new HashMap<>(); | |
2040 | - Map<String, Object> data1 = new HashMap<>(); | |
2041 | - Map<String, Object> data2 = new HashMap<>(); | |
2042 | - Map<String, Object> data3 = new HashMap<>(); | |
2043 | - Map<String, Object> data4 = new HashMap<>(); | |
2044 | - Map<String, Object> data5 = new HashMap<>(); | |
2045 | - Map<String, Object> data6 = new HashMap<>(); | |
2046 | - List<String> reiskFactor = patients.getRiskFactorId(); | |
2047 | - List<WeightReportModel> weightReport = mongoTemplate.findAll(WeightReportModel.class); | |
2048 | 2039 | //获取视图 |
2049 | 2040 | Map<String, String> dayWeights = patientWeight.getDayWeights(); |
2050 | 2041 | Map<Integer, String> weights = new LinkedHashMap<>(); |
2051 | 2042 | |
2052 | 2043 | |
2053 | 2044 | |
2054 | 2045 | |
... | ... | @@ -2054,94 +2045,107 @@ |
2054 | 2045 | weights.put(DateUtil.getWeek2(patients.getLastMenses(), DateUtil.parseYMD(entry.getKey())), entry.getValue()); |
2055 | 2046 | } |
2056 | 2047 | } |
2057 | - for (WeightReportModel weightReportModel : weightReport) { | |
2048 | + Map<String, Object> data0 = new HashMap<>(); | |
2049 | + Map<String, Object> data1 = new HashMap<>(); | |
2050 | + Map<String, Object> data2 = new HashMap<>(); | |
2051 | + Map<String, Object> data3 = new HashMap<>(); | |
2052 | + Map<String, Object> data4 = new HashMap<>(); | |
2053 | + Map<String, Object> data5 = new HashMap<>(); | |
2054 | + Map<String, Object> data6 = new HashMap<>(); | |
2055 | + List<String> reiskFactor = patients.getRiskFactorId(); | |
2056 | + List<WeightReportModel> weightReport = mongoTemplate.findAll(WeightReportModel.class); | |
2057 | + if (reiskFactor.isEmpty() && weightReport.isEmpty()) { | |
2058 | + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("对象值为空!").setData(""); | |
2059 | + } else { | |
2058 | 2060 | for (String reis : reiskFactor) { |
2059 | - if (reis.equals(weightReportModel.getgDMId()) || reis.equals(weightReportModel.getoDIPId()) || | |
2060 | - reis.equals(weightReportModel.getMedicationDiabetesID())) { | |
2061 | - //糖尿病diabetes | |
2062 | - Set set = new HashSet(); | |
2063 | - if (null != weightReportModel.getgDMId()) { | |
2064 | - set.add(weightReportModel.getgDMName()); | |
2065 | - } else if (null != weightReportModel.getMedicationDiabetesID()) { | |
2066 | - set.add(weightReportModel.getoDIPName()); | |
2061 | + for (WeightReportModel weightReportModel : weightReport) { | |
2062 | + if (reis.equals(weightReportModel.getgDMId()) || reis.equals(weightReportModel.getoDIPId()) || | |
2063 | + reis.equals(weightReportModel.getMedicationDiabetesID())) { | |
2064 | + //糖尿病diabetes | |
2065 | + Set set = new HashSet(); | |
2066 | + if (null != weightReportModel.getgDMId()) { | |
2067 | + set.add(weightReportModel.getgDMName()); | |
2068 | + } else if (null != weightReportModel.getMedicationDiabetesID()) { | |
2069 | + set.add(weightReportModel.getoDIPName()); | |
2070 | + } | |
2071 | + datas.put("1", this.getDiabetestInfo(weights, data3, weightReportModel, patientWeight, patients, bmiD, week, diabetesKcalStr, set)); | |
2072 | + } else if (reis.equals(weightReportModel.getGestationalHypertensionGHID()) || reis.equals(weightReportModel.getChronicHypertensionID())) { | |
2073 | + Set set = new HashSet(); | |
2074 | + if (null != weightReportModel.getGestationalHypertensionGHID()) { | |
2075 | + set.add(weightReportModel.getGestationalHypertensionGHName()); | |
2076 | + } else if (null != weightReportModel.getChronicHypertensionID()) { | |
2077 | + set.add(weightReportModel.getChronicHypertensionName()); | |
2078 | + } | |
2079 | + //高血压hypertension | |
2080 | + datas.put("3", this.getInfo(weights, data2, weightReportModel, patientWeight, patients, bmiD, week, gxyKcalStr, set)); | |
2081 | + } else if (reis.equals(weightReportModel.getHyperthyroidismNeedID()) || reis.equals(weightReportModel.getHyperthyroidismID())) { | |
2082 | + //甲亢hyperthyroidism | |
2083 | + Set set = new HashSet(); | |
2084 | + if (null != weightReportModel.getHyperthyroidismNeedID()) { | |
2085 | + set.add(weightReportModel.getHyperthyroidismName()); | |
2086 | + } else if (null != weightReportModel.getHyperthyroidismID()) { | |
2087 | + set.add(weightReportModel.getHyperthyroidismName()); | |
2088 | + } | |
2089 | + datas.put("4", this.getDiabetestInfo(weights, data4, weightReportModel, patientWeight, patients, bmiD, week, gkKcalStr, set)); | |
2090 | + } else if (reis.equals(weightReportModel.getHypothyroidismID()) || reis.equals(weightReportModel.getyLCHypothyroidismID()) || | |
2091 | + reis.equals(weightReportModel.getHypothyroidismNeedID())) { | |
2092 | + //甲减hypothyroidism | |
2093 | + Set set = new HashSet(); | |
2094 | + if (null != weightReportModel.getHypothyroidismID()) { | |
2095 | + set.add(weightReportModel.getHypothyroidismName()); | |
2096 | + } else if (null != weightReportModel.getyLCHypothyroidismID()) { | |
2097 | + set.add(weightReportModel.getyLCHypothyroidismName()); | |
2098 | + } else if (null != weightReportModel.getHypothyroidismNeedID()) { | |
2099 | + set.add(weightReportModel.getHypothyroidismNeedName()); | |
2100 | + } | |
2101 | + datas.put("5", this.getDiabetestInfo(weights, data5, weightReportModel, patientWeight, patients, bmiD, week, gjKcalStr, set)); | |
2102 | + } else if (reis.equals(weightReportModel.getAnemiaPregnancyId()) || reis.equals(weightReportModel.getMildAnemiaID()) || | |
2103 | + reis.equals(weightReportModel.getModerateAnemiaID()) || reis.equals(weightReportModel.getSevereAnemiaID()) || | |
2104 | + reis.equals(weightReportModel.getSevereAnemiaHBID()) || reis.equals(weightReportModel.getObstructiveAnemiaID())) { | |
2105 | + Set set = new HashSet(); | |
2106 | + if (null != weightReportModel.getAnemiaPregnancyId()) { | |
2107 | + set.add(weightReportModel.getAnemiaPregnancyName()); | |
2108 | + } else if (null != weightReportModel.getMildAnemiaID()) { | |
2109 | + set.add(weightReportModel.getMildAnemiaName()); | |
2110 | + } else if (null != weightReportModel.getModerateAnemiaID()) { | |
2111 | + set.add(weightReportModel.getModerateAnemiaName()); | |
2112 | + } else if (null != weightReportModel.getSevereAnemiaID()) { | |
2113 | + set.add(weightReportModel.getSevereAnemiaName()); | |
2114 | + } else if (null != weightReportModel.getSevereAnemiaHBID()) { | |
2115 | + set.add(weightReportModel.getSevereAnemiaHBName()); | |
2116 | + } else if (null != weightReportModel.getObstructiveAnemiaID()) { | |
2117 | + set.add(weightReportModel.getObstructiveAnemiaName()); | |
2118 | + } | |
2119 | + //贫血anemia | |
2120 | + datas.put("6", this.getInfo(weights, data0, weightReportModel, patientWeight, patients, bmiD, week, gjKcalStr, set)); | |
2121 | + } else if (reis.equals(weightReportModel.getDiseasesDigestiveSystemId()) || reis.equals(weightReportModel.getViralHepatitisId())) { | |
2122 | + Set set = new HashSet(); | |
2123 | + if (null != weightReportModel.getDiseasesDigestiveSystemId()) { | |
2124 | + set.add(weightReportModel.getDiseasesDigestiveSystemName()); | |
2125 | + } else if (null != weightReportModel.getViralHepatitisId()) { | |
2126 | + set.add(weightReportModel.getViralHepatitisName()); | |
2127 | + } | |
2128 | + //急性肝炎acuteHepatitis | |
2129 | + datas.put("7", this.getInfo(weights, data1, weightReportModel, patientWeight, patients, bmiD, week, kcals, set)); | |
2130 | + } else if (reis.equals(weightReportModel.getCirrhosis()) || reis.equals(weightReportModel.getLiverFunctionErrorId())) { | |
2131 | + //慢性肝炎chronicHepatitis | |
2132 | + Set set = new HashSet(); | |
2133 | + if (null != weightReportModel.getCirrhosis()) { | |
2134 | + set.add(weightReportModel.getCirrhosisName()); | |
2135 | + } else if (null != weightReportModel.getLiverFunctionErrorId()) { | |
2136 | + set.add(weightReportModel.getLiverFunctionErrorName()); | |
2137 | + } | |
2138 | + datas.put("8", this.getInfo(weights, data6, weightReportModel, patientWeight, patients, bmiD, week, mxgyKcalStr, set)); | |
2067 | 2139 | } |
2068 | - datas.put("1", this.getDiabetestInfo(weights, data3, weightReportModel, patientWeight, patients, bmiD, week, diabetesKcalStr, set)); | |
2069 | - } else if (reis.equals(weightReportModel.getGestationalHypertensionGHID()) || reis.equals(weightReportModel.getChronicHypertensionID())) { | |
2070 | - Set set = new HashSet(); | |
2071 | - if (null != weightReportModel.getGestationalHypertensionGHID()) { | |
2072 | - set.add(weightReportModel.getGestationalHypertensionGHName()); | |
2073 | - } else if (null != weightReportModel.getChronicHypertensionID()) { | |
2074 | - set.add(weightReportModel.getChronicHypertensionName()); | |
2075 | - } | |
2076 | - //高血压hypertension | |
2077 | - datas.put("3", this.getInfo(weights, data2, weightReportModel, patientWeight, patients, bmiD, week, gxyKcalStr, set)); | |
2078 | - } else if (reis.equals(weightReportModel.getHyperthyroidismNeedID()) || reis.equals(weightReportModel.getHyperthyroidismID())) { | |
2079 | - //甲亢hyperthyroidism | |
2080 | - Set set = new HashSet(); | |
2081 | - if (null != weightReportModel.getHyperthyroidismNeedID()) { | |
2082 | - set.add(weightReportModel.getHyperthyroidismName()); | |
2083 | - } else if (null != weightReportModel.getHyperthyroidismID()) { | |
2084 | - set.add(weightReportModel.getHyperthyroidismName()); | |
2085 | - } | |
2086 | - datas.put("4", this.getDiabetestInfo(weights, data4, weightReportModel, patientWeight, patients, bmiD, week, gkKcalStr, set)); | |
2087 | - } else if (reis.equals(weightReportModel.getHypothyroidismID()) || reis.equals(weightReportModel.getyLCHypothyroidismID()) || | |
2088 | - reis.equals(weightReportModel.getHypothyroidismNeedID())) { | |
2089 | - //甲减hypothyroidism | |
2090 | - Set set = new HashSet(); | |
2091 | - if (null != weightReportModel.getHypothyroidismID()) { | |
2092 | - set.add(weightReportModel.getHypothyroidismName()); | |
2093 | - } else if (null != weightReportModel.getyLCHypothyroidismID()) { | |
2094 | - set.add(weightReportModel.getyLCHypothyroidismName()); | |
2095 | - } else if (null != weightReportModel.getHypothyroidismNeedID()) { | |
2096 | - set.add(weightReportModel.getHypothyroidismNeedName()); | |
2097 | - } | |
2098 | - datas.put("5", this.getDiabetestInfo(weights, data5, weightReportModel, patientWeight, patients, bmiD, week, gjKcalStr, set)); | |
2099 | - } else if (reis.equals(weightReportModel.getAnemiaPregnancyId()) || reis.equals(weightReportModel.getMildAnemiaID()) || | |
2100 | - reis.equals(weightReportModel.getModerateAnemiaID()) || reis.equals(weightReportModel.getSevereAnemiaID()) || | |
2101 | - reis.equals(weightReportModel.getSevereAnemiaHBID()) || reis.equals(weightReportModel.getObstructiveAnemiaID())) { | |
2102 | - Set set = new HashSet(); | |
2103 | - if (null != weightReportModel.getAnemiaPregnancyId()) { | |
2104 | - set.add(weightReportModel.getAnemiaPregnancyName()); | |
2105 | - } else if (null != weightReportModel.getMildAnemiaID()) { | |
2106 | - set.add(weightReportModel.getMildAnemiaName()); | |
2107 | - } else if (null != weightReportModel.getModerateAnemiaID()) { | |
2108 | - set.add(weightReportModel.getModerateAnemiaName()); | |
2109 | - } else if (null != weightReportModel.getSevereAnemiaID()) { | |
2110 | - set.add(weightReportModel.getSevereAnemiaName()); | |
2111 | - } else if (null != weightReportModel.getSevereAnemiaHBID()) { | |
2112 | - set.add(weightReportModel.getSevereAnemiaHBName()); | |
2113 | - } else if (null != weightReportModel.getObstructiveAnemiaID()) { | |
2114 | - set.add(weightReportModel.getObstructiveAnemiaName()); | |
2115 | - } | |
2116 | - //贫血anemia | |
2117 | - datas.put("6", this.getInfo(weights, data0, weightReportModel, patientWeight, patients, bmiD, week, gjKcalStr, set)); | |
2118 | - } else if (reis.equals(weightReportModel.getDiseasesDigestiveSystemId()) || reis.equals(weightReportModel.getViralHepatitisId())) { | |
2119 | - Set set = new HashSet(); | |
2120 | - if (null != weightReportModel.getDiseasesDigestiveSystemId()) { | |
2121 | - set.add(weightReportModel.getDiseasesDigestiveSystemName()); | |
2122 | - } else if (null != weightReportModel.getViralHepatitisId()) { | |
2123 | - set.add(weightReportModel.getViralHepatitisName()); | |
2124 | - } | |
2125 | - //急性肝炎acuteHepatitis | |
2126 | - datas.put("7", this.getInfo(weights, data1, weightReportModel, patientWeight, patients, bmiD, week, kcals, set)); | |
2127 | - } else if (reis.equals(weightReportModel.getCirrhosis()) || reis.equals(weightReportModel.getLiverFunctionErrorId())) { | |
2128 | - //慢性肝炎chronicHepatitis | |
2129 | - Set set = new HashSet(); | |
2130 | - if (null != weightReportModel.getCirrhosis()) { | |
2131 | - set.add(weightReportModel.getCirrhosisName()); | |
2132 | - } else if (null != weightReportModel.getLiverFunctionErrorId()) { | |
2133 | - set.add(weightReportModel.getLiverFunctionErrorName()); | |
2134 | - } | |
2135 | - datas.put("8", this.getInfo(weights, data6, weightReportModel, patientWeight, patients, bmiD, week, mxgyKcalStr, set)); | |
2136 | 2140 | } |
2137 | 2141 | } |
2138 | 2142 | } |
2139 | - | |
2140 | 2143 | } |
2141 | 2144 | if (datas.size() == 0) { |
2142 | 2145 | BaseResponse baseResponse = this.report(pid, userId, rid); |
2143 | 2146 | return baseResponse; |
2144 | 2147 | } |
2148 | + //同时出现高血压和肝硬化或肝功能不全则按照肝硬化或肝功能不全 | |
2145 | 2149 | if (datas.containsKey("3") && datas.containsKey("8")) { |
2146 | 2150 | datas.put("2", datas.get("8")); |
2147 | 2151 | } |
... | ... | @@ -2160,7 +2164,6 @@ |
2160 | 2164 | return obj; |
2161 | 2165 | } |
2162 | 2166 | |
2163 | - | |
2164 | 2167 | public Map getInfo(Map<Integer, String> weights, Map<String, Object> data, WeightReportModel weightReportModel, PatientWeight patientWeight, Patients patients, double bmi, int week, String kcal, Set set) { |
2165 | 2168 | setReport(data, weights, patientWeight.getBeforeWeight(), patientWeight.getBmi(), patientWeight.getDayWeights(), patientWeight.getBregmatic()); |
2166 | 2169 | Map userMap = new HashMap(); |
2167 | 2170 | |
2168 | 2171 | |
2169 | 2172 | |
2170 | 2173 | |
... | ... | @@ -2203,22 +2206,23 @@ |
2203 | 2206 | map1.put("dinnerAdd", weightReportModel.getDinnerAdd()); |
2204 | 2207 | map1.put("northSouth", weightReportModel.getNorthSouth()); |
2205 | 2208 | if (week >= 0 && week <= 12) { |
2206 | - map1.put("proposal", "建议(孕早期)"); | |
2207 | 2209 | map1.put("proposalInfo", weightReportModel.getEarlySuggests()); |
2208 | 2210 | } else if (week >= 13 && week <= 28) { |
2209 | - map1.put("proposal", "建议(孕中期)"); | |
2210 | 2211 | map1.put("proposalInfo", weightReportModel.getMiddleSuggests()); |
2211 | 2212 | } else if (week >= 29 && week <= 40) { |
2212 | - map1.put("proposal", "建议(孕晚期)"); | |
2213 | 2213 | map1.put("proposalInfo", weightReportModel.getLaterSuggests()); |
2214 | 2214 | } |
2215 | 2215 | data.put("recipes", map1); |
2216 | - if (patients.getRiskFactorId().size() >= 2) { | |
2217 | - Map map = new HashMap(); | |
2218 | - map.put("tipsInfo", "您当前情况存在两种及以上高危风险因素,需请您的主管医生结合临床实际情况对报告进行解读,并根据医生解读建议,指导日常营养膳食"); | |
2219 | - data.put("tips", map); | |
2220 | - } | |
2221 | 2216 | } |
2217 | + List<String> healthy = new ArrayList(); | |
2218 | + healthy.add("d42eec03-aa86-45b8-a4e0-78a0ff365fb6");//健康id// | |
2219 | + healthy.add("a427da89-594a-46c2-b9f7-1b0d355ce54c");//28>BMI>25 | |
2220 | + healthy.add("5a40c6c5422b03d4ad2bf7bd");//BMI<18.5 | |
2221 | + if (patients.getRiskFactorId().size() - this.getSame(healthy, patients.getRiskFactorId()).size() >= 2) { | |
2222 | + Map map = new HashMap(); | |
2223 | + map.put("tipsInfo", "您当前情况存在两种及以上高危风险因素,需请您的主管医生结合临床实际情况对报告进行解读,并根据医生解读建议,指导日常营养膳食"); | |
2224 | + data.put("tips", map); | |
2225 | + } | |
2222 | 2226 | return data; |
2223 | 2227 | } |
2224 | 2228 | |
2225 | 2229 | |
... | ... | @@ -2266,12 +2270,29 @@ |
2266 | 2270 | map1.put("proposalInfo", weightReportModel.getEarlySuggests()); |
2267 | 2271 | data.put("recipes", map1); |
2268 | 2272 | } |
2269 | - if (patients.getRiskFactorId().size() >= 2) { | |
2273 | + List<String> healthy = new ArrayList(); | |
2274 | + healthy.add("d42eec03-aa86-45b8-a4e0-78a0ff365fb6");//健康id// | |
2275 | + healthy.add("a427da89-594a-46c2-b9f7-1b0d355ce54c");//28>BMI>25 | |
2276 | + healthy.add("5a40c6c5422b03d4ad2bf7bd");//BMI<18.5 | |
2277 | + if (patients.getRiskFactorId().size() - this.getSame(healthy, patients.getRiskFactorId()).size() >= 2) { | |
2270 | 2278 | Map map = new HashMap(); |
2271 | 2279 | map.put("tipsInfo", "您当前情况存在两种及以上高危风险因素,需请您的主管医生结合临床实际情况对报告进行解读,并根据医生解读建议,指导日常营养膳食"); |
2272 | 2280 | data.put("tips", map); |
2273 | 2281 | } |
2274 | 2282 | return data; |
2283 | + } | |
2284 | + | |
2285 | + //获取俩个list相同数据 | |
2286 | + public List getSame(List list1, List list2) { | |
2287 | + List sameList = new ArrayList(); | |
2288 | + for (int i = 0; i < list1.size(); i++) { | |
2289 | + for (int m = 0; m < list2.size(); m++) { | |
2290 | + if (list1.get(i).equals(list2.get(m))) { | |
2291 | + sameList.add(list1.get(i)); | |
2292 | + } | |
2293 | + } | |
2294 | + } | |
2295 | + return sameList; | |
2275 | 2296 | } |
2276 | 2297 | |
2277 | 2298 | //获取急性肝炎 /糖尿病的计算规则 |