Commit 48e3362ce0468869047ef55cde56c351ff033924
1 parent
6c6b545293
Exists in
master
and in
6 other branches
高危诊断配置
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 | } |