Commit 36068873506cac056e61500bb68e9e5e3a97c6ab
1 parent
38294292e6
Exists in
master
and in
6 other branches
妊高症报告接口提交
Showing 6 changed files with 174 additions and 12 deletions
- platform-biz-patient-service/src/main/java/com/lyms/platform/biz/BasicConfigServiceTest.java
- platform-common/src/main/java/com/lyms/platform/common/enums/PihEnums.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/pihController.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/PihService.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PihServiceImpl.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TemporaryBloodServiceImpl.java
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/BasicConfigServiceTest.java
View file @
3606887
... | ... | @@ -3541,7 +3541,7 @@ |
3541 | 3541 | PihModel pin = new PihModel(); |
3542 | 3542 | //0 健康教育之孕期相关 1 饮食 2 饮食之营养指南 3 运动 |
3543 | 3543 | pin.setType(1); |
3544 | - pin.setSymptomsType(1); | |
3544 | + pin.setSymptomsType(0); | |
3545 | 3545 | Cell[] cells = s.getRow(i); |
3546 | 3546 | if (cells.length > 0) { |
3547 | 3547 | //遍历每行中的每列 |
... | ... | @@ -3588,7 +3588,7 @@ |
3588 | 3588 | PihModel pin = new PihModel(); |
3589 | 3589 | //0 健康教育之孕期相关 1 饮食 2 饮食之营养指南 3 运动 |
3590 | 3590 | pin.setType(2); |
3591 | - pin.setSymptomsType(1); | |
3591 | + pin.setSymptomsType(0); | |
3592 | 3592 | Cell[] cells = s1.getRow(i); |
3593 | 3593 | if (cells.length > 0) { |
3594 | 3594 | //遍历每行中的每列 |
... | ... | @@ -3635,7 +3635,7 @@ |
3635 | 3635 | PihModel pih = new PihModel(); |
3636 | 3636 | //0 健康教育之孕期相关 1 饮食 2 饮食之营养指南 3 运动 |
3637 | 3637 | pih.setType(3); |
3638 | - pih.setSymptomsType(1); | |
3638 | + pih.setSymptomsType(0); | |
3639 | 3639 | Cell[] cells = s2.getRow(i); |
3640 | 3640 | if (cells.length > 0) { |
3641 | 3641 | //遍历每行中的每列 |
... | ... | @@ -3793,7 +3793,7 @@ |
3793 | 3793 | //1,阴性 2.阳性 3.可疑 |
3794 | 3794 | //c1.无风险因素 2.甲亢 3.糖尿病 4.缺铁性贫血 |
3795 | 3795 | pih.setType(1); |
3796 | - pih.setSymptomsType(3); | |
3796 | + pih.setSymptomsType(1); | |
3797 | 3797 | Cell[] cells = s6.getRow(i); |
3798 | 3798 | if (cells.length > 0) { |
3799 | 3799 | //遍历每行中的每列 |
... | ... | @@ -3829,7 +3829,7 @@ |
3829 | 3829 | //1,阴性 2.阳性 3.可疑 |
3830 | 3830 | //c1.无风险因素 2.甲亢 3.糖尿病 4.缺铁性贫血 |
3831 | 3831 | pih.setType(2); |
3832 | - pih.setSymptomsType(3); | |
3832 | + pih.setSymptomsType(1); | |
3833 | 3833 | Cell[] cells = s7.getRow(i); |
3834 | 3834 | if (cells.length > 0) { |
3835 | 3835 | //遍历每行中的每列 |
... | ... | @@ -3865,7 +3865,7 @@ |
3865 | 3865 | //1,阴性 2.阳性 3.可疑 |
3866 | 3866 | //c1.无风险因素 2.甲亢 3.糖尿病 4.缺铁性贫血 |
3867 | 3867 | pih.setType(3); |
3868 | - pih.setSymptomsType(3); | |
3868 | + pih.setSymptomsType(1); | |
3869 | 3869 | Cell[] cells = s8.getRow(i); |
3870 | 3870 | if (cells.length > 0) { |
3871 | 3871 | //遍历每行中的每列 |
... | ... | @@ -3901,7 +3901,7 @@ |
3901 | 3901 | //1,阴性 2.阳性 3.可疑 |
3902 | 3902 | //c1.无风险因素 2.甲亢 3.糖尿病 4.缺铁性贫血 |
3903 | 3903 | pih.setType(1); |
3904 | - pih.setSymptomsType(4); | |
3904 | + pih.setSymptomsType(3); | |
3905 | 3905 | Cell[] cells = s9.getRow(i); |
3906 | 3906 | if (cells.length > 0) { |
3907 | 3907 | //遍历每行中的每列 |
... | ... | @@ -3937,7 +3937,7 @@ |
3937 | 3937 | //1,阴性 2.阳性 3.可疑 |
3938 | 3938 | //c1.无风险因素 2.甲亢 3.糖尿病 4.缺铁性贫血 |
3939 | 3939 | pih.setType(2); |
3940 | - pih.setSymptomsType(4); | |
3940 | + pih.setSymptomsType(3); | |
3941 | 3941 | Cell[] cells = s10.getRow(i); |
3942 | 3942 | if (cells.length > 0) { |
3943 | 3943 | //遍历每行中的每列 |
... | ... | @@ -3973,7 +3973,7 @@ |
3973 | 3973 | //1,阴性 2.阳性 3.可疑 |
3974 | 3974 | //c1.无风险因素 2.甲亢 3.糖尿病 4.缺铁性贫血 |
3975 | 3975 | pih.setType(3); |
3976 | - pih.setSymptomsType(4); | |
3976 | + pih.setSymptomsType(3); | |
3977 | 3977 | Cell[] cells = s11.getRow(i); |
3978 | 3978 | if (cells.length > 0) { |
3979 | 3979 | //遍历每行中的每列 |
platform-common/src/main/java/com/lyms/platform/common/enums/PihEnums.java
View file @
3606887
1 | +package com.lyms.platform.common.enums; | |
2 | + | |
3 | +public enum PihEnums { | |
4 | + | |
5 | + JK("4", "d42eec03-aa86-45b8-a4e0-78a0ff365fb6"),//健康 | |
6 | + JKWXYW("2", "5aab6d3e422b03d4ad2bf840"),//甲状腺功能亢进(无需药物治疗) | |
7 | + JKXYYW("2", "5aab6d40422b03d4ad2bf85f"),//甲亢(需药物治疗) | |
8 | + TLBWXYW("1", "5aab6d3d422b03d4ad2bf83e"),//妊娠期糖尿病(无需药物治疗) | |
9 | + TLBBS("1", "5bbc0fff422b03d4ad2bf955"),//妊娠期糖尿病病史 | |
10 | + TLBHBRC("1", "5aab6d3e422b03d4ad2bf83f"),//糖尿病合并妊娠(无需药物治疗) | |
11 | + XYYWTLB("1", "de7468e6-1bb5-4fab-ae84-78857868409a"),//需药物治疗的糖尿病 | |
12 | + QTXPX("3", "5aab6d3e422b03d4ad2bf847"),//轻度缺铁性贫血(100-109g/L) | |
13 | + ZDPX("3", "5aab6d3e422b03d4ad2bf848");//中度缺铁性贫血(70-99g/L) | |
14 | + | |
15 | + | |
16 | + private String id; | |
17 | + private String HighRiskId; | |
18 | + | |
19 | + public String getId() { | |
20 | + return id; | |
21 | + } | |
22 | + | |
23 | + public String getHighRiskId() { | |
24 | + return HighRiskId; | |
25 | + } | |
26 | + | |
27 | + public static String getName(String id) { | |
28 | + PihEnums[] values = PihEnums.values(); | |
29 | + for (PihEnums value : values) { | |
30 | + if (value.getId().equals(id)) { | |
31 | + return value.getHighRiskId(); | |
32 | + } | |
33 | + } | |
34 | + return ""; | |
35 | + } | |
36 | + | |
37 | + PihEnums(String id, String highRiskId) { | |
38 | + this.id = id; | |
39 | + HighRiskId = highRiskId; | |
40 | + } | |
41 | +} |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/pihController.java
View file @
3606887
... | ... | @@ -11,6 +11,7 @@ |
11 | 11 | import org.springframework.beans.factory.annotation.Autowired; |
12 | 12 | import org.springframework.stereotype.Controller; |
13 | 13 | import org.springframework.util.Assert; |
14 | +import org.springframework.web.bind.annotation.PathVariable; | |
14 | 15 | import org.springframework.web.bind.annotation.RequestMapping; |
15 | 16 | import org.springframework.web.bind.annotation.RequestMethod; |
16 | 17 | import org.springframework.web.bind.annotation.ResponseBody; |
17 | 18 | |
... | ... | @@ -49,10 +50,18 @@ |
49 | 50 | return RespBuilder.buildSuccess("请输入查询条件!"); |
50 | 51 | } |
51 | 52 | |
53 | + @RequestMapping(value = "/report/{id}", method = RequestMethod.GET) | |
54 | + @ResponseBody | |
55 | + public BaseResponse getPinReport(@PathVariable(value = "id") String id) { | |
56 | + return pihService.getPinReport(id); | |
57 | + } | |
58 | + | |
52 | 59 | protected Integer getUserId(HttpServletRequest request) { |
53 | 60 | LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); |
54 | 61 | Assert.notNull(loginState, "未登录"); |
55 | 62 | return loginState.getId(); |
56 | 63 | } |
64 | + | |
65 | + | |
57 | 66 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/PihService.java
View file @
3606887
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PihServiceImpl.java
View file @
3606887
1 | 1 | package com.lyms.platform.operate.web.service.impl; |
2 | 2 | |
3 | 3 | import com.alibaba.druid.proxy.jdbc.JdbcParameter; |
4 | +import com.lyms.platform.biz.dal.IFolicAcidDao; | |
4 | 5 | import com.lyms.platform.biz.service.CommonService; |
6 | +import com.lyms.platform.common.enums.PihEnums; | |
5 | 7 | import com.lyms.platform.common.result.BaseResponse; |
6 | 8 | import com.lyms.platform.common.result.PageResult; |
7 | 9 | import com.lyms.platform.common.result.RespBuilder; |
8 | 10 | |
... | ... | @@ -9,8 +11,10 @@ |
9 | 11 | import com.lyms.platform.common.utils.StringUtils; |
10 | 12 | import com.lyms.platform.operate.web.facade.OrganizationGroupsFacade; |
11 | 13 | import com.lyms.platform.operate.web.service.PihService; |
14 | +import com.lyms.platform.operate.web.utils.CollectionUtils; | |
12 | 15 | import com.lyms.platform.operate.web.utils.MongoUtil; |
13 | 16 | import com.lyms.platform.pojo.Patients; |
17 | +import com.lyms.platform.pojo.PihModel; | |
14 | 18 | import com.lyms.platform.pojo.PihParameterModel; |
15 | 19 | import org.springframework.beans.factory.annotation.Autowired; |
16 | 20 | import org.springframework.data.domain.Sort; |
... | ... | @@ -33,8 +37,6 @@ |
33 | 37 | @Autowired |
34 | 38 | private CommonService commonService; |
35 | 39 | |
36 | - @Autowired | |
37 | - private MongoUtil mongoUtil; | |
38 | 40 | |
39 | 41 | @Override |
40 | 42 | public void addPih(PihParameterModel parameterModel) { |
... | ... | @@ -132,6 +134,115 @@ |
132 | 134 | } |
133 | 135 | pageResult.setGrid(restList); |
134 | 136 | return RespBuilder.buildSuccess(pageResult); |
137 | + } | |
138 | + | |
139 | + /** | |
140 | + * 妊高症报告 | |
141 | + */ | |
142 | + @Override | |
143 | + public BaseResponse getPinReport(String id) { | |
144 | + if (StringUtils.isNotEmpty(id)) { | |
145 | + Map<String, Object> datas = new HashMap<>(); | |
146 | + PihParameterModel parameterModel = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(id)), PihParameterModel.class); | |
147 | + if (null != parameterModel) { | |
148 | + Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(parameterModel.getPid())), Patients.class); | |
149 | + if (patients != null) { | |
150 | + Map<String, Object> userInfo = new HashMap<>(); | |
151 | + userInfo.put("username", patients.getUsername()); | |
152 | + userInfo.put("week", DateUtil.getWeekDesc(patients.getLastMenses(), new Date())); | |
153 | + userInfo.put("age", patients.getAge()); | |
154 | + userInfo.put("phone", patients.getPhone()); | |
155 | + datas.put("userInfo", userInfo); | |
156 | + } | |
157 | + Map<String, Object> pihInfo = new HashMap<>(); | |
158 | + pihInfo.put("ssyBT", parameterModel.getSsyBT() + "mmHg"); | |
159 | + pihInfo.put("szyBT", parameterModel.getSzyBT() + "mmHg"); | |
160 | + pihInfo.put("cvp", parameterModel.getCvp() + "(35-50mmHg)"); | |
161 | + pihInfo.put("meanAP", parameterModel.getMeanAP() + "(85-95mmHg)"); | |
162 | + pihInfo.put("pbpi", parameterModel.getPbpi() + "(<150)"); | |
163 | + pihInfo.put("bsa", parameterModel.getBsa() + "m*m"); | |
164 | + pihInfo.put("totalBloodVolume", parameterModel.getTotalBloodVolume() + "L"); | |
165 | + pihInfo.put("sff", parameterModel.getSff() + "(0.33-0.4)"); | |
166 | + pihInfo.put("bmi", parameterModel.getBmi() + "(<0.24)"); | |
167 | + pihInfo.put("cardiacOutput", parameterModel.getCardiacOutput() + "L/min"); | |
168 | + pihInfo.put("wzzl", parameterModel.getWzzl() + "(0.9-1.4)PRU"); | |
169 | + pihInfo.put("aestheticVolume", parameterModel.getAestheticVolume() + "(60-100)ml"); | |
170 | + pihInfo.put("cl", parameterModel.getCl() + "2.5-4L/(m*m*min)"); | |
171 | + pihInfo.put("cardiacIndex", parameterModel.getCardiacIndex() + "40-60ml/(m*m)"); | |
172 | + pihInfo.put("compliance", parameterModel.getCompliance() + "(1.2-2)ml/mmHg"); | |
173 | + pihInfo.put("heartRate", parameterModel.getHeartRate() + "bpm"); | |
174 | + pihInfo.put("cbf", parameterModel.getCbf()); | |
175 | + pihInfo.put("bloodViscosity", parameterModel.getBloodViscosity() + "(3.8-4.5CP)"); | |
176 | + pihInfo.put("arTime", parameterModel.getArTime() + "(20-33S)"); | |
177 | + datas.put("pinInfo", pihInfo); | |
178 | + int week = DateUtil.getWeek2(patients.getLastMenses(), new Date()); | |
179 | + if (StringUtils.isNotEmpty(parameterModel.getParameterResult())) { | |
180 | + List<PihModel> pihModels = mongoTemplate.find(Query.query(Criteria.where("symptomsType").is(0).and("type").is(Integer.valueOf(parameterModel.getParameterResult()))), PihModel.class); | |
181 | + if (CollectionUtils.isNotEmpty(pihModels)) { | |
182 | + Map<String, Object> InfoMap = new HashMap<>(); | |
183 | + for (PihModel pih : pihModels) { | |
184 | + if (week >= pih.getStartWeek() && week <= pih.getEndWeek()) { | |
185 | + InfoMap.put("unscramble", pih.getUnscramble()); | |
186 | + InfoMap.put("check", pih.getCheck()); | |
187 | + InfoMap.put("diet", pih.getDiet()); | |
188 | + InfoMap.put("lifeStyle", pih.getLifeStyle()); | |
189 | + } | |
190 | + } | |
191 | + datas.put("Info", InfoMap); | |
192 | + } | |
193 | + } | |
194 | + List<String> risk = patients.getRiskFactorId(); | |
195 | + if (CollectionUtils.isNotEmpty(risk)) { | |
196 | + Map<String, Object> map = new TreeMap(); | |
197 | + for (String r : risk) { | |
198 | + if (StringUtils.isNotEmpty(r)) { | |
199 | + if (r.equals(PihEnums.TLBBS.getHighRiskId()) || r.equals(PihEnums.TLBHBRC.getHighRiskId()) || | |
200 | + r.equals(PihEnums.TLBWXYW.getHighRiskId()) || r.equals(PihEnums.XYYWTLB.getHighRiskId())) { | |
201 | + map.put("1", "糖尿病"); | |
202 | + } | |
203 | + if (r.equals(PihEnums.JKWXYW.getHighRiskId()) || r.equals(PihEnums.JKXYYW.getHighRiskId())) { | |
204 | + map.put("2", "甲亢"); | |
205 | + } | |
206 | + if (r.equals(PihEnums.QTXPX.getHighRiskId()) || r.equals(PihEnums.ZDPX.getHighRiskId())) { | |
207 | + map.put("3", "贫血"); | |
208 | + } | |
209 | + } | |
210 | + } | |
211 | + if (map.size() != 0 && null != map) { | |
212 | + if (StringUtils.isNotEmpty(parameterModel.getParameterResult())) { | |
213 | + //获取map中的第一个元素 | |
214 | + String str = this.getKeyOrNull(map); | |
215 | + List<PihModel> pihModels = mongoTemplate.find(Query.query(Criteria.where("symptomsType").is(Integer.valueOf(str)).and("type").is(Integer.valueOf(parameterModel.getParameterResult()))), PihModel.class); | |
216 | + if (CollectionUtils.isNotEmpty(pihModels)) { | |
217 | + for (PihModel pih : pihModels) { | |
218 | + if (week >= pih.getStartWeek() && week <= pih.getEndWeek()) { | |
219 | + Map<String, Object> riskMap = new HashMap(); | |
220 | + riskMap.put("title", "生活习惯、饮食建议指导"); | |
221 | + riskMap.put("lifeStyle", pih.getLifeStyle()); | |
222 | + datas.put("risk", riskMap); | |
223 | + } | |
224 | + } | |
225 | + } | |
226 | + | |
227 | + } | |
228 | + } | |
229 | + } | |
230 | + } | |
231 | + return RespBuilder.buildSuccess(datas); | |
232 | + } | |
233 | + return RespBuilder.buildSuccess("请选择一条记录"); | |
234 | + } | |
235 | + | |
236 | + | |
237 | + private String getKeyOrNull(Map<String, Object> map) { | |
238 | + String obj = null; | |
239 | + for (Map.Entry<String, Object> entry : map.entrySet()) { | |
240 | + obj = entry.getKey(); | |
241 | + if (obj != null) { | |
242 | + break; | |
243 | + } | |
244 | + } | |
245 | + return obj; | |
135 | 246 | } |
136 | 247 | |
137 | 248 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TemporaryBloodServiceImpl.java
View file @
3606887
... | ... | @@ -315,7 +315,6 @@ |
315 | 315 | if (StringUtils.isNotEmpty(weight) && StringUtils.isNotEmpty(height) && StringUtils.isNotEmpty(bregmatic)) { |
316 | 316 | //Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(bloodPressure.getParentId())), Patients.class); |
317 | 317 | Integer weeks = DateUtil.getWeek(bloodModel.getLastMenses(), bloodModel.getModified()); |
318 | - System.out.println("孕周:" + weeks); | |
319 | 318 | Map paMap = new HashMap(); |
320 | 319 | // paMap.put("vcCardNo", patients.getVcCardNo()); |
321 | 320 | paMap.put("username", bloodModel.getUserName()); |