Browse Source

1、辅检静态知识检索

zhaops 4 năm trước cách đây
mục cha
commit
bfd322be97
1 tập tin đã thay đổi với 13 bổ sung16 xóa
  1. 13 16
      src/main/java/com/diagbot/repository/PacsNameRepository.java

+ 13 - 16
src/main/java/com/diagbot/repository/PacsNameRepository.java

@@ -52,44 +52,41 @@ public interface PacsNameRepository extends Neo4jRepository<PacsName, Long> {
     List<PacsName> index(@Param("name") String name, @Param("pycode") String pycode, @Param("size") Integer size);
 
     //检索不区分辅助检查名称和辅助检查子项目名称
-    @Query("MATCH (n) WHERE any(label in labels(n) WHERE label in ['辅助检查名称', '辅助检查子项目名称'])\n" +
-            "AND toLower(n.`name`) = toLower($name) \n" +
-            "OR toLower(n.`拼音编码`) = toLower($pycode)  \n" +
+    @Query("MATCH (n) WHERE (n :辅助检查名称 OR n :辅助检查子项目名称) \n" +
+            "AND (toLower(n.`name`) = toLower($name) OR toLower(n.`拼音编码`) = toLower($pycode))  \n" +
             "RETURN labels(n) as labels,n.name as name\n" +
             "union\n" +
-            "MATCH (n) WHERE any(label in labels(n) WHERE label in ['辅助检查名称', '辅助检查子项目名称'])\n" +
-            "AND toLower(n.`name`) starts with toLower($name) \n" +
-            "OR toLower(n.`拼音编码`) starts with toLower($pycode)  \n" +
+            "MATCH (n) WHERE (n :辅助检查名称 OR n :辅助检查子项目名称)\n" +
+            "AND (toLower(n.`name`) starts with toLower($name) OR toLower(n.`拼音编码`) starts with toLower($pycode))  \n" +
             "WITH n SKIP 0 LIMIT $size\n" +
             "RETURN labels(n) as labels,n.name as name\n" +
             "union\n" +
-            "MATCH (n) WHERE any(label in labels(n) WHERE label in ['辅助检查名称', '辅助检查子项目名称'])\n" +
-            "AND toLower(n.`name`) CONTAINS toLower($name) \n" +
-            "OR toLower(n.`拼音编码`) CONTAINS toLower($pycode)  \n" +
+            "MATCH (n) WHERE (n :辅助检查名称 OR n :辅助检查子项目名称)\n" +
+            "AND (toLower(n.`name`) CONTAINS toLower($name) OR toLower(n.`拼音编码`) CONTAINS toLower($pycode))  \n" +
             "WITH n SKIP 0 LIMIT $size\n" +
             "RETURN labels(n) as labels,n.name as name\n")
-    List<BaseNodeInfo> indexIgnoreLabel(@Param("name") String name, @Param("pycode") String pycode, @Param("size") Integer size);
+    List<BaseNodeInfo> indexMultipleLabel(@Param("name") String name, @Param("pycode") String pycode, @Param("size") Integer size);
 
-    @Query("MATCH (n) WHERE any(label in labels(n) WHERE label in ['辅助检查名称', '辅助检查子项目名称'])\n" +
+    @Query("MATCH (n) WHERE (n :辅助检查名称 OR n :辅助检查子项目名称)\n" +
             "AND n.`静态知识标识` = $isKL \n" +
             "AND (toLower(n.`name`) = toLower($name)  OR  toLower(n.`拼音编码`) = toLower($pycode))\n" +
             "RETURN labels(n) as labels,n.name as name\n" +
             "UNION\n" +
-            "MATCH (n) WHERE any(label in labels(n) WHERE label in ['辅助检查名称', '辅助检查子项目名称'])\n" +
+            "MATCH (n) WHERE (n :辅助检查名称 OR n :辅助检查子项目名称)\n" +
             "AND n.`静态知识标识` = $isKL \n" +
             "AND (toLower(n.`name`) STARTS WITH toLower($name) OR toLower(n.`拼音编码`) STARTS WITH toLower($pycode))\n" +
             "WITH n SKIP 0 LIMIT $size\n" +
             "RETURN labels(n) as labels,n.name as name\n" +
             "UNION \n" +
-            "MATCH (n) WHERE any(label in labels(n) WHERE label in ['辅助检查名称', '辅助检查子项目名称'])\n" +
+            "MATCH (n) WHERE (n :辅助检查名称 OR n :辅助检查子项目名称)\n" +
             "AND n.`静态知识标识` = $isKL  \n" +
             "AND (toLower(n.`name`) CONTAINS toLower($name) OR toLower(n.`拼音编码`) CONTAINS toLower($pycode))  \n" +
             "WITH n SKIP 0 LIMIT $size\n" +
             "RETURN labels(n) as labels,n.name as name\n")
-    List<BaseNodeInfo> staticKnowledgeIndexIgnoreLabel(@Param("isKL") Integer isKL, @Param("name") String name, @Param("pycode") String pycode, @Param("size") Integer size);
+    List<BaseNodeInfo> staticKnowledgeIndexMultipleLabel(@Param("isKL") Integer isKL, @Param("name") String name, @Param("pycode") String pycode, @Param("size") Integer size);
 
-    @Query("MATCH (n) WHERE any(label in labels(n) WHERE label in ['辅助检查名称', '辅助检查子项目名称'])\n" +
+    @Query("MATCH (n) WHERE (n :辅助检查名称 OR n :辅助检查子项目名称)\n" +
             "and n.`name` IN  $names  \n" +
             "RETURN labels(n) as labels,n.name as name\n")
-    List<BaseNodeInfo> findByNameInIgnoreLabel(@Param("names") List<String> names);
+    List<BaseNodeInfo> findByNameInMultipleLabel(@Param("names") List<String> names);
 }