Переглянути джерело

图形数据库后台服务标准接口

MarkHuang 6 роки тому
батько
коміт
50004a6554

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/Cause.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "Cause")
+@Getter
+@Setter
+public class Cause extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 23 - 0
graphdb/src/main/java/org/diagbot/entity/node/Condition.java

@@ -0,0 +1,23 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "Condition")
+@Getter
+@Setter
+public class Condition extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+    @Property(name = "path")
+    private String path;
+
+    @Property(name = "relation")
+    private String relation;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/Drugs.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "Drugs")
+@Getter
+@Setter
+public class Drugs extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/History.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "History")
+@Getter
+@Setter
+public class History extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/LIS.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "LIS")
+@Getter
+@Setter
+public class LIS extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/LISResult.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "LISResult")
+@Getter
+@Setter
+public class LISResult extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/Medicine.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "Medicine")
+@Getter
+@Setter
+public class Medicine extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/PACS.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "PACS")
+@Getter
+@Setter
+public class PACS extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/PACSResult.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "PACSResult")
+@Getter
+@Setter
+public class PACSResult extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/Symptom.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "Symptom")
+@Getter
+@Setter
+public class Symptom extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 17 - 0
graphdb/src/main/java/org/diagbot/entity/node/Vital.java

@@ -0,0 +1,17 @@
+package org.diagbot.entity.node;
+
+import org.diagbot.entity.node.base.BaseNode;
+import lombok.Getter;
+import lombok.Setter;
+import org.neo4j.ogm.annotation.NodeEntity;
+import org.neo4j.ogm.annotation.Property;
+
+@NodeEntity(label = "Vital")
+@Getter
+@Setter
+public class Vital extends BaseNode {
+
+    @Property(name = "name")
+    private String name;
+
+}

+ 11 - 0
graphdb/src/main/java/org/diagbot/repository/BaseNodeRepository.java

@@ -0,0 +1,11 @@
+package org.diagbot.repository;
+
+import org.diagbot.entity.node.base.BaseNode;
+import org.springframework.data.neo4j.annotation.Query;
+import org.springframework.data.neo4j.repository.Neo4jRepository;
+
+public interface BaseNodeRepository extends Neo4jRepository<BaseNode, Long> {
+    // update Node by Name
+    @Query("MATCH (n) WHERE ID(n) = {0} SET n.name = {2} RETURN n")
+    BaseNode updateNodeByName(int id, String old_name, String new_name);
+}

+ 10 - 0
graphdb/src/main/java/org/diagbot/repository/LISRepository.java

@@ -0,0 +1,10 @@
+package org.diagbot.repository;
+
+import org.diagbot.entity.node.LIS;
+import org.springframework.data.neo4j.repository.Neo4jRepository;
+
+import java.util.List;
+
+public interface LISRepository extends Neo4jRepository<LIS, Long> {
+    List<LIS> findByNameContaining(String token);
+}

+ 13 - 0
graphdb/src/main/java/org/diagbot/service/PathService.java

@@ -0,0 +1,13 @@
+package org.diagbot.service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 处理路径
+ * @author: Mark Huang
+ * @time: 2019/4/4 10:51
+ */
+public interface PathService {
+    List<Map<String, Object>> extractPath(Iterable<Map<String, Object>> path);
+}

+ 41 - 0
graphdb/src/main/java/org/diagbot/vo/AmendRelationVo.java

@@ -0,0 +1,41 @@
+package org.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description: AmendRelation
+ * @author: Mark Huang
+ * @Time: 2019/04/04 :13:20
+ *
+ */
+@Getter
+@Setter
+public class AmendRelationVo {
+    @NotNull(message = "请输入原始节点ID")
+    private int id;
+
+    @NotNull(message = "请输入原始节点名称")
+    private String old_start_name;
+
+    @NotNull(message = "请输入原始节点类型")
+    private String old_start_type;
+
+    private String old_rel_name;
+
+    private String new_rel_name;
+
+    private String new_start_name;
+
+    private String new_start_type;
+
+    private String old_end_name;
+
+    private String old_end_type;
+
+    private String new_end_name;
+
+    private String new_end_type;
+}

+ 22 - 0
graphdb/src/main/java/org/diagbot/vo/PageVo.java

@@ -0,0 +1,22 @@
+package org.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description: query Sorting and Paging
+ * @author: Mark Huang
+ * @Time: 2019/04/01 :10:10
+ *
+ */
+@Getter
+@Setter
+public class PageVo {
+    private int current;
+
+    private int size;
+
+    private String sort_key;
+
+    private String sort_direct;
+}

+ 19 - 0
graphdb/src/main/java/org/diagbot/vo/QueryVo.java

@@ -0,0 +1,19 @@
+package org.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+ * @Description: 业务查询
+ * @author: Mark Huang
+ * @Time: 2019/04/04 :15:14
+ *
+ */
+@Getter
+@Setter
+public class QueryVo {
+    private List<String> diseaselist;
+}

+ 30 - 0
graphdb/src/main/java/org/diagbot/vo/RelationVo.java

@@ -0,0 +1,30 @@
+package org.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description: Relation
+ * @author: Mark Huang
+ * @Time: 2019/04/01 :10:10
+ *
+ */
+@Getter
+@Setter
+public class RelationVo {
+    @NotNull(message = "请输入起始节点名称")
+    private String start_name;
+
+    @NotNull(message = "请输入起始节点类型")
+    private String start_type;
+
+    private String rel_name;
+
+    private int rel_level;
+
+    private String end_name;
+
+    private String end_type;
+}