|
@@ -1043,6 +1043,48 @@ public class Neo4jAPI {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 获取每个慢病对应的不良反应
|
|
|
|
+ * @param webDiagArray
|
|
|
|
+ * @param diseaseType
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ public Map<String,List<String>> getDisUE(String[] webDiagArray,Integer diseaseType){
|
|
|
|
+ Session session = null;
|
|
|
|
+ Map<String,List<String>> disUE = new HashMap<>();
|
|
|
|
+ List<String> webDiagList = new ArrayList<>();
|
|
|
|
+ if(diseaseType != null && 1 == diseaseType){
|
|
|
|
+ for (String dis:webDiagArray) {
|
|
|
|
+ if(!"".equals(dis)){
|
|
|
|
+ webDiagList.add("\""+dis+"\"");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ session = driver.session(AccessMode.WRITE);
|
|
|
|
+ session.writeTransaction(new TransactionWork<Integer>() {
|
|
|
|
+ @Override
|
|
|
|
+ public Integer execute(Transaction tx) {
|
|
|
|
+ StatementResult result = null;
|
|
|
|
+ String query = "";
|
|
|
|
+ query = "match(d:Disease)-[r:不良反应]->(u:UntowardEffect) where d.name in "+webDiagList+" \n" +
|
|
|
|
+ "return d.name as dis,collect(u.name) as ueCollect";
|
|
|
|
+ result = tx.run(query);
|
|
|
|
+ while (result.hasNext()){
|
|
|
|
+ Record next = result.next();
|
|
|
|
+ String dis = next.get("dis").toString().replace("\"", "");
|
|
|
|
+ List<Object> stringList = next.get("ueCollect").asList();
|
|
|
|
+ List<String> ueList = new ArrayList<>();
|
|
|
|
+ for (Object o:stringList) {
|
|
|
|
+ ueList.add(o.toString().replace("\"",""));
|
|
|
|
+ }
|
|
|
|
+ disUE.put(dis,ueList);
|
|
|
|
+ }
|
|
|
|
+ return 1;
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ CloseSession(session);
|
|
|
|
+ return disUE;
|
|
|
|
+ }
|
|
/**
|
|
/**
|
|
* 第二版治疗方案
|
|
* 第二版治疗方案
|
|
*
|
|
*
|