ソースを参照

更新从图谱中获取高危药品节点数据

MarkHuang 4 年 前
コミット
fe2b194f27

+ 2 - 0
src/main/java/com/diagbot/entity/node/MedRegName.java

@@ -15,6 +15,8 @@ import java.util.HashSet;
 @NodeEntity(label = "药品注册名称")
 public class MedRegName extends BaseNode  {
 
+	@Property(name = "药品高危级别")
+	private String risklevel;
 
 	@Relationship(type = "药品相关药品注册名称", direction = Relationship.INCOMING)
 	private Set<MedCodeName> medcodenames = new HashSet<>();

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

@@ -15,9 +15,6 @@ import java.util.HashSet;
 @NodeEntity(label = "药品通用名称")
 public class Medicine extends BaseNode  {
 
-	@Property(name = "药品高危级别")
-	private String risklevel;
-
 	@Relationship(type = "药品相关药品通用名称", direction = Relationship.INCOMING)
 	private Set<MedCodeName> medcodenames = new HashSet<>();
 

+ 4 - 2
src/main/java/com/diagbot/facade/NeoFacade.java

@@ -61,6 +61,8 @@ public class NeoFacade {
     @Autowired
     MedicineCodeRepository medicineCodeRepository;
     @Autowired
+    MedRegNameRepository medRegNameRepository;
+    @Autowired
     YiBaoDiseaseRepository yiBaoDiseaseRepository;
     @Autowired
     CombiOperationRepository combiOperationRepository;
@@ -333,8 +335,8 @@ public class NeoFacade {
      * @return
      */
     public List<HighRiskNeoDTO> getHighRiskDrugList(Map<String, String> drugs) {
-        MedicineNode medicineNode = new MedicineNode();
-        List<HighRiskNeoDTO> highRiskNeoDTOS = medicineNode.getHighRiskDrug(drugs, medicineRepository);
+        MedRegNameNode medRegNameNode = new MedRegNameNode();
+        List<HighRiskNeoDTO> highRiskNeoDTOS = medRegNameNode.getHighRiskDrug(drugs, medRegNameRepository);
 
         return highRiskNeoDTOS;
     }

+ 50 - 0
src/main/java/com/diagbot/repository/MedRegNameNode.java

@@ -0,0 +1,50 @@
+package com.diagbot.repository;
+
+import com.diagbot.dto.BillNeoDTO;
+import com.diagbot.dto.DrugBillNeoDTO;
+import com.diagbot.dto.DrugInfoDTO;
+import com.diagbot.dto.HighRiskNeoDTO;
+import com.diagbot.entity.node.MedRegName;
+import com.diagbot.entity.node.Medicine;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+public class MedRegNameNode {
+
+    /**
+     * 获取高危药品数据
+     */
+    public List<HighRiskNeoDTO> getHighRiskDrug(Map<String, String> drugsterm, MedRegNameRepository medRegNameRepository) {
+        List<HighRiskNeoDTO> highRiskNeoDTOS = new ArrayList<>();
+        HighRiskNeoDTO highRiskNeoDTO;
+        String drugname;
+        List<MedRegName> medicine;
+        MedRegName med;
+
+        for (String term : drugsterm.keySet()) {
+            highRiskNeoDTO = new HighRiskNeoDTO();
+
+            drugname = drugsterm.get(term);
+            highRiskNeoDTO.setName(term);
+            highRiskNeoDTO.setStandname(drugname);
+
+            medicine = medRegNameRepository.findByNameIs(drugname);
+
+            if (null != medicine && medicine.size()>0) {
+                med = medicine.get(0);
+
+                if (null!=med.getRisklevel() && med.getRisklevel().trim().length()>0) {
+                    highRiskNeoDTO.setIsHighrisk(true);
+                    highRiskNeoDTO.setType(Constants.medicine);
+                    highRiskNeoDTOS.add(highRiskNeoDTO);
+                }
+            }
+        }
+
+        return highRiskNeoDTOS;
+    }
+
+}
+

+ 15 - 0
src/main/java/com/diagbot/repository/MedRegNameRepository.java

@@ -0,0 +1,15 @@
+package com.diagbot.repository;
+
+import com.diagbot.entity.node.MedRegName;
+import org.springframework.data.neo4j.repository.Neo4jRepository;
+
+import java.util.List;
+
+
+public interface MedRegNameRepository extends Neo4jRepository<MedRegName, Long> {
+
+    List<MedRegName> findByNameIs(String name);
+
+    List<MedRegName> findByNameContaining(String name);
+}
+

+ 0 - 32
src/main/java/com/diagbot/repository/MedicineNode.java

@@ -84,37 +84,5 @@ public class MedicineNode {
 
 
 
-    /**
-     * 获取高危药品数据
-     */
-    public List<HighRiskNeoDTO> getHighRiskDrug(Map<String, String> drugsterm, MedicineRepository medicineRepository) {
-        List<HighRiskNeoDTO> highRiskNeoDTOS = new ArrayList<>();
-        HighRiskNeoDTO highRiskNeoDTO;
-        String drugname;
-        List<Medicine> medicine;
-        Medicine med;
-
-        for (String term : drugsterm.keySet()) {
-            highRiskNeoDTO = new HighRiskNeoDTO();
-
-            drugname = drugsterm.get(term);
-            highRiskNeoDTO.setName(term);
-            highRiskNeoDTO.setStandname(drugname);
-
-            medicine = medicineRepository.findByNameIs(drugname);
-
-            if (null != medicine && medicine.size()>0) {
-                med = medicine.get(0);
-
-                if (null!=med.getRisklevel() && med.getRisklevel().trim().length()>0) {
-                    highRiskNeoDTO.setIsHighrisk(true);
-                    highRiskNeoDTO.setType(Constants.medicine);
-                    highRiskNeoDTOS.add(highRiskNeoDTO);
-                }
-            }
-        }
-
-        return highRiskNeoDTOS;
-    }
 }