瀏覽代碼

治疗反写更新

kongwz 6 年之前
父節點
當前提交
1c92609528
共有 1 個文件被更改,包括 49 次插入48 次删除
  1. 49 48
      push-web/src/main/java/org/diagbot/push/controller/AlgorithmController.java

+ 49 - 48
push-web/src/main/java/org/diagbot/push/controller/AlgorithmController.java

@@ -1,5 +1,6 @@
 package org.diagbot.push.controller;
 
+import io.swagger.models.auth.In;
 import org.diagbot.common.work.*;
 import org.diagbot.pub.api.Response;
 import org.diagbot.pub.utils.PropertiesUtil;
@@ -52,11 +53,11 @@ public class AlgorithmController extends BaseController {
         //大数据推送
         HttpApi<Response> api = new HttpApi<Response>();
         // 根据hospitalCode从his获取所有疾病库信息
-        Response bigDataResponse = api.doPost(propertiesUtil.getProperty("bigdata.http.url"), searchData,
-                Response.class);
-        LinkedHashMap bigDataLinkedHashMap = (LinkedHashMap) bigDataResponse.getData();
-        //转FeatureRate对象
-        ResponseData bigDataResponseData = map2ResponseData(bigDataLinkedHashMap);
+//        Response bigDataResponse = api.doPost(propertiesUtil.getProperty("bigdata.http.url"), searchData,
+//                Response.class);
+//        LinkedHashMap bigDataLinkedHashMap = (LinkedHashMap) bigDataResponse.getData();
+//        //转FeatureRate对象
+//        ResponseData bigDataResponseData = map2ResponseData(bigDataLinkedHashMap);
         //知识图谱推送
         Response graphResponse = api.doPost(propertiesUtil.getProperty("graph.http.url"), searchData,
                 Response.class);
@@ -68,24 +69,24 @@ public class AlgorithmController extends BaseController {
         if (graphResponseData.getDis().size() > 0) {
             List<FeatureRate> disFeatureRates = new ArrayList<>();
             boolean isFind = false;
-            for (int i = 0; i < bigDataResponseData.getDis().size(); i++) {
-                FeatureRate bigdata_fr = bigDataResponseData.getDis().get(i);
-                isFind = false;
-                for (FeatureRate graph_fr : graphResponseData.getDis()) {
-                    if (bigdata_fr.getFeatureName().equals(graph_fr.getFeatureName())) {
-                        isFind = true;
-                    }
-                }
-                if (!isFind) {
-                    disFeatureRates.add(bigdata_fr);
-                }
-            }
+//            for (int i = 0; i < bigDataResponseData.getDis().size(); i++) {
+//                FeatureRate bigdata_fr = bigDataResponseData.getDis().get(i);
+//                isFind = false;
+//                for (FeatureRate graph_fr : graphResponseData.getDis()) {
+//                    if (bigdata_fr.getFeatureName().equals(graph_fr.getFeatureName())) {
+//                        isFind = true;
+//                    }
+//                }
+//                if (!isFind) {
+//                    disFeatureRates.add(bigdata_fr);
+//                }
+//            }
             List<FeatureRate> graphFeatureRates = graphResponseData.getDis();
             graphFeatureRates.addAll(disFeatureRates);
             //大数据推送疾病数据用知识图谱替换
-            bigDataResponseData.setDis(graphFeatureRates);
+//            bigDataResponseData.setDis(graphFeatureRates);
         }
-        response.setData(bigDataResponseData);
+//        response.setData(bigDataResponseData);
         return response;
     }
 
@@ -124,45 +125,45 @@ public class AlgorithmController extends BaseController {
     private ResponseData addTreat(ResponseData graphResponseData, LinkedHashMap linkedHashMap) {
         Map<String,Filnlly> treatResult = new HashMap<String,Filnlly>();
         if(linkedHashMap.get("treat")!=null){
-            LinkedHashMap<String, LinkedHashMap> data= (LinkedHashMap<String, LinkedHashMap>)linkedHashMap.get("treat");
-            LinkedHashMap<String,LinkedHashMap> treat = data.get("treat");
-            for (Map.Entry<String,LinkedHashMap>sdf :treat.entrySet()
-                 ) {
-                String diseName = sdf.getKey();//诊断名
-                LinkedHashMap<String,ArrayList<LinkedHashMap>> value = sdf.getValue();
-                ArrayList<LinkedHashMap> treatmentList = value.get("treatment");
+            LinkedHashMap<String, LinkedHashMap<String,ArrayList<LinkedHashMap>>> data= (LinkedHashMap<String, LinkedHashMap<String,ArrayList<LinkedHashMap>>>)linkedHashMap.get("treat");
+            for (Map.Entry<String, LinkedHashMap<String,ArrayList<LinkedHashMap>>> fd:data.entrySet()) {
+                String diseaseName = fd.getKey();
+                LinkedHashMap<String, ArrayList<LinkedHashMap>> value = fd.getValue();
+                ArrayList<LinkedHashMap> treament = value.get("treatment");
                 ArrayList<Drugs> drugsList = new ArrayList<Drugs>();
-                for (LinkedHashMap d:
-                     treatmentList) {
-                    Drugs drugs = new Drugs();//药类封装
-                    String bigdrugsName = String.valueOf(d.get("bigdrugsName"));
-                    String subdrugsName = String.valueOf(d.get("subdrugsName"));
-                    ArrayList<LinkedHashMap<String, String>> medicitionsList = (ArrayList<LinkedHashMap<String, String>>) d.get("medicitionsList");
+                for (LinkedHashMap sd: treament) {
+                    //创建药类对象,对药类对象进行封装
+                    Drugs drugs = new Drugs();
+
+                    String bigdrugsName = String.valueOf(sd.get("bigdrugsName"));
+                    String subdrugsName = String.valueOf(sd.get("subdrugsName"));
+                    ArrayList<LinkedHashMap<String, Object>> medicitionsList = (ArrayList<LinkedHashMap<String, Object>>) sd.get("medicitionsList");
                     LinkedList<Medicition> medicitionObjectList=new LinkedList<>();
-                    for (LinkedHashMap<String, String> medicition:
-                         medicitionsList) {
+                    for (LinkedHashMap<String, Object> ds: medicitionsList) {
+                        //创建药对象,进行封装
                         Medicition medicitionObject = new Medicition();
-                        String medicitionName = medicition.get("medicitionName");//药名
-                        String rate = medicition.get("rate");//药的使用率
-                        Integer isShow =Integer.parseInt(medicition.get("isShow")) ;//是否显示
-                        Integer forbidden = Integer.parseInt(medicition.get("forbidden"));//是否禁用,慎用
-                        medicitionObject.setMedicitionName(medicitionName);
-                        medicitionObject.setRate(rate);
-                        medicitionObject.setIsShow(isShow);
-                        medicitionObject.setForbidden(forbidden);
+
+                        String medicitionName = String.valueOf(ds.get("medicitionName"));
+                        String rate = String.valueOf(ds.get("rate"));
+                        Integer isShow = Integer.parseInt(ds.get("isShow").toString());
+                        Integer forbidden =Integer.parseInt(ds.get("forbidden").toString());
+                        medicitionObject.setMedicitionName(medicitionName);//设置药名
+                        medicitionObject.setRate(rate);//设置药的使用率
+                        medicitionObject.setIsShow(isShow);//设置这个药是否展示
+                        medicitionObject.setForbidden(forbidden);//设置这个药是否为禁忌药
                         medicitionObjectList.add(medicitionObject);
                     }
-                    drugs.setBigdrugsName(bigdrugsName);
-                    drugs.setSubdrugsName(subdrugsName);
-                    drugs.setMedicitionsList(medicitionObjectList);
-                    drugsList.add(drugs);
+                    drugs.setBigdrugsName(bigdrugsName);//药的大类
+                    drugs.setSubdrugsName(subdrugsName);//药的子类
+                    drugs.setMedicitionsList(medicitionObjectList);//这个类所包含的药物列表
+                    drugsList.add(drugs);//药类列表
                 }
                 Filnlly filnlly = new Filnlly();
                 filnlly.setTreatment(drugsList);
-                treatResult.put(diseName,filnlly);
+                treatResult.put(diseaseName,filnlly);
             }
         }
         graphResponseData.setTreat(treatResult);
-        return null;
+        return graphResponseData;
     }
 }