Преглед на файлове

更新图谱实体及范围查询的方法

MarkHuang преди 4 години
родител
ревизия
0307719199

+ 3 - 0
src/main/java/com/diagbot/entity/node/ClinicalFinding.java

@@ -25,6 +25,9 @@ public class ClinicalFinding extends BaseNode  {
     @Property(name = "单位")
     private String unit;
 
+    @Property(name = "范围")
+    private Integer range;
+
     @Relationship(type="药品通用名禁忌临床表现", direction = Relationship.INCOMING)
     private Set<Medicine> medicines;
 

+ 3 - 0
src/main/java/com/diagbot/entity/node/LIS.java

@@ -30,6 +30,9 @@ public class LIS extends BaseNode  {
     @Property(name = "单位")
     private String unit;
 
+    @Property(name = "范围")
+    private Integer range;
+
     @Relationship(type="实验室检查项目相关套餐", direction = Relationship.OUTGOING)
     private Set<LISPack> lisPacks = new HashSet<>();
 

+ 83 - 14
src/main/java/com/diagbot/repository/LisNode.java

@@ -6,12 +6,10 @@ import com.diagbot.entity.node.*;
 import com.diagbot.util.NeoUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.CriticalNeoVO;
+import com.diagbot.vo.NeoEntityVO;
 
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
 
 public class LisNode {
 
@@ -21,7 +19,7 @@ public class LisNode {
 
 		Gender gender = lis.getGender();
 		if (null!=gender) {
-			lisBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null));
+			lisBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null, null));
 		}
 
 
@@ -40,7 +38,8 @@ public class LisNode {
 			BigDecimal min = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMinval());
 			BigDecimal max = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMaxval());
 			String unit = clinicalfinding.getUnit();
-			lisBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+			Integer range = clinicalfinding.getRange();
+			lisBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
 		}
 
 		Set<Vital> vitals = lis.getVitals();
@@ -49,31 +48,32 @@ public class LisNode {
 			BigDecimal min = NeoUtil.DoubletoBigDecimal(vital.getMinval());
 			BigDecimal max = NeoUtil.DoubletoBigDecimal(vital.getMaxval());
 			String unit = vital.getUnit();
-			lisBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+			Integer range = vital.getRange();
+			lisBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
 		}
 
 		Set<Medicine> conflict_medicines = lis.getConflict_medicines();
 		for (Medicine conflict_medicine : conflict_medicines) {
 			String name = conflict_medicine.getName();
-			lisBillNeoDTO.getOralmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getOralmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<AllergicMed> allergicmeds = lis.getAllergicmeds();
 		for (AllergicMed allergicmed : allergicmeds) {
 			String name = allergicmed.getName();
-			lisBillNeoDTO.getAllergicmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getAllergicmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<Operation> operations = lis.getOperations();
 		for (Operation operation : operations) {
 			String name = operation.getName();
-			lisBillNeoDTO.getOperations().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getOperations().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<Procedure> procedures = lis.getProcedures();
 		for (Procedure procedure : procedures) {
 			String name = procedure.getName();
-			lisBillNeoDTO.getProcedures().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getProcedures().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<PACS> pacss = lis.getPacs();
@@ -83,19 +83,19 @@ public class LisNode {
 //			BigDecimal max = pacs.getMaxval();
 //			String unit = pacs.getUnit();
 //			lisBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, min, max, unit));
-			lisBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<Disease> diseases = lis.getDiseases();
 		for (Disease disease : diseases) {
 			String name = disease.getName();
-			lisBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<Group> groups = lis.getGroups();
 		for (Group group : groups) {
 			String name = group.getName();
-			lisBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 
@@ -244,5 +244,74 @@ public class LisNode {
 
 		return lislist;
 	}
+
+
+	/**
+	 * 更新实体属性信息
+	 */
+	public NeoEntityDTO updateEntity(String name, Map<String, String> props, List<String> keys, LisRepository lisRepository) {
+		NeoEntityDTO neoEntityDTO = new NeoEntityDTO();
+		neoEntityDTO.setName(name);
+
+		try {
+			List<LIS> lisres = lisRepository.findByNameIs(name);
+
+			if (lisres!= null && lisres.size()>0) {
+				LIS lis = lisres.get(0);
+
+				for (String key : props.keySet()) {
+					switch (key) {
+						case "最大值":
+							lis.setMaxval(Double.parseDouble(props.get(key)));
+							break;
+						case "最小值":
+							lis.setMinval(Double.parseDouble(props.get(key)));
+							break;
+						case "单位":
+							lis.setUnit(props.get(key));
+							break;
+					}
+				}
+
+				lis = lisRepository.save(lis);
+
+				neoEntityDTO = fillNeoDTO(lis, keys);
+			}
+		}
+		catch (Exception ex) {
+			ex.printStackTrace();
+		}
+
+		return neoEntityDTO;
+	}
+
+
+	private NeoEntityDTO fillNeoDTO(LIS lis, List<String> keys) {
+		NeoEntityDTO neoEntityDTO = new NeoEntityDTO();
+		Map<String, String> props = new HashMap<>();
+		String val;
+
+		neoEntityDTO.setName(lis.getName());
+		for (String key:keys) {
+			val = "";
+			switch(key) {
+				case "最大值":
+					val = (lis.getMaxval()==null)?"":String.format("%.2f",lis.getMaxval());
+					break;
+				case "最小值":
+					val = (lis.getMinval()==null)?"":String.format("%.2f", lis.getMinval());
+					break;
+				case "单位":
+					val = lis.getUnit();
+					break;
+			}
+			if (StringUtil.isNotBlank(val)) {
+				props.put(key, val);
+			}
+		}
+		neoEntityDTO.setProperty(props);
+
+		return neoEntityDTO;
+	}
 }
 

+ 10 - 9
src/main/java/com/diagbot/repository/LisPackNode.java

@@ -18,7 +18,7 @@ public class LisPackNode {
 
 		Gender gender = lispack.getGender();
 		if (null!=gender) {
-			lisBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null));
+			lisBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null, null));
 		}
 
 
@@ -37,31 +37,32 @@ public class LisPackNode {
 			BigDecimal min = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMinval());
 			BigDecimal max = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMaxval());
 			String unit = clinicalfinding.getUnit();
-			lisBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+			Integer range = clinicalfinding.getRange();
+			lisBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
 		}
 
 		Set<Medicine> conflict_medicines = lispack.getConflict_medicines();
 		for (Medicine conflict_medicine : conflict_medicines) {
 			String name = conflict_medicine.getName();
-			lisBillNeoDTO.getOralmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getOralmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<AllergicMed> allergicmeds = lispack.getAllergicmeds();
 		for (AllergicMed allergicmed : allergicmeds) {
 			String name = allergicmed.getName();
-			lisBillNeoDTO.getAllergicmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getAllergicmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<Operation> operations = lispack.getOperations();
 		for (Operation operation : operations) {
 			String name = operation.getName();
-			lisBillNeoDTO.getOperations().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getOperations().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<Procedure> procedures = lispack.getProcedures();
 		for (Procedure procedure : procedures) {
 			String name = procedure.getName();
-			lisBillNeoDTO.getProcedures().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getProcedures().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<PACS> pacss = lispack.getPacs();
@@ -71,19 +72,19 @@ public class LisPackNode {
 //			BigDecimal max = pacs.getMaxval();
 //			String unit = pacs.getUnit();
 //			lisBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, min, max, unit));
-			lisBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<Disease> diseases = lispack.getDiseases();
 		for (Disease disease : diseases) {
 			String name = disease.getName();
-			lisBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 		Set<Group> groups = lispack.getGroups();
 		for (Group group : groups) {
 			String name = group.getName();
-			lisBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null));
+			lisBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
 		}
 
 

+ 4 - 0
src/main/java/com/diagbot/repository/LisRepository.java

@@ -1,6 +1,7 @@
 package com.diagbot.repository;
 
 import com.diagbot.entity.node.LIS;
+import org.springframework.data.neo4j.annotation.Query;
 import org.springframework.data.neo4j.repository.Neo4jRepository;
 
 import java.util.List;
@@ -11,5 +12,8 @@ public interface LisRepository extends Neo4jRepository<LIS, Long> {
     List<LIS> findByNameIs(String name);
 
     List<LIS> findByNameLike(String name);
+
+    @Query("MATCH (n:实验室检查) RETURN DISTINCT(KEYS(n))")
+    List<List<String>> getKeys();
 }
 

+ 14 - 11
src/main/java/com/diagbot/repository/MedicineNode.java

@@ -27,7 +27,7 @@ public class MedicineNode {
 
         Gender gender = medicine.getGender();
         if (gender!=null) {
-            drugBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null));
+            drugBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null, null));
         }
 
 
@@ -37,7 +37,8 @@ public class MedicineNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMaxval());
             String unit = clinicalfinding.getUnit();
-            drugBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = clinicalfinding.getRange();
+            drugBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
 
@@ -47,7 +48,8 @@ public class MedicineNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(vital.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(vital.getMaxval());
             String unit = vital.getUnit();
-            drugBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = vital.getRange();
+            drugBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
 
@@ -57,7 +59,8 @@ public class MedicineNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(lis.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(lis.getMaxval());
             String unit = lis.getUnit();
-            drugBillNeoDTO.getLis().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = lis.getRange();
+            drugBillNeoDTO.getLis().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
 
@@ -68,49 +71,49 @@ public class MedicineNode {
 //            BigDecimal max = pacs.getMaxval();
 //            String unit = pacs.getUnit();
 //            drugBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, min, max, unit));
-            drugBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            drugBillNeoDTO.getPacs().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
 
         Set<AllergicMed> allergicmeds = medicine.getAllergicmeds();
         for (AllergicMed allergicmed: allergicmeds) {
             String name = allergicmed.getName();
-            drugBillNeoDTO.getAllergicmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            drugBillNeoDTO.getAllergicmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
 
         Set<Operation> operations = medicine.getOperations();
         for (Operation operation : operations) {
             String name = operation.getName();
-            drugBillNeoDTO.getOperations().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            drugBillNeoDTO.getOperations().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
 
         Set<Procedure> procedures = medicine.getProcedures();
         for (Procedure procedure : procedures) {
             String name = procedure.getName();
-            drugBillNeoDTO.getProcedures().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            drugBillNeoDTO.getProcedures().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
 
         Set<Disease> diseases = medicine.getDiseases();
         for (Disease disease : diseases) {
             String name = disease.getName();
-            drugBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            drugBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
 
         Set<Group> groups = medicine.getGroups();
         for (Group group : groups) {
             String name = group.getName();
-            drugBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            drugBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
 
         Set<ConflictMed> conflict_medicines = medicine.getConflictmeds();
         for (ConflictMed conflict_medicine : conflict_medicines) {
             String name = conflict_medicine.getName();
-            drugBillNeoDTO.getConflictmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            drugBillNeoDTO.getConflictmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
 

+ 10 - 7
src/main/java/com/diagbot/repository/OperationNode.java

@@ -23,7 +23,7 @@ public class OperationNode {
 
         Gender gender = operation.getGender();
         if (null!=gender) {
-            opBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null));
+            opBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null, null));
         }
 
         Set<ClinicalFinding> clinicalfindings = operation.getClinicalFindings();
@@ -32,7 +32,8 @@ public class OperationNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMaxval());
             String unit = clinicalfinding.getUnit();
-            opBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = clinicalfinding.getRange();
+            opBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
         Set<Vital> vitals = operation.getVitals();
@@ -41,7 +42,8 @@ public class OperationNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(vital.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(vital.getMaxval());
             String unit = vital.getUnit();
-            opBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = vital.getRange();
+            opBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
         Set<LIS> lisSet = operation.getConflict_lis();
@@ -50,25 +52,26 @@ public class OperationNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(lis.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(lis.getMaxval());
             String unit = lis.getUnit();
-            opBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = lis.getRange();
+            opBillNeoDTO.getLis().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
         Set<OralMedicine> conflict_oralmeds = operation.getOralMedicines();
         for (OralMedicine conflict_oralmed : conflict_oralmeds) {
             String name = conflict_oralmed.getName();
-            opBillNeoDTO.getConflictmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            opBillNeoDTO.getConflictmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
         Set<Disease> conflict_disease = operation.getDiseases();
         for (Disease disease : conflict_disease) {
             String name = disease.getName();
-            opBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            opBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
         Set<Group> conflict_group = operation.getGroups();
         for (Group group : conflict_group) {
             String name = group.getName();
-            opBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            opBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
         return opBillNeoDTO;

+ 13 - 10
src/main/java/com/diagbot/repository/PACSNode.java

@@ -30,7 +30,7 @@ public class PACSNode {
 
         Gender gender = pacs.getGender();
         if (gender!=null) {
-            pacsBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null));
+            pacsBillNeoDTO.setGender(NeoUtil.updateNodeInfo(gender.getName(), null, null, null, null));
         }
 
 
@@ -41,7 +41,8 @@ public class PACSNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(clinicalfinding.getMaxval());
              String unit = clinicalfinding.getUnit();
-            pacsBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = clinicalfinding.getRange();
+            pacsBillNeoDTO.getClinicfindings().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
 
@@ -51,32 +52,33 @@ public class PACSNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(vital.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(vital.getMaxval());
             String unit = vital.getUnit();
-            pacsBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = vital.getRange();
+            pacsBillNeoDTO.getVitals().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
 
         Set<Medicine> conflict_medicines = pacs.getConflict_medicines();
         for (Medicine conflict_medicine : conflict_medicines) {
             String name = conflict_medicine.getName();
-            pacsBillNeoDTO.getOralmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            pacsBillNeoDTO.getOralmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
         Set<AllergicMed> allergicmeds = pacs.getAllergicmeds();
         for (AllergicMed allergicmed : allergicmeds) {
             String name = allergicmed.getName();
-            pacsBillNeoDTO.getAllergicmeds().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            pacsBillNeoDTO.getAllergicmeds().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
         Set<Operation> operations = pacs.getOperations();
         for (Operation operation : operations) {
             String name = operation.getName();
-            pacsBillNeoDTO.getOperations().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            pacsBillNeoDTO.getOperations().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
         Set<Procedure> procedures = pacs.getProcedures();
         for (Procedure procedure : procedures) {
             String name = procedure.getName();
-            pacsBillNeoDTO.getProcedures().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            pacsBillNeoDTO.getProcedures().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
         Set<LIS> liss = pacs.getLiss();
@@ -85,19 +87,20 @@ public class PACSNode {
             BigDecimal min = NeoUtil.DoubletoBigDecimal(lis.getMinval());
             BigDecimal max = NeoUtil.DoubletoBigDecimal(lis.getMaxval());
             String unit = lis.getUnit();
-            pacsBillNeoDTO.getLis().add(NeoUtil.updateNodeInfo(name, min, max, unit));
+            Integer range = lis.getRange();
+            pacsBillNeoDTO.getLis().add(NeoUtil.updateNodeInfo(name, min, max, unit, range));
         }
 
         Set<Disease> diseases = pacs.getDiseases();
         for (Disease disease : diseases) {
             String name = disease.getName();
-            pacsBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            pacsBillNeoDTO.getDisease().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }
 
         Set<Group> groups = pacs.getGroups();
         for (Group group : groups) {
             String name = group.getName();
-            pacsBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null));
+            pacsBillNeoDTO.getGroup().add(NeoUtil.updateNodeInfo(name, null, null, null, null));
         }