|
@@ -4,6 +4,7 @@ import com.alibaba.druid.support.json.JSONUtils;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.diagbot.common.push.bean.FeatureRate;
|
|
|
import org.diagbot.common.push.bean.SearchData;
|
|
|
import org.diagbot.common.push.bean.neo4j.*;
|
|
@@ -816,9 +817,9 @@ public class Neo4jAPI {
|
|
|
/**
|
|
|
* 不良反应推送
|
|
|
*/
|
|
|
- public Set<String> getUe(String[] keys) {
|
|
|
+ public Map<String,String> getUe(String[] keys) {
|
|
|
//查找不良反应推送
|
|
|
- Set<String> indSet = new HashSet<>();
|
|
|
+ Map<String,String> indSet = new HashMap<>();
|
|
|
List<String> newList = new ArrayList<>();
|
|
|
List<String> fildList = new ArrayList<>();
|
|
|
List<String> startList = new ArrayList<>();
|
|
@@ -862,7 +863,8 @@ public class Neo4jAPI {
|
|
|
while (result.hasNext()) {
|
|
|
Record record = result.next();
|
|
|
String indName = record.get("name").toString().replace("\"", "");
|
|
|
- indSet.add(indName);
|
|
|
+ String tr = record.get("tr").toString().replace("\"", "");//类型
|
|
|
+ indSet.put(indName,tr);
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
@@ -987,7 +989,7 @@ public class Neo4jAPI {
|
|
|
* @param filds // * @param sign 标志,2是平常诊断的治疗,0是复诊诊断的治疗,1是急诊
|
|
|
* @return
|
|
|
*/
|
|
|
- public Map<String, Filnlly> getMulDiseaseTreat_2(String disName, String disease, Integer diseaseType, Set<String> disSet, Map<String, List<String>> disUE, Set<String> ueSet, String filds) {
|
|
|
+ public Map<String, Filnlly> getMulDiseaseTreat_2(String disName, String disease, Integer diseaseType, Set<String> disSet, Map<String, List<String>> disUE, Map<String,String> ueSet, String filds) {
|
|
|
Map<String, Filnlly> diagTreat = new HashMap<>();
|
|
|
Session session = null;
|
|
|
NumberFormat nf = NumberFormat.getPercentInstance();
|
|
@@ -1189,7 +1191,7 @@ public class Neo4jAPI {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public Map<String, Filnlly> getMulDiseaseTreat_new(String disName, String disease, Integer diseaseType, Set<String> disSet, Map<String, List<String>> disUE, Set<String> ueSet, String filds) {
|
|
|
+ public Map<String, Filnlly> getMulDiseaseTreat_new(String disName, String disease, Integer diseaseType, Set<String> disSet, Map<String, List<String>> disUE, Map<String,String> ueSet, String filds) {
|
|
|
Map<String, Filnlly> newTret = new HashMap<>();
|
|
|
Session session = null;
|
|
|
Map<String, ArrayList> diseFilds = getdisFilds(disName, disease, disSet, ueSet, filds);
|
|
@@ -1324,7 +1326,7 @@ public class Neo4jAPI {
|
|
|
* @param filds
|
|
|
* @return
|
|
|
*/
|
|
|
- private Map<String, ArrayList> getdisFilds(String disName, String disease, Set<String> disSet, Set<String> ueSet, String filds) {
|
|
|
+ private Map<String, ArrayList> getdisFilds(String disName, String disease, Set<String> disSet, Map<String,String> ueSet, String filds) {
|
|
|
String[] diseaseArray = disease.split(",|,|、|;|:|;");
|
|
|
List<String> diseaseList = new ArrayList<>();//诊断数组
|
|
|
for (int i = 0; i < diseaseArray.length; i++) {
|
|
@@ -1341,8 +1343,17 @@ public class Neo4jAPI {
|
|
|
fildsList.add("\'" + yizhen + "\'");
|
|
|
}
|
|
|
}
|
|
|
- for (String h : ueSet) {
|
|
|
- fildsList.add("\'" + h + "\'");
|
|
|
+ if(ueSet!= null && ueSet.size()>0){
|
|
|
+ for(Map.Entry<String,String> d:ueSet.entrySet()){
|
|
|
+ String ue = d.getKey();
|
|
|
+ String value = d.getValue();
|
|
|
+ if(StringUtils.isNotEmpty(value) && !"".equals("可能有")){
|
|
|
+ fildsList.add("\'" +value+ ue + "\'");
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotEmpty(value) && "".equals("可能有")){
|
|
|
+ fildsList.add("\'" + ue + "\'");
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
diseFilds.put(disName, fildsList);
|
|
|
return diseFilds;
|
|
@@ -1762,37 +1773,29 @@ public class Neo4jAPI {
|
|
|
|
|
|
}
|
|
|
|
|
|
- public Indicators getAdverse(Set<String> dis, String name) {
|
|
|
+ public Indicators getAdverse(Map<String,String> dis, String name) {
|
|
|
+ String[] item={"无","可能有","轻度","中度","重度"};
|
|
|
+ Indicators indicators = new Indicators();
|
|
|
+ indicators.setName(name);
|
|
|
+ indicators.setControlType(2);
|
|
|
List<Detail> detailList1 = new ArrayList<>();
|
|
|
- Indicators indicators1 = new Indicators();
|
|
|
- indicators1.setName(name);
|
|
|
- indicators1.setControlType(2);
|
|
|
- Detail detail1 = new Detail();
|
|
|
- detail1.setName("无");
|
|
|
- detail1.setValue(0);
|
|
|
- Detail detail2 = new Detail();
|
|
|
- detail2.setName("可能有");
|
|
|
- detail2.setValue(0);
|
|
|
- if (dis.contains(name)) {
|
|
|
- detail2.setValue(1);
|
|
|
+ for (String it:item) {
|
|
|
+ Detail detail = new Detail();
|
|
|
+ detail.setName(it);
|
|
|
+ if(dis != null && dis.size()>0){
|
|
|
+ if(dis.containsKey(name) && dis.get(name).equals(it)){
|
|
|
+ detail.setValue(1);
|
|
|
+ }else {
|
|
|
+ detail.setValue(0);
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ detail.setValue(0);
|
|
|
+ }
|
|
|
+ detailList1.add(detail);
|
|
|
+
|
|
|
}
|
|
|
- logger.info("有" + name + " 标记为是!!!!");
|
|
|
- Detail detail3 = new Detail();
|
|
|
- detail3.setName("轻度");
|
|
|
- detail3.setValue(0);
|
|
|
- Detail detail4 = new Detail();
|
|
|
- detail4.setName("中度");
|
|
|
- detail4.setValue(0);
|
|
|
- Detail detail5 = new Detail();
|
|
|
- detail5.setName("重度");
|
|
|
- detail5.setValue(0);
|
|
|
- detailList1.add(detail1);
|
|
|
- detailList1.add(detail2);
|
|
|
- detailList1.add(detail3);
|
|
|
- detailList1.add(detail4);
|
|
|
- detailList1.add(detail5);
|
|
|
- indicators1.setDetails(detailList1);
|
|
|
- return indicators1;
|
|
|
+ indicators.setDetails(detailList1);
|
|
|
+ return indicators;
|
|
|
}
|
|
|
|
|
|
|