Commit eeb22f00d5683e7e746bac7dba3bfc048ade37a0
1 parent
9cf012bd44
Exists in
master
and in
6 other branches
威海高危统计
Showing 5 changed files with 297 additions and 50 deletions
- platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HosptialHighRiskFacade.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/RiskStatisticsResult.java
platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java
View file @
eeb22f0
... | ... | @@ -356,6 +356,7 @@ |
356 | 356 | private Date checkTimeStart; |
357 | 357 | private Date checkTimeEnd; |
358 | 358 | private Date checkTimeLt; |
359 | + private Date createdlt; | |
359 | 360 | |
360 | 361 | private Date dueDateStart; |
361 | 362 | private Date dueDateEnd; |
... | ... | @@ -392,6 +393,14 @@ |
392 | 393 | this.checkTimeEnd = checkTimeEnd; |
393 | 394 | } |
394 | 395 | |
396 | + public Date getCreatedlt() { | |
397 | + return createdlt; | |
398 | + } | |
399 | + | |
400 | + public void setCreatedlt(Date createdlt) { | |
401 | + this.createdlt = createdlt; | |
402 | + } | |
403 | + | |
395 | 404 | public List getHospitalList() { |
396 | 405 | return hospitalList; |
397 | 406 | } |
... | ... | @@ -722,6 +731,13 @@ |
722 | 731 | c = c.lt(checkTimeLt); |
723 | 732 | } else { |
724 | 733 | c = Criteria.where("checkTime").lt(checkTimeLt); |
734 | + } | |
735 | + } | |
736 | + if (null != createdlt) { | |
737 | + if (null != c) { | |
738 | + c = c.lt(createdlt); | |
739 | + } else { | |
740 | + c = Criteria.where("created").lt(createdlt); | |
725 | 741 | } |
726 | 742 | } |
727 | 743 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntenatalExaminationController.java
View file @
eeb22f0
... | ... | @@ -270,16 +270,16 @@ |
270 | 270 | } |
271 | 271 | |
272 | 272 | /** |
273 | - * 功能描述 | |
273 | + * 功能描述 威海高危统计 | |
274 | 274 | * @author 武涛涛 |
275 | 275 | * @date 2020/6/4 |
276 | 276 | */ |
277 | 277 | @RequestMapping(method = RequestMethod.GET, value = "/antex/findStatisticalRisk") |
278 | 278 | @ResponseBody |
279 | 279 | @TokenRequired |
280 | - public BaseResponse findStatisticalRisk(@Valid AntExManagerQueryRequest antExManagerQueryRequest, HttpServletRequest request) { | |
280 | + public void findStatisticalRisk(@Valid AntExManagerQueryRequest antExManagerQueryRequest, HttpServletRequest request, HttpServletResponse response) { | |
281 | 281 | LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); |
282 | - return antExRecordFacade.findStatisticalRisk(antExManagerQueryRequest, loginState.getId(), false, "true"); | |
282 | + antExRecordFacade.findStatisticalRisk(antExManagerQueryRequest, loginState.getId(), false, "true", response); | |
283 | 283 | } |
284 | 284 | |
285 | 285 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java
View file @
eeb22f0
... | ... | @@ -12,10 +12,11 @@ |
12 | 12 | import com.lyms.platform.operate.web.request.AntExManagerQueryRequest; |
13 | 13 | import com.lyms.platform.operate.web.request.CjStatisticsQueryRequest; |
14 | 14 | import com.lyms.platform.operate.web.request.NutritionInfoRequest; |
15 | -import com.lyms.platform.operate.web.result.AntExManagerResult; | |
16 | -import com.lyms.platform.operate.web.result.CjStatisticsListResult; | |
17 | -import com.lyms.platform.operate.web.result.CjStatisticsResult; | |
18 | -import com.lyms.platform.operate.web.result.HighScoreResult; | |
15 | +import com.lyms.platform.operate.web.result.*; | |
16 | +import com.lyms.platform.operate.web.utils.FunvCommonUtil; | |
17 | +import com.lyms.platform.operate.web.utils.ResolveUtils; | |
18 | +import com.lyms.platform.operate.web.utils.UnitConstants; | |
19 | +import com.lyms.platform.operate.web.utils.UnitUtils; | |
19 | 20 | import com.lyms.platform.operate.web.worker.AntExRecordWorker; |
20 | 21 | import com.lyms.platform.permission.model.Organization; |
21 | 22 | import com.lyms.platform.permission.model.OrganizationQuery; |
... | ... | @@ -66,6 +67,8 @@ |
66 | 67 | @Autowired |
67 | 68 | private BasicConfigService basicConfigService; |
68 | 69 | @Autowired |
70 | + private HosptialHighRiskService hosptialHighRiskService; | |
71 | + @Autowired | |
69 | 72 | private CommonService commonService; |
70 | 73 | @Autowired |
71 | 74 | private AntenatalExaminationService antExService; |
72 | 75 | |
73 | 76 | |
74 | 77 | |
75 | 78 | |
76 | 79 | |
77 | 80 | |
78 | 81 | |
79 | 82 | |
80 | 83 | |
81 | 84 | |
82 | 85 | |
83 | 86 | |
84 | 87 | |
85 | 88 | |
86 | 89 | |
87 | 90 | |
88 | 91 | |
89 | 92 | |
90 | 93 | |
91 | 94 | |
92 | 95 | |
93 | 96 | |
94 | 97 | |
95 | 98 | |
96 | 99 | |
97 | 100 | |
98 | 101 | |
99 | 102 | |
100 | 103 | |
101 | 104 | |
102 | 105 | |
103 | 106 | |
104 | 107 | |
105 | 108 | |
... | ... | @@ -357,107 +360,276 @@ |
357 | 360 | |
358 | 361 | /** |
359 | 362 | * 功能描述 威海妇幼统计各个高危总数,及初诊复诊各个高危总数 |
360 | - * 这几个场景都没问题 110101199003074960 110101199003071102 测试了1 初诊 复诊 复诊, 2 初诊 复诊 3 复诊 复诊 复诊 场景 | |
361 | 363 | * |
362 | - * 缺少 初诊复诊分别统计,级别统计,和补充高危统计。 | |
363 | - * | |
364 | 364 | * @return |
365 | 365 | * @author 武涛涛 |
366 | 366 | * @date 2020/6/4 |
367 | - * // * @param 参数说明antExManagerQueryRequest.cTime产检时间, userId 当前用户id , isRegion false,isPage "false", | |
367 | + //@param 参数说明antExManagerQueryRequest.cTime产检时间, userId 当前用户id , isRegion false,isPage "false", | |
368 | 368 | */ |
369 | - public BaseResponse findStatisticalRisk(AntExManagerQueryRequest antExManagerQueryRequest, Integer userId, boolean isRegion, String isPage) { | |
370 | - List<String> incrHrisk = null;//存储高危id | |
369 | + public BaseResponse findStatisticalRisk(AntExManagerQueryRequest antExManagerQueryRequest, Integer userId, boolean isRegion, String isPage,HttpServletResponse response) { | |
370 | + List<String> incrHrisk = null;//高危因素 list | |
371 | 371 | AntExRecordQuery antExRecordQuery = null; |
372 | 372 | try { |
373 | 373 | incrHrisk = new ArrayList(); |
374 | 374 | antExRecordQuery = complayRequest(userId, antExManagerQueryRequest, isRegion, isPage); |
375 | + antExRecordQuery.setCardNo(antExManagerQueryRequest.getCardNo()); | |
375 | 376 | String hospital = autoMatchFacade.getHospitalId(userId); |
376 | 377 | antExRecordQuery.setHospitalId(hospital); |
378 | + //antExRecordQuery.setType(1);//???? | |
377 | 379 | List<AntExRecordModel> antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created"); |
378 | - System.out.println("1------获取产检条数------" + antExRecordModelList.size()); | |
380 | + System.out.println("1 获取这段时间的产检条数------" + antExRecordModelList.size()); | |
379 | 381 | Map<String, List<AntExRecordModel>> map = handleAntexRecord2(antExRecordModelList); |
380 | - System.out.println("2-----获取产检孕妇人数-------" + map.size()); | |
382 | + System.out.println("2 将产检内容按照人存储,一个人可以多条-------" + map.size()); | |
381 | 383 | if (map != null && map.size() > 0) { |
384 | + int conut = 0; | |
385 | + String name = null; | |
386 | + String carno = null; | |
382 | 387 | Iterator<Map.Entry<String, List<AntExRecordModel>>> iterator = map.entrySet().iterator(); |
383 | 388 | while (iterator.hasNext()) { |
389 | + boolean czb = true; | |
384 | 390 | Map.Entry<String, List<AntExRecordModel>> next = iterator.next(); |
391 | + //个人产检list | |
385 | 392 | List<AntExRecordModel> valueList = next.getValue(); |
393 | + | |
386 | 394 | if (CollectionUtils.isNotEmpty(valueList)) { |
387 | 395 | ListSort(valueList);//升序 |
388 | - System.out.println("3---获取单个孕妇产检数--1111---" + valueList.size()); | |
389 | - //获取个人第一个产检,判断是否为复诊 | |
396 | + System.out.println("3 单个孕妇产检数总数1---" + valueList.size()); | |
390 | 397 | AntExRecordModel antExRecordModel = valueList.get(0); |
391 | - if (antExRecordModel != null && antExRecordModel.getType() != null && antExRecordModel.getType() == 1) { //1 复诊 2 初诊 | |
392 | - //复诊就查询上一次产检信息 | |
398 | + name = antExRecordModel.getName(); | |
399 | + carno = antExRecordModel.getCardNo(); | |
400 | + //1 产检信息升序,判断第一个是否为复诊,复诊就查询上一次产检信息 | |
401 | + if (antExRecordModel != null && antExRecordModel.getType() != null && antExRecordModel.getType() == 1) {//(1 复诊 2 初诊) | |
393 | 402 | AntExRecordQuery beforeRecordQuery = new AntExRecordQuery(); |
394 | 403 | beforeRecordQuery.setParentId(antExRecordModel.getParentId()); |
395 | - beforeRecordQuery.setCheckTimeEnd(antExRecordModel.getCheckTime()); | |
396 | - //beforeRecordQuery.setNeqId(antExRecordModel.getId()); //模拟多条数据时候观察一下 | |
397 | - List<AntExRecordModel> beforeAntRecords = recordService.queryAntExRecords(beforeRecordQuery); | |
404 | + beforeRecordQuery.setCheckTimeLt(antExRecordModel.getCheckTime()); | |
405 | + List<AntExRecordModel> beforeAntRecords = recordService.queryAntExRecords(beforeRecordQuery, Sort.Direction.DESC, "created"); | |
406 | + //如果复诊前面直接是初诊就存在复诊初诊使用检查时间问题,需要修改查询时间 | |
407 | + if(CollectionUtils.isEmpty(beforeAntRecords)){ | |
408 | + AntExRecordQuery beforeRecordQuery1 = new AntExRecordQuery(); | |
409 | + beforeRecordQuery1.setParentId(antExRecordModel.getParentId()); | |
410 | + beforeRecordQuery1.setCreatedlt(antExRecordModel.getCreated()); | |
411 | + beforeAntRecords = recordService.queryAntExRecords(beforeRecordQuery1, Sort.Direction.DESC, "created"); | |
412 | + | |
413 | + } | |
414 | + //将复诊上一次产检记录中,添加到个人产检list | |
398 | 415 | if (CollectionUtils.isNotEmpty(beforeAntRecords)) { |
399 | 416 | AntExRecordModel antExRecordModel1 = beforeAntRecords.get(0); |
400 | - //将产检信息添加到这个人产检记录中 | |
401 | - valueList.add(antExRecordModel1);// | |
417 | + valueList.add(antExRecordModel1); | |
418 | + czb = false;//复诊上面是初诊,下面比对新增高危时候就不直接添加上这个初诊了 | |
402 | 419 | } |
403 | 420 | } |
404 | - | |
405 | - System.out.println("4----获取单个孕妇产检数--2222----" + valueList.size()); | |
421 | + System.out.println("4 单个孕妇产检数总数2---" + valueList.size()); | |
406 | 422 | ListSort(valueList); |
407 | - //个人产检信息,统计高危 valueList | |
408 | - //遍历个人产检list | |
409 | 423 | |
424 | + //遍历个人产检记录list,获取产检高危因素、其它高危,剔除健康高危 | |
410 | 425 | for (int i = 0; i < valueList.size(); i++) { |
411 | - //获取第一条 | |
426 | + List beforeRiskList = new ArrayList(); | |
427 | + //获取第一条产检记录 | |
412 | 428 | AntExRecordModel antExRecordModel1 = valueList.get(i); |
413 | - if (antExRecordModel1.gethRisk() == null && !antExRecordModel1.gethRisk().contains("d42eec03-aa86-45b8-a4e0-78a0ff365fb6")) { | |
414 | - continue; | |
415 | - } | |
416 | - List beforeRiskList = antExRecordModel1.gethRisk(); | |
417 | - | |
418 | - //这段时间一个孕妇一条初诊产检直接保存跳出 | |
419 | - if(antExRecordModel1.getType()==2){ | |
429 | + //根据产检记录分别获取,初诊复诊对应的其它高危。 | |
430 | + getCzFzGwMth(beforeRiskList, antExRecordModel1); | |
431 | + //beforeRiskList = antExRecordModel1.gethRisk(); //不在使用产检记录中的高危因素 | |
432 | + //人产检list只有一条初诊产检直接保存跳出 | |
433 | + if(antExRecordModel1.getType()==2 && czb){ | |
420 | 434 | incrHrisk.addAll(beforeRiskList); |
435 | + conut = beforeRiskList.size(); | |
421 | 436 | if(valueList.size() == 1){ |
422 | 437 | break; |
423 | 438 | } |
424 | 439 | } |
425 | 440 | //初诊和复诊,复诊和复诊比对避免超出坐标 |
426 | - if((i + 1) >= valueList.size()){ | |
427 | - break; | |
428 | - } | |
441 | + if((i + 1) >= valueList.size()){break; } | |
442 | + | |
429 | 443 | //获取第二条进行比对 |
430 | - List currentRiskList = valueList.get(i + 1).gethRisk(); | |
444 | + List currentRiskList = new ArrayList(); | |
445 | + getCzFzGwMth(currentRiskList, valueList.get(i + 1)); | |
431 | 446 | for (Object riskId : currentRiskList) { |
432 | 447 | if (!beforeRiskList.contains(riskId)) { |
433 | 448 | incrHrisk.add(String.valueOf(riskId)); |
449 | + conut ++; | |
434 | 450 | } |
435 | 451 | } |
436 | - //不在比对孕妇最后一条 | |
437 | - if((i + 2) == valueList.size()){ | |
438 | - break; | |
439 | - } | |
452 | + //人产检list最后一条不用比对 | |
453 | + if((i + 2) == valueList.size()){break;} | |
440 | 454 | |
455 | + } | |
441 | 456 | |
457 | + } | |
458 | + } | |
459 | + System.out.println("5 孕妇:"+ name +"身份证:"+ carno + ",高危添加总数---" + conut); //现在统计个数完全正确$$$$ | |
460 | + List<RiskStatisticsResult> riskStatisticsResults = new ArrayList<>(); | |
461 | + for (String bcid: incrHrisk ) { | |
462 | + if(bcid.contains("###")){ | |
463 | + RiskStatisticsResult rsr = new RiskStatisticsResult(); | |
464 | + /* if(bcid.contains("###czgw@")){ | |
465 | + rsr.setFuzChz("复诊"); | |
466 | + }else if(bcid.contains("###fzgw@")){ | |
467 | + rsr.setFuzChz("初诊"); | |
442 | 468 | } |
469 | + bcid = bcid.substring(8,bcid.length());*/ | |
470 | + bcid = bcid.substring(3,bcid.length()); | |
471 | + HosptialHighRisk hosptialHighRisk = hosptialHighRiskService.getOneHosptialHighRiskById(bcid); | |
472 | + if(hosptialHighRisk !=null){ | |
473 | + String colorCode = HosptialHighRiskFacade.colorMap.get(hosptialHighRisk.getColor()); | |
474 | + hosptialHighRisk.setColorName(HosptialHighRiskFacade.colorNameMap.get(colorCode)); | |
475 | + rsr.setId(hosptialHighRisk.getId()); | |
476 | + rsr.setName(hosptialHighRisk.getName()); | |
477 | + rsr.setColor(hosptialHighRisk.getColorName()); | |
478 | + } | |
479 | + riskStatisticsResults.add(rsr); | |
480 | + System.out.println(rsr.toString()); | |
481 | + }else { | |
482 | + RiskStatisticsResult rsr = new RiskStatisticsResult(); | |
483 | + /*if(bcid.contains("fzgw@")){ | |
484 | + rsr.setFuzChz("复诊"); | |
485 | + }else if(bcid.contains("czgw@")){ | |
486 | + rsr.setFuzChz("初诊"); | |
487 | + } | |
488 | + bcid = bcid.substring(5,bcid.length()); | |
489 | + */ | |
490 | + BasicConfig basicConfig = basicConfigService.getOneBasicConfigById(bcid); | |
491 | + if(basicConfig !=null){ | |
492 | + rsr.setId(basicConfig.getId()); | |
493 | + rsr.setName(basicConfig.getName()); | |
494 | + String colorCode = HosptialHighRiskFacade.colorMap.get(basicConfig.getParentId()); | |
495 | + rsr.setColor(HosptialHighRiskFacade.colorNameMap.get(colorCode)); | |
496 | + } | |
497 | + riskStatisticsResults.add(rsr); | |
498 | + System.out.println(rsr.toString()); | |
499 | + | |
443 | 500 | } |
501 | + | |
444 | 502 | } |
445 | - System.out.println("5-----高危因素id集合-----"+incrHrisk.size()); | |
446 | 503 | |
447 | - /*BasicConfigQuery basicConfigQuery = new BasicConfigQuery(); | |
448 | - basicConfigQuery.setId(id); | |
449 | - List<BasicConfig> riskConfig = basicConfigService.queryBasicConfig(basicConfigQuery); | |
450 | - map.put("Name", riskConfig.get(0).getName()); | |
451 | - map.put("cardNo", recordModel.getCardNo());*/ | |
504 | + System.out.println("6 获取高危实体---- "+riskStatisticsResults.size()); | |
505 | + List<Map<String, Object>> datas = new ArrayList<>(); | |
506 | + if (CollectionUtils.isNotEmpty(riskStatisticsResults)) { | |
507 | + for (RiskStatisticsResult rsr : riskStatisticsResults) { | |
508 | + Map<String, Object> data = new HashMap<>(); | |
452 | 509 | |
510 | + data.put("高危因素", rsr.getName()); | |
511 | + data.put("高危等级", rsr.getColor()); | |
512 | + datas.add(data); | |
513 | + } | |
514 | + } | |
515 | + OutputStream out = response.getOutputStream(); | |
516 | + Map<String, String> cnames = new LinkedHashMap<>(); | |
517 | + cnames.put("高危因素", "高危因素"); | |
518 | + cnames.put("高危等级", "高危等级"); | |
519 | + response.setContentType("application/octet-stream"); | |
520 | + response.setCharacterEncoding("UTF-8"); | |
521 | + response.setHeader("Content-Disposition", "attachment;fileName=" + "威海高危统计.xls"); | |
522 | + ExcelUtil.toExcel(out, datas, cnames); | |
523 | + | |
453 | 524 | } |
454 | 525 | } catch (Exception e) { |
455 | 526 | e.printStackTrace(); |
527 | + ExceptionUtils.catchException(e, "产筛导出异常"); | |
456 | 528 | } |
457 | 529 | |
458 | 530 | return new BaseListResponse().setData(incrHrisk).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setPageInfo(antExRecordQuery.getPageInfo()); |
459 | 531 | } |
460 | 532 | |
533 | + private void getCzFzGwMth(List beforeRiskList, AntExRecordModel antExRecordModel1) { | |
534 | + if(StringUtils.isNotEmpty(antExRecordModel1.getfId()) && antExRecordModel1.getType()==2){ | |
535 | + AntExChuModel data = antExService.findOne(antExRecordModel1.getfId()); | |
536 | + //初诊使用产检中的高危因素 | |
537 | + if (data!=null && StringUtils.isNotEmpty(data.getHighrisk()) && !"{}".equals(data.getHighrisk()) && !"[]".equals(data.getHighrisk())) { | |
538 | + //System.out.println(data.getHighrisk()); | |
539 | + List<Map<String, Object>> listOtherRisk = new ArrayList<>(); | |
540 | + if (data.getHighrisk().startsWith("[") && data.getHighrisk().endsWith("]")) { | |
541 | + List<String> list2 = JsonUtil.toList(data.getHighrisk(), String.class); | |
542 | + /*for (String czgw : list2) { | |
543 | + beforeRiskList.add("czgw@"+czgw); | |
544 | + }*/ | |
545 | + beforeRiskList.addAll(list2); | |
546 | + } | |
547 | + } | |
548 | + //初诊添加其它高危 | |
549 | + if (data!=null && StringUtils.isNotEmpty(data.getOtherHighRisk()) && !"{}".equals(data.getOtherHighRisk()) && !"[]".equals(data.getOtherHighRisk())) { | |
550 | + //System.out.println(data.getOtherHighRisk()); | |
551 | + List<Map<String, Object>> listOtherRisk = new ArrayList<>(); | |
552 | + ResolveUtils.queryOtherRisk(data.getOtherHighRisk(), listOtherRisk); | |
553 | + for (Map<String, Object> mapo: listOtherRisk) { | |
554 | + if(!mapo.containsKey("otherId")){ | |
555 | + continue; | |
556 | + } | |
557 | + /*beforeRiskList.add("###czgw@"+mapo.get("otherId").toString());*/ | |
558 | + beforeRiskList.add("###"+mapo.get("otherId").toString()); | |
559 | + } | |
560 | + } | |
561 | + }//复诊 | |
562 | + else if(StringUtils.isNotEmpty(antExRecordModel1.getfId()) && antExRecordModel1.getType()==1){ | |
563 | + AntenatalExaminationModel data = antExService.findOneById(antExRecordModel1.getfId()); | |
564 | + //复诊使用产检中的高危因素 | |
565 | + if (data!=null && StringUtils.isNotEmpty(data.getRiskFactor()) && !"{}".equals(data.getRiskFactor()) && !"[]".equals(data.getRiskFactor())) { | |
566 | + // System.out.println(data.getRiskFactor()); | |
567 | + List<Map<String, Object>> listOtherRisk = new ArrayList<>(); | |
568 | + if (data.getRiskFactor().startsWith("[") && data.getRiskFactor().endsWith("]")) { | |
569 | + List<String> list2 = JsonUtil.toList(data.getRiskFactor(), String.class); | |
570 | + /* for (String czgw : list2) { | |
571 | + beforeRiskList.add("fzgw@"+czgw); | |
572 | + }*/ | |
573 | + beforeRiskList.addAll(list2); | |
574 | + } | |
575 | + } | |
576 | + //复诊添加其它高危 | |
577 | + if (data!=null && StringUtils.isNotEmpty(data.getOtherRisk()) && !"{}".equals(data.getOtherRisk()) && !"[]".equals(data.getOtherRisk())) { | |
578 | + // System.out.println(data.getOtherRisk()); | |
579 | + List<Map<String, Object>> listOtherRisk = new ArrayList<>(); | |
580 | + ResolveUtils.queryOtherRisk(data.getOtherRisk(), listOtherRisk); | |
581 | + for (Map<String, Object> mapo: listOtherRisk) { | |
582 | + if(!mapo.containsKey("otherId")){ | |
583 | + continue; | |
584 | + } | |
585 | + /*beforeRiskList.add("###fzgw@"+mapo.get("otherId").toString());*/ | |
586 | + beforeRiskList.add("###"+mapo.get("otherId").toString()); | |
587 | + } | |
588 | + } | |
589 | + | |
590 | + } | |
591 | + if(beforeRiskList.contains("d42eec03-aa86-45b8-a4e0-78a0ff365fb6")){ | |
592 | + beforeRiskList.remove("d42eec03-aa86-45b8-a4e0-78a0ff365fb6"); | |
593 | + } | |
594 | + | |
595 | + } | |
596 | + | |
597 | + private void getRisk(String highRisk, String oRisk, Map<String, Object> map) { | |
598 | + HighScoreResult highScoreResult = null; | |
599 | + if (org.apache.commons.lang.StringUtils.isNotEmpty(highRisk)) { | |
600 | + List<String> ids = JsonUtil.toList(highRisk, String.class); | |
601 | + if (CollectionUtils.isNotEmpty(ids)) { | |
602 | + highScoreResult = ResolveUtils.queryRisk(ids, true, basicConfigService); | |
603 | + } | |
604 | + } | |
605 | + Integer score = 0; | |
606 | + if (highScoreResult != null && highScoreResult.getScore() != null) { | |
607 | + score = highScoreResult.getScore(); | |
608 | + } | |
609 | + List<Map<String, Object>> list = new ArrayList<>(); | |
610 | + List<Map<String, Object>> checkList = ResolveUtils.queryHighRisk(highScoreResult); | |
611 | + if (CollectionUtils.isNotEmpty(checkList)) { | |
612 | + list.addAll(checkList); | |
613 | + } | |
614 | + if (org.apache.commons.lang.StringUtils.isNotEmpty(oRisk) && !"{}".equals(oRisk) && !"[]".equals(oRisk)) { | |
615 | + List<Map<String, Object>> listOtherRisk = new ArrayList<>(); | |
616 | + ResolveUtils.queryOtherRisk(oRisk, listOtherRisk); | |
617 | + | |
618 | + for (Map<String, Object> otherRisk : listOtherRisk) { | |
619 | + if (otherRisk != null) { | |
620 | + if (otherRisk.get("score") != null && org.apache.commons.lang.StringUtils.isNotEmpty(otherRisk.get("score").toString())) { | |
621 | + String s = (String) otherRisk.get("score"); | |
622 | + if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(s) && FunvCommonUtil.isNumeric(s)) { | |
623 | + score += Integer.parseInt(s); | |
624 | + } | |
625 | + } | |
626 | + } | |
627 | + list.add(otherRisk); | |
628 | + } | |
629 | + } | |
630 | + map.put("score", UnitUtils.unitSplice(score, UnitConstants.FEN)); | |
631 | + map.put("highRisk", list); | |
632 | + } | |
461 | 633 | /** |
462 | 634 | * 功能描述 根据产检时间升序排列 |
463 | 635 | * |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HosptialHighRiskFacade.java
View file @
eeb22f0
... | ... | @@ -49,6 +49,14 @@ |
49 | 49 | colorMap.put("315107bd-91fe-42a1-9237-752f3c046a40", "risk_" + RiskDefaultTypeEnum.getColor("黄色")); |
50 | 50 | } |
51 | 51 | |
52 | + public static Map<String, String> colorNameMap = new HashMap<>(); | |
53 | + static { | |
54 | + ; | |
55 | + colorNameMap.put("risk_orange", "橙色"); | |
56 | + colorNameMap.put("risk_yellow", "黄色"); | |
57 | + colorNameMap.put("risk_red", "红色"); | |
58 | + colorNameMap.put("risk_purple", "紫色"); | |
59 | + } | |
52 | 60 | public static Map<String, String> scoreMap = new HashMap<>(); |
53 | 61 | |
54 | 62 | static { |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/RiskStatisticsResult.java
View file @
eeb22f0
1 | +package com.lyms.platform.operate.web.result; | |
2 | + | |
3 | +public class RiskStatisticsResult { | |
4 | + | |
5 | + private String id ; | |
6 | + private String name ; | |
7 | + private String color ; | |
8 | + private String fuzChz ; | |
9 | + | |
10 | + public String getId() { | |
11 | + return id; | |
12 | + } | |
13 | + | |
14 | + public void setId(String id) { | |
15 | + this.id = id; | |
16 | + } | |
17 | + | |
18 | + public String getName() { | |
19 | + return name; | |
20 | + } | |
21 | + | |
22 | + public void setName(String name) { | |
23 | + this.name = name; | |
24 | + } | |
25 | + | |
26 | + public String getColor() { | |
27 | + return color; | |
28 | + } | |
29 | + | |
30 | + public void setColor(String color) { | |
31 | + this.color = color; | |
32 | + } | |
33 | + | |
34 | + public String getFuzChz() { | |
35 | + return fuzChz; | |
36 | + } | |
37 | + | |
38 | + public void setFuzChz(String fuzChz) { | |
39 | + this.fuzChz = fuzChz; | |
40 | + } | |
41 | + | |
42 | + @Override | |
43 | + public String toString() { | |
44 | + return "RiskStatisticsResult{" + | |
45 | + "id='" + id + '\'' + | |
46 | + ", name='" + name + '\'' + | |
47 | + ", color='" + color + '\'' + | |
48 | + ", fuzChz='" + fuzChz + '\'' + | |
49 | + '}'; | |
50 | + } | |
51 | +} |