Commit 1b68091f0d4ffb2e40c5cd234d9a6d7adb662a12

Authored by liquanyu
1 parent bca05aa75a

高危诊断配置

Showing 3 changed files with 184 additions and 39 deletions

platform-common/src/main/java/com/lyms/platform/common/enums/DiagnoseEnums.java View file @ 1b68091
... ... @@ -23,7 +23,7 @@
23 23 md(10, "辅助检查——梅毒血清实验"),
24 24 pqsss(11, "妇科手术史(盆腔手术史)"),
25 25 ycs(12, "孕产史"),
26   - yfjc(13, "妇科检查"),
  26 + fkjc(13, "妇科检查"),
27 27 jws(14, "既往史"),
28 28 crbs(15, "传染病史"),
29 29 ckjc(16, "产科检查"),
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java View file @ 1b68091
... ... @@ -124,7 +124,7 @@
124 124 private DiagnoseConfigService diagnoseConfigService;
125 125  
126 126 @Autowired
127   - private PersonService personService;
  127 + private DiagnoseConfigFacde diagnoseConfigFacde;
128 128  
129 129 /**
130 130 * 处理区域隐藏建档
... ... @@ -2716,7 +2716,6 @@
2716 2716 Map<Integer,List<DiagnoseItemModel>> mapItems = getRiskConfig(configModels);
2717 2717 if (mapItems != null && mapItems.size() > 0)
2718 2718 {
2719   -
2720 2719 if (patients != null && patients.getBirth() != null)
2721 2720 {
2722 2721 Double age = (double)DateUtil.getAge(patients.getBirth(), new Date());
... ... @@ -2782,7 +2781,8 @@
2782 2781 //流产次
2783 2782 for (DiagnoseItemModel item : detailItemsAge)
2784 2783 {
2785   - if ("28".equals(item.getValueOne()) && compare(item,abortion) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2784 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.LCC.getId()).equals(item.getValueOne()) &&
  2785 + compare(item.getValueTwo(),item.getValueThree(),abortion) && CollectionUtils.isNotEmpty(item.getRiskIds()))
2786 2786 {
2787 2787 list.addAll(item.getRiskIds());
2788 2788 }
... ... @@ -2801,7 +2801,8 @@
2801 2801 //产次
2802 2802 for (DiagnoseItemModel item : detailItemsAge)
2803 2803 {
2804   - if ("29".equals(item.getValueOne()) && compare(item,prodTime) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2804 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.CC.getId()).equals(item.getValueOne()) &&
  2805 + compare(item.getValueTwo(),item.getValueThree(),prodTime) && CollectionUtils.isNotEmpty(item.getRiskIds()))
2805 2806 {
2806 2807 list.addAll(item.getRiskIds());
2807 2808 }
... ... @@ -2820,7 +2821,8 @@
2820 2821 //引产次
2821 2822 for (DiagnoseItemModel item : detailItemsAge)
2822 2823 {
2823   - if ("30".equals(item.getValueOne()) && compare(item,yinchan) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2824 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.YCC.getId()).equals(item.getValueOne()) &&
  2825 + compare(item.getValueTwo(),item.getValueThree(),yinchan) && CollectionUtils.isNotEmpty(item.getRiskIds()))
2824 2826 {
2825 2827 list.addAll(item.getRiskIds());
2826 2828 }
... ... @@ -2829,7 +2831,7 @@
2829 2831 }
2830 2832  
2831 2833  
2832   - if (antExcAddRequest.getYinchan() != null)
  2834 + if (antExcAddRequest.getPlanedProd() != null)
2833 2835 {
2834 2836 Double planedProd = (double)antExcAddRequest.getPlanedProd();
2835 2837 //孕产史高危匹配
2836 2838  
2837 2839  
2838 2840  
... ... @@ -2839,17 +2841,150 @@
2839 2841 //剖宫产次
2840 2842 for (DiagnoseItemModel item : detailItemsAge)
2841 2843 {
2842   - if ("31".equals(item.getValueOne()) && compare(item,planedProd) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2844 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.PGCC.getId()).equals(item.getValueOne()) &&
  2845 + compare(item.getValueTwo(),item.getValueThree(),planedProd) && CollectionUtils.isNotEmpty(item.getRiskIds()))
2843 2846 {
2844 2847 list.addAll(item.getRiskIds());
2845 2848 }
2846 2849 }
2847 2850 }
2848 2851 }
  2852 +
  2853 +
  2854 + if (StringUtils.isNotEmpty(antExcAddRequest.getHeart()))
  2855 + {
  2856 + String heart = antExcAddRequest.getHeart();
  2857 + //一般检查
  2858 + List<DiagnoseItemModel> ybjcItems = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.ybjc.getId());
  2859 + if (CollectionUtils.isNotEmpty(ybjcItems))
  2860 + {
  2861 + //心脏
  2862 + for (DiagnoseItemModel item : ybjcItems)
  2863 + {
  2864 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.XZ.getId()).equals(item.getValueOne()) &&
  2865 + contain(item.getValueTwo(), heart) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2866 + {
  2867 + list.addAll(item.getRiskIds());
  2868 + }
  2869 + }
  2870 + }
  2871 + }
  2872 +
  2873 +
  2874 + if (StringUtils.isNotEmpty(antExcAddRequest.getLungs()))
  2875 + {
  2876 + String lungs = antExcAddRequest.getLungs();
  2877 + //一般检查
  2878 + List<DiagnoseItemModel> ybjcItems = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.ybjc.getId());
  2879 + if (CollectionUtils.isNotEmpty(ybjcItems))
  2880 + {
  2881 + //肺部
  2882 + for (DiagnoseItemModel item : ybjcItems)
  2883 + {
  2884 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.FB.getId()).equals(item.getValueOne()) &&
  2885 + contain(item.getValueTwo(), lungs) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2886 + {
  2887 + list.addAll(item.getRiskIds());
  2888 + }
  2889 + }
  2890 + }
  2891 + }
  2892 +
  2893 +
  2894 + if (StringUtils.isNotEmpty(antExcAddRequest.getbChao()))
  2895 + {
  2896 + String bChao = antExcAddRequest.getbChao();
  2897 + //B超
  2898 + List<DiagnoseItemModel> bcItems = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.bc.getId());
  2899 + if (CollectionUtils.isNotEmpty(bcItems))
  2900 + {
  2901 + //B超
  2902 + for (DiagnoseItemModel item : bcItems)
  2903 + {
  2904 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.BC.getId()).equals(item.getValueOne()) &&
  2905 + contain(item.getValueTwo(), bChao) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2906 + {
  2907 + list.addAll(item.getRiskIds());
  2908 + }
  2909 + }
  2910 + }
  2911 + }
  2912 +
  2913 +
  2914 + if (StringUtils.isNotEmpty(antExcAddRequest.getCervical()))
  2915 + {
  2916 + String cervical = antExcAddRequest.getCervical();
  2917 + //妇科检查
  2918 + List<DiagnoseItemModel> items = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.fkjc.getId());
  2919 + if (CollectionUtils.isNotEmpty(items))
  2920 + {
  2921 + //宫颈
  2922 + for (DiagnoseItemModel item : items)
  2923 + {
  2924 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.GJ.getId()).equals(item.getValueOne()) &&
  2925 + contain(item.getValueTwo(), cervical) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2926 + {
  2927 + list.addAll(item.getRiskIds());
  2928 + }
  2929 + }
  2930 + }
  2931 + }
  2932 +
  2933 +
  2934 + if (StringUtils.isNotEmpty(antExcAddRequest.getUterus()))
  2935 + {
  2936 + String uterus = antExcAddRequest.getUterus();
  2937 + //妇科检查
  2938 + List<DiagnoseItemModel> items = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.fkjc.getId());
  2939 + if (CollectionUtils.isNotEmpty(items))
  2940 + {
  2941 + //子宫
  2942 + for (DiagnoseItemModel item : items)
  2943 + {
  2944 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.ZG.getId()).equals(item.getValueOne()) &&
  2945 + contain(item.getValueTwo(), uterus) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2946 + {
  2947 + list.addAll(item.getRiskIds());
  2948 + }
  2949 + }
  2950 + }
  2951 + }
  2952 +
  2953 + if (StringUtils.isNotEmpty(antExcAddRequest.getFujian()))
  2954 + {
  2955 + String fujian = antExcAddRequest.getFujian();
  2956 + //妇科检查
  2957 + List<DiagnoseItemModel> items = mapItems.get(DiagnoseEnums.DiagnoseItemEnums.fkjc.getId());
  2958 + if (CollectionUtils.isNotEmpty(items))
  2959 + {
  2960 + //附件
  2961 + for (DiagnoseItemModel item : items)
  2962 + {
  2963 + if (String.valueOf(DiagnoseEnums.DiagnoseDetailItemEnums.FJ.getId()).equals(item.getValueOne()) &&
  2964 + contain(item.getValueTwo(), fujian) && CollectionUtils.isNotEmpty(item.getRiskIds()))
  2965 + {
  2966 + list.addAll(item.getRiskIds());
  2967 + }
  2968 + }
  2969 + }
  2970 + }
  2971 +
  2972 +
  2973 +
  2974 +
2849 2975 }
2850 2976  
2851   - return new BaseObjectResponse().setData(list).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功");
  2977 + List<Map<String,String>> riskList = diagnoseConfigFacde.getRiskName(list);
  2978 +
  2979 + return new BaseObjectResponse().setData(riskList).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功");
2852 2980 }
  2981 +
  2982 +
  2983 + private boolean contain(String value,String content)
  2984 + {
  2985 + return content.contains(value);
  2986 + }
  2987 +
2853 2988  
2854 2989 /**
2855 2990 *
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/DiagnoseConfigFacde.java View file @ 1b68091
... ... @@ -204,8 +204,8 @@
204 204 DiagnoseItemsQuery diagnoseItemsQuery = new DiagnoseItemsQuery();
205 205 diagnoseItemsQuery.setConfigId(configModel.getId());
206 206  
207   - BasicConfigQuery basicConfigQuery = new BasicConfigQuery();
208 207  
  208 +
209 209 List<DiagnoseItemModel> diagnoseItemModels = diagnoseConfigService.queryDiagnoseItems(diagnoseItemsQuery);
210 210 if (CollectionUtils.isNotEmpty(diagnoseItemModels) && CollectionUtils.isNotEmpty(configModel.getConfigs()))
211 211 {
... ... @@ -221,35 +221,7 @@
221 221  
222 222 if (CollectionUtils.isNotEmpty(diagnose.getRiskIds()))
223 223 {
224   - List<Map<String,String>> list = new ArrayList<>();
225   -
226   - for (String rid : diagnose.getRiskIds())
227   - {
228   - basicConfigQuery.setId(rid);
229   - List<BasicConfig> basicConfigs = basicConfigService.queryBasicConfig(basicConfigQuery);
230   - Map<String,String> map = new HashMap<>();
231   - map.put("id", basicConfigs.get(0).getId());
232   - map.put("name", basicConfigs.get(0).getName());
233   - map.put("code", basicConfigs.get(0).getCode());
234   -
235   - basicConfigQuery.setId(basicConfigs.get(0).getParentId());
236   - List<BasicConfig> basicConfigs2 = basicConfigService.queryBasicConfig(basicConfigQuery);
237   - if (CollectionUtils.isNotEmpty(basicConfigs2)) {
238   - String name = basicConfigs2.get(0).getName();
239   - if (name.indexOf("黄色") > -1) {
240   - name = "黄色";
241   - } else if (name.indexOf("橙色") > -1) {
242   - name = "橙色";
243   - } else if (name.indexOf("红色") > -1) {
244   - name = "红色";
245   - } else if (name.indexOf("紫色") > -1) {
246   - name = "紫色";
247   - }
248   - map.put("color", "risk_" + RiskDefaultTypeEnum.getColor(name));
249   - }
250   -
251   - list.add(map);
252   - }
  224 + List<Map<String,String>> list = getRiskName(diagnose.getRiskIds());
253 225 dr.setRiskIds(list);
254 226 }
255 227  
... ... @@ -264,5 +236,43 @@
264 236 }
265 237 return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("没有数据");
266 238 }
  239 +
  240 + public List<Map<String,String>> getRiskName(List<String> ids)
  241 + {
  242 + List<Map<String,String>> list = new ArrayList<>();
  243 + BasicConfigQuery basicConfigQuery = new BasicConfigQuery();
  244 + if (CollectionUtils.isNotEmpty(ids))
  245 + {
  246 + for (String rid : ids) {
  247 + basicConfigQuery.setId(rid);
  248 + List<BasicConfig> basicConfigs = basicConfigService.queryBasicConfig(basicConfigQuery);
  249 + Map<String, String> map = new HashMap<>();
  250 + map.put("id", basicConfigs.get(0).getId());
  251 + map.put("name", basicConfigs.get(0).getName());
  252 + map.put("code", basicConfigs.get(0).getCode());
  253 +
  254 + basicConfigQuery.setId(basicConfigs.get(0).getParentId());
  255 + List<BasicConfig> basicConfigs2 = basicConfigService.queryBasicConfig(basicConfigQuery);
  256 + if (CollectionUtils.isNotEmpty(basicConfigs2)) {
  257 + String name = basicConfigs2.get(0).getName();
  258 + if (name.indexOf("黄色") > -1) {
  259 + name = "黄色";
  260 + } else if (name.indexOf("橙色") > -1) {
  261 + name = "橙色";
  262 + } else if (name.indexOf("红色") > -1) {
  263 + name = "红色";
  264 + } else if (name.indexOf("紫色") > -1) {
  265 + name = "紫色";
  266 + }
  267 + map.put("color", "risk_" + RiskDefaultTypeEnum.getColor(name));
  268 + }
  269 +
  270 + list.add(map);
  271 + }
  272 + }
  273 + return list;
  274 + }
  275 +
  276 +
267 277 }