Commit 48e3362ce0468869047ef55cde56c351ff033924

Authored by liquanyu
1 parent 6c6b545293

高危诊断配置

Showing 2 changed files with 69 additions and 35 deletions

platform-common/src/main/java/com/lyms/platform/common/enums/DiagnoseEnums.java View file @ 48e3362
... ... @@ -322,6 +322,19 @@
322 322 return "";
323 323 }
324 324  
  325 +
  326 + public static Integer getIdByName(String name)
  327 + {
  328 + for(DiagnoseDetailItemEnums s : DiagnoseDetailItemEnums.values()) {
  329 + if (s.getTitle().equals(name))
  330 + {
  331 + return s.getId();
  332 + }
  333 +
  334 + }
  335 + return null;
  336 + }
  337 +
325 338 public int getId() {
326 339 return id;
327 340 }
328 341  
... ... @@ -471,8 +484,9 @@
471 484 }
472 485  
473 486  
474   - public static Integer getIdByParentId(Integer parentId,String name)
  487 + public static Integer getIdByParentName(String parentName,String name)
475 488 {
  489 + Integer parentId = DiagnoseDetailItemEnums.getIdByName(parentName);
476 490 for(JwsChildEnums s : JwsChildEnums.values()) {
477 491 if (s.getParentId() == parentId && s.getTitle().equals(name))
478 492 {
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java View file @ 48e3362
... ... @@ -2812,25 +2812,29 @@
2812 2812 List<String> list = new ArrayList<>();
2813 2813  
2814 2814 Patients patients = patientsService.findOnePatientById(antExAddRequest.getParentId());
2815   - String hospitalId = autoMatchFacade.getHospitalId(userId);
2816 2815  
2817 2816 DiagnoseConfigQuery diagnoseConfigQuery = new DiagnoseConfigQuery();
2818   - diagnoseConfigQuery.setHospitalId(hospitalId);
  2817 + diagnoseConfigQuery.setHospitalId(patients.getHospitalId());
2819 2818 List<DiagnoseConfigModel> configModels = diagnoseConfigService.queryDiagnoseConfigs(diagnoseConfigQuery);
2820 2819  
2821   - if (CollectionUtils.isNotEmpty(configModels))
2822   - {
2823   -
2824   - DiagnoseConfigModel configModel = configModels.get(0);
2825   -
2826   - DiagnoseItemsQuery diagnoseItemsQuery = new DiagnoseItemsQuery();
2827   - diagnoseItemsQuery.setConfigId(configModel.getId());
2828   -
2829   - List<DiagnoseItemModel> diagnoseItemModels = diagnoseConfigService.queryDiagnoseItems(diagnoseItemsQuery);
2830   -
  2820 + Map<Integer,List<DiagnoseItemModel>> mapItems = getRiskConfig(configModels);
  2821 + if (mapItems != null && mapItems.size() > 0) {
  2822 + if (patients != null && patients.getBirth() != null) {
  2823 + String age = String.valueOf(DateUtil.getAge(patients.getBirth(), new Date()));
  2824 + //年龄高危匹配
  2825 + List<DiagnoseItemModel> items = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.age.getId());
  2826 + if (CollectionUtils.isNotEmpty(items)) {
  2827 + for (DiagnoseItemModel item : items) {
  2828 + if (compare(item, age) && CollectionUtils.isNotEmpty(item.getRiskIds())) {
  2829 + list.addAll(item.getRiskIds());
  2830 + }
  2831 + }
  2832 + }
  2833 + }
2831 2834 }
  2835 + List<Map<String,String>> riskList = diagnoseConfigFacde.getRiskName(list);
2832 2836  
2833   - return new BaseObjectResponse().setData(list).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功");
  2837 + return new BaseObjectResponse().setData(riskList).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功");
2834 2838 }
2835 2839  
2836 2840  
... ... @@ -3511,7 +3515,6 @@
3511 3515 }
3512 3516 }
3513 3517  
3514   -
3515 3518 if (antExcAddRequest.getFksxHistory() != null && antExcAddRequest.getFksxHistory().size() > 0)
3516 3519 {
3517 3520 //妇科手术史(盆腔手术史)
... ... @@ -3520,7 +3523,7 @@
3520 3523 {
3521 3524 List<DiagnoseItemModel> items = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.pqsss.getId());
3522 3525 //异位妊娠手术
3523   - if ("true".equals(map.get("ywrsss")))
  3526 + if (map.get("ywrsss") != null && "true".equals(String.valueOf(map.get("ywrsss"))))
3524 3527 {
3525 3528 if (CollectionUtils.isNotEmpty(items)) {
3526 3529 for (DiagnoseItemModel item : items) {
... ... @@ -3533,7 +3536,7 @@
3533 3536 }
3534 3537  
3535 3538 //子宫肌瘤剥除
3536   - if ("true".equals(map.get("zgjlbc")))
  3539 + if (map.get("zgjlbc") != null && "true".equals(String.valueOf(map.get("zgjlbc"))))
3537 3540 {
3538 3541 if (CollectionUtils.isNotEmpty(items)) {
3539 3542 for (DiagnoseItemModel item : items) {
... ... @@ -3546,7 +3549,7 @@
3546 3549 }
3547 3550  
3548 3551 //剖宫产
3549   - if ("true".equals(map.get("pgc")))
  3552 + if (map.get("pgc") != null && "true".equals(String.valueOf(map.get("pgc"))))
3550 3553 {
3551 3554 if (CollectionUtils.isNotEmpty(items)) {
3552 3555 for (DiagnoseItemModel item : items) {
... ... @@ -3559,7 +3562,7 @@
3559 3562 }
3560 3563  
3561 3564 //其他
3562   - if ("true".equals(map.get("qt")) && map.get("qtText") != null)
  3565 + if (map.get("qt") != null && "true".equals(String.valueOf(map.get("qt"))) && map.get("qtText") != null)
3563 3566 {
3564 3567 String qtText = String.valueOf(map.get("qtText"));
3565 3568 if (StringUtils.isNotEmpty(qtText))
... ... @@ -3587,7 +3590,7 @@
3587 3590 List<DiagnoseItemModel> items = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.crbs.getId());
3588 3591  
3589 3592 //乙肝
3590   - if ("true".equals(map.get("yg")))
  3593 + if (map.get("yg") != null && "true".equals(String.valueOf(map.get("yg"))))
3591 3594 {
3592 3595 if (CollectionUtils.isNotEmpty(items)) {
3593 3596 for (DiagnoseItemModel item : items) {
... ... @@ -3600,7 +3603,7 @@
3600 3603 }
3601 3604  
3602 3605 //丙肝
3603   - if ("true".equals(map.get("bg")))
  3606 + if (map.get("bg") != null && "true".equals(String.valueOf(map.get("bg"))))
3604 3607 {
3605 3608 if (CollectionUtils.isNotEmpty(items)) {
3606 3609 for (DiagnoseItemModel item : items) {
... ... @@ -3613,7 +3616,7 @@
3613 3616 }
3614 3617  
3615 3618 //艾滋
3616   - if ("true".equals(map.get("azb")))
  3619 + if (map.get("azb") != null && "true".equals(String.valueOf(map.get("azb"))))
3617 3620 {
3618 3621 if (CollectionUtils.isNotEmpty(items)) {
3619 3622 for (DiagnoseItemModel item : items) {
... ... @@ -3626,7 +3629,7 @@
3626 3629 }
3627 3630  
3628 3631 //梅毒
3629   - if ("true".equals(map.get("md")))
  3632 + if (map.get("md") != null && "true".equals(String.valueOf(map.get("md"))))
3630 3633 {
3631 3634 if (CollectionUtils.isNotEmpty(items)) {
3632 3635 for (DiagnoseItemModel item : items) {
... ... @@ -3639,7 +3642,7 @@
3639 3642 }
3640 3643  
3641 3644 //其他
3642   - if ("true".equals(map.get("qt")) && map.get("qtText") != null)
  3645 + if (map.get("qt") != null && "true".equals(String.valueOf(map.get("qt"))) && map.get("qtText") != null)
3643 3646 {
3644 3647 String qtText = String.valueOf(map.get("qtText"));
3645 3648 if (StringUtils.isNotEmpty(qtText))
3646 3649  
3647 3650  
3648 3651  
3649 3652  
3650 3653  
3651 3654  
... ... @@ -3779,23 +3782,40 @@
3779 3782 if (map1 != null)
3780 3783 {
3781 3784 String checkBox = String.valueOf(map1.get("checkBox"));
3782   - List<String> selecteds = (List<String>)map1.get("selected");
3783   - if (StringUtils.isNotEmpty(checkBox) && "true".equals(checkBox) && CollectionUtils.isNotEmpty(selecteds))
  3785 + //既往史 其他
  3786 + if ("57e4bedbf0f0baa1bee496cd".equals(bc.getId()))
3784 3787 {
3785   - for (String key : selecteds)
  3788 + String selecteds = (String)map1.get("selected");
  3789 + if (StringUtils.isNotEmpty(checkBox) && "true".equals(checkBox) && StringUtils.isNotEmpty(selecteds)) {
  3790 + for (DiagnoseItemModel item : items) {
  3791 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.JWSQT.getId()).equals(item.getValueOne()) &&
  3792 + contain(item.getValueTwo(), selecteds) &&
  3793 + CollectionUtils.isNotEmpty(item.getRiskIds())) {
  3794 + list.addAll(item.getRiskIds());
  3795 + }
  3796 + }
  3797 + }
  3798 + }
  3799 + else
  3800 + {
  3801 + List<String> selecteds = (List<String>)map1.get("selected");
  3802 + if (StringUtils.isNotEmpty(checkBox) && "true".equals(checkBox) && CollectionUtils.isNotEmpty(selecteds))
3786 3803 {
3787   - BasicConfig config = basicConfigService.getOneBasicConfigById(key);
3788   - if (config != null && StringUtils.isNotEmpty(config.getName()))
  3804 + for (String key : selecteds)
3789 3805 {
3790   - Integer cid = DiagnoseEnums.JwsChildEnums.getIdByParentId(DiagnoseEnums.DiagnoseDetailItemEnums.JWSXHXTL.getId(), config.getName());
3791   - if (cid != null)
  3806 + BasicConfig config = basicConfigService.getOneBasicConfigById(key);
  3807 + if (config != null && StringUtils.isNotEmpty(config.getName()))
3792 3808 {
3793   - for (DiagnoseItemModel item : items)
  3809 + Integer cid = DiagnoseEnums.JwsChildEnums.getIdByParentName(DiagnoseEnums.DiagnoseDetailItemEnums.JWSXHXTL.getTitle(), config.getName());
  3810 + if (cid != null)
3794 3811 {
3795   - if (String.valueOf(cid).equals(item.getValueTwo()) &&
3796   - CollectionUtils.isNotEmpty(item.getRiskIds()))
  3812 + for (DiagnoseItemModel item : items)
3797 3813 {
3798   - list.addAll(item.getRiskIds());
  3814 + if (String.valueOf(cid).equals(item.getValueTwo()) &&
  3815 + CollectionUtils.isNotEmpty(item.getRiskIds()))
  3816 + {
  3817 + list.addAll(item.getRiskIds());
  3818 + }
3799 3819 }
3800 3820 }
3801 3821 }