|
@@ -22,32 +22,36 @@ public interface MedicineRepository extends Neo4jRepository<Medicine, Long> {
|
|
|
|
|
|
@Query("match (n:药品通用名称)<-[r1:药品相关药品通用名称]-(m:药品代码通用名)-[r2:药品相关药品注册名称]->(o:药品注册名称) where n.name={name} return distinct o.name")
|
|
|
List<String> findMedRegNamebyMedicine(@Param("name") String name);
|
|
|
+
|
|
|
Page<Medicine> findByNameContainingIgnoreCaseOrPycodeContainingIgnoreCase(String name, String pycode, Pageable pageable);
|
|
|
|
|
|
- @Query("MATCH (n:`药品通用名称`)-[r]-(m) WHERE n.`静态知识标识` = $isKL \n" +
|
|
|
+ @Query("MATCH (n:`药品通用名称`) WHERE n.`静态知识标识` = $isKL \n" +
|
|
|
"AND (toLower(n.`name`) = toLower($name) OR toLower(n.`拼音编码`) = toLower($pycode))\n" +
|
|
|
- "RETURN n, collect(r), collect(m)\n" +
|
|
|
+ "RETURN n,[ (n)-[r]->(m) | [ r, m ] ], ID(n)\n" +
|
|
|
"UNION\n" +
|
|
|
- "MATCH (n:`药品通用名称`)-[r]-(m) WHERE n.`静态知识标识` = $isKL \n" +
|
|
|
+ "MATCH (n:`药品通用名称`) WHERE n.`静态知识标识` = $isKL \n" +
|
|
|
"AND (toLower(n.`name`) STARTS WITH toLower($name) OR toLower(n.`拼音编码`) STARTS WITH toLower($pycode))\n" +
|
|
|
- "RETURN n, collect(r), collect(m) limit $size\n" +
|
|
|
+ "WITH n SKIP 0 LIMIT $size\n" +
|
|
|
+ "RETURN n,[ (n)-[r]->(m) | [ r, m ] ], ID(n)\n" +
|
|
|
"UNION \n" +
|
|
|
- "MATCH (n:`药品通用名称`)-[r]-(m) WHERE n.`静态知识标识` = $isKL \n" +
|
|
|
+ "MATCH (n:`药品通用名称`) WHERE n.`静态知识标识` = $isKL \n" +
|
|
|
"AND (toLower(n.`name`) CONTAINS toLower($name) OR toLower(n.`拼音编码`) CONTAINS toLower($pycode)) \n" +
|
|
|
- "RETURN n, collect(r), collect(m) limit $size")
|
|
|
+ "WITH n SKIP 0 LIMIT $size\n" +
|
|
|
+ "RETURN n,[ (n)-[r]->(m) | [ r, m ] ], ID(n)\n")
|
|
|
List<Medicine> staticKnowledgeIndex(@Param("isKL") Integer isKL, @Param("name") String name, @Param("pycode") String pycode, @Param("size") Integer size);
|
|
|
|
|
|
- @Query("MATCH (n:`药品通用名称`)-[r]-(m) WHERE toLower(n.`name`) = toLower($name) \n" +
|
|
|
+ @Query("MATCH (n:`药品通用名称`) WHERE toLower(n.`name`) = toLower($name) \n" +
|
|
|
"OR toLower(n.`拼音编码`) = toLower($pycode) \n" +
|
|
|
- "RETURN n, collect(r), collect(m)\n" +
|
|
|
+ "RETURN n,[ (n)-[r]->(m) | [ r, m ] ], ID(n)\n" +
|
|
|
"union\n" +
|
|
|
- "MATCH (n:`药品通用名称`)-[r]-(m) WHERE toLower(n.`name`) starts with toLower($name) \n" +
|
|
|
+ "MATCH (n:`药品通用名称`) WHERE toLower(n.`name`) starts with toLower($name) \n" +
|
|
|
"OR toLower(n.`拼音编码`) starts with toLower($pycode) \n" +
|
|
|
- "RETURN n, collect(r), collect(m) limit 100\n" +
|
|
|
+ "WITH n SKIP 0 LIMIT $size\n" +
|
|
|
+ "RETURN n,[ (n)-[r]->(m) | [ r, m ] ], ID(n)\n" +
|
|
|
"union\n" +
|
|
|
- "MATCH (n:`药品通用名称`)-[r]-(m) WHERE toLower(n.`name`) CONTAINS toLower($name) \n" +
|
|
|
+ "MATCH (n:`药品通用名称`) WHERE toLower(n.`name`) CONTAINS toLower($name) \n" +
|
|
|
"OR toLower(n.`拼音编码`) CONTAINS toLower($pycode) \n" +
|
|
|
- "RETURN n, collect(r), collect(m) limit $size")
|
|
|
+ "WITH n SKIP 0 LIMIT $size\n" +
|
|
|
+ "RETURN n,[ (n)-[r]->(m) | [ r, m ] ], ID(n)\n")
|
|
|
List<Medicine> index(@Param("name") String name, @Param("pycode") String pycode, @Param("size") Integer size);
|
|
|
}
|
|
|
-
|