kongwz 6 vuotta sitten
vanhempi
commit
58bd5c588f

+ 43 - 7
push-web/src/main/java/org/diagbot/push/controller/AlgorithmController.java

@@ -1,8 +1,6 @@
 package org.diagbot.push.controller;
 
-import org.diagbot.common.work.FeatureRate;
-import org.diagbot.common.work.ResponseData;
-import org.diagbot.common.work.SearchData;
+import org.diagbot.common.work.*;
 import org.diagbot.pub.api.Response;
 import org.diagbot.pub.utils.PropertiesUtil;
 import org.diagbot.pub.utils.http.HttpApi;
@@ -14,9 +12,7 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
+import java.util.*;
 
 /**
  * @ClassName org.diagbot.push.controller.AlgorithmController
@@ -126,7 +122,47 @@ public class AlgorithmController extends BaseController {
     }
 
     private ResponseData addTreat(ResponseData graphResponseData, LinkedHashMap linkedHashMap) {
-//        LinkedHashMap<String, String>)linkedHashMap.get("treat"));
+        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");
+                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");
+                    LinkedList<Medicition> medicitionObjectList=new LinkedList<>();
+                    for (LinkedHashMap<String, String> medicition:
+                         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);
+                        medicitionObjectList.add(medicitionObject);
+                    }
+                    drugs.setBigdrugsName(bigdrugsName);
+                    drugs.setSubdrugsName(subdrugsName);
+                    drugs.setMedicitionsList(medicitionObjectList);
+                    drugsList.add(drugs);
+                }
+                Filnlly filnlly = new Filnlly();
+                filnlly.setTreatment(drugsList);
+                treatResult.put(diseName,filnlly);
+            }
+        }
+        graphResponseData.setTreat(treatResult);
         return null;
     }
 }