|
@@ -653,13 +653,29 @@ public class Neo4jAPI {
|
|
|
String query = "";
|
|
|
try {
|
|
|
session = driver.session(AccessMode.WRITE);
|
|
|
-// query = propertiesUtil.getProperty("serchCollect").replace("fildList",fildList);
|
|
|
- //判断是否有近义词
|
|
|
+ query = propertiesUtil.getProperty("serchCollect").replace("fildList",fildList.toString());
|
|
|
+ result = session.run(query);
|
|
|
+ while (result.hasNext()){
|
|
|
+ Record record = result.next();
|
|
|
+ String fild = record.get("fild").toString();
|
|
|
+ List<Object> typeCollect = record.get("typeCollect").asList();
|
|
|
+ //如果不包含诊断依据就找它的同义词,否则就要这个词
|
|
|
+ if("近义词".equals(typeCollect.get(0)) && typeCollect.size() ==1){
|
|
|
+ query = "match(l)-[r:近义词]->(h) where l.name="+fild+" return h.name as js";
|
|
|
+ StatementResult jinyiResult = session.run(query);
|
|
|
+ while (jinyiResult.hasNext()){
|
|
|
+ Record next = jinyiResult.next();
|
|
|
+ String js = next.get("js").toString();
|
|
|
+ fildList.remove(fild);
|
|
|
+ fildList.add(js);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+/* //判断是否有近义词
|
|
|
query = "match (l)-[r:近义词]->(m)\n" +
|
|
|
"where l.name in " + fildList + "\n" +
|
|
|
"return l.name as zi,type(r),m.name as fu";
|
|
|
-// System.out.println("近义词语句:");
|
|
|
-// System.out.println(query);
|
|
|
result = session.run(query);
|
|
|
while (result.hasNext()) {
|
|
|
Record record = result.next();
|
|
@@ -667,7 +683,7 @@ public class Neo4jAPI {
|
|
|
String d = record.get("fu").toString();
|
|
|
fildList.remove(c);
|
|
|
fildList.add(d);
|
|
|
- }
|
|
|
+ }*/
|
|
|
// System.out.println("参与计算的词:"+fildList);
|
|
|
newList.addAll(fildList);
|
|
|
int i = 0;
|
|
@@ -701,9 +717,6 @@ public class Neo4jAPI {
|
|
|
"where n.name=row\n" +
|
|
|
"with distinct m,r\n" +
|
|
|
"return m.name as name, labels(m)[0] as label,type(r) as relationType";
|
|
|
-// System.out.println("查询确诊和拟诊:");
|
|
|
-// System.out.println(query);
|
|
|
-
|
|
|
result = session.run(query);
|
|
|
while (result.hasNext()) {
|
|
|
Record record = result.next();
|