Browse Source

更新开单合理项对接的数据结构

MarkHuang 4 years ago
parent
commit
46bade42d7

+ 3 - 0
src/main/java/com/diagbot/dto/BillNeoDTO.java

@@ -15,6 +15,9 @@ public class BillNeoDTO {
     // 开单项目名称
     private String name;
 
+    // 开单标准名称
+    private String standname;
+
     // 化验开单合理性项目
     private LisBillNeoDTO lisBillNeoDTO;
 

+ 13 - 3
src/main/java/com/diagbot/facade/BillFacade.java

@@ -12,7 +12,9 @@ import com.diagbot.vo.IndicationPushVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Description: 开单合理性facade
@@ -52,16 +54,24 @@ public class BillFacade {
         BillNeoVO billNeoVO = new BillNeoVO();
 
         List<Item> items = indicationPushVO.getDrugOrder();
+
         for (Item item : items) {
-            billNeoVO.getDrugList().add(item.getName());
+            billNeoVO.getDrugList().put(item.getName(), item.getUniqueName());
         }
+
         List<Pacs> pacslist = indicationPushVO.getPacs();
         for (Pacs pacs : pacslist) {
-            billNeoVO.getPacsList().add(pacs.getName());
+            billNeoVO.getPacsList().put(pacs.getName(), pacs.getUniqueName());
         }
+
         List<Lis> lislist = indicationPushVO.getLis();
         for (Lis lis : lislist) {
-            billNeoVO.getLisList().add(lis.getName());
+            billNeoVO.getLisList().put(lis.getName(), lis.getUniqueName());
+        }
+
+        List<Item> diags = indicationPushVO.getDiag();
+        for (Item item : diags) {
+            billNeoVO.getDiagList().put(item.getName(), item.getUniqueName());
         }
 
         return billNeoVO;

+ 44 - 13
src/main/java/com/diagbot/facade/NeoFacade.java

@@ -4,10 +4,10 @@ import com.diagbot.dto.BillNeoDTO;
 import com.diagbot.dto.DrugBillNeoDTO;
 import com.diagbot.dto.LisBillNeoDTO;
 import com.diagbot.dto.PacsBillNeoDTO;
+import com.diagbot.entity.node.Disease;
 import com.diagbot.entity.node.LIS;
 import com.diagbot.entity.node.Medicine;
 import com.diagbot.entity.node.PACS;
-import com.diagbot.entity.relationship.Medicine_AgeMin;
 import com.diagbot.repository.*;
 import com.diagbot.vo.BillNeoVO;
 import com.diagbot.vo.StandConvert;
@@ -34,6 +34,8 @@ public class NeoFacade {
     PacsRepository pacsRepository;
     @Autowired
     LisRepository lisRepository;
+    @Autowired
+    DiseaseRepository diseaseRepository;
 
 
     /**
@@ -62,6 +64,7 @@ public class NeoFacade {
         billNeoDTOs.addAll(getDrugBill(billNeoVO.getDrugList()));
         billNeoDTOs.addAll(getPacsBill(billNeoVO.getPacsList()));
         billNeoDTOs.addAll(getLisBill(billNeoVO.getLisList()));
+        getDiag(billNeoVO.getDiagList());
 
         for (BillNeoDTO billNeoDTO:billNeoDTOs) {
             System.out.println(billNeoDTO);
@@ -74,7 +77,7 @@ public class NeoFacade {
     /**
      * 处理处方开单合理性
      */
-    public List<BillNeoDTO> getDrugBill(List<String> meds) {
+    public List<BillNeoDTO> getDrugBill(Map<String, String> medsterm) {
         List<BillNeoDTO> billNeoDTOs = new ArrayList<>();
         BillNeoDTO billNeoDTO;
 
@@ -82,16 +85,19 @@ public class NeoFacade {
 
         MedicineNode medicineNode = new MedicineNode();
         Medicine medicine;
+        String medname;
 
-        for (String medname : meds) {
+        for (String term : medsterm.keySet()) {
             billNeoDTO = new BillNeoDTO();
-            billNeoDTO.setName(medname);
+            medname = medsterm.get(term);
+            billNeoDTO.setName(term);
+            billNeoDTO.setStandname(medname);
 
             drugBillNeoDTO = new DrugBillNeoDTO();
 
             medicine = medicineRepository.findByNameIs(medname);
 
-            if (medicine!=null) {
+            if (medicine != null) {
                 drugBillNeoDTO = medicineNode.MedicinetoDrugDTO(medicine);
             }
 
@@ -100,6 +106,7 @@ public class NeoFacade {
             billNeoDTOs.add(billNeoDTO);
         }
 
+
         return billNeoDTOs;
     }
 
@@ -107,7 +114,7 @@ public class NeoFacade {
     /**
      * 处理辅检开单合理性
      */
-    public List<BillNeoDTO> getPacsBill(List<String> pacslist) {
+    public List<BillNeoDTO> getPacsBill(Map<String, String> pacsterm) {
         List<BillNeoDTO> billNeoDTOs = new ArrayList<>();
         BillNeoDTO billNeoDTO;
 
@@ -115,16 +122,19 @@ public class NeoFacade {
 
         PACSNode pacsNode = new PACSNode();
         PACS pacs;
+        String pacsname;
 
-        for (String pacsname : pacslist) {
+        for (String term : pacsterm.keySet()) {
             billNeoDTO = new BillNeoDTO();
-            billNeoDTO.setName(pacsname);
+            pacsname = pacsterm.get(term);
+            billNeoDTO.setName(term);
+            billNeoDTO.setStandname(pacsname);
 
             pacsBillNeoDTO = new PacsBillNeoDTO();
 
             pacs = pacsRepository.findByNameIs(pacsname);
 
-            if (pacs!=null) {
+            if (pacs != null) {
                 pacsBillNeoDTO = pacsNode.PacstoPACSDTO(pacs);
             }
 
@@ -140,7 +150,7 @@ public class NeoFacade {
     /**
      * 处理化验开单合理性
      */
-    public List<BillNeoDTO> getLisBill(List<String> lislist) {
+    public List<BillNeoDTO> getLisBill(Map<String, String> listerm) {
         List<BillNeoDTO> billNeoDTOs = new ArrayList<>();
         BillNeoDTO billNeoDTO;
 
@@ -148,16 +158,19 @@ public class NeoFacade {
 
         LISNode lisNode = new LISNode();
         LIS lis;
+        String lisname;
 
-        for (String lisname : lislist) {
+        for (String term : listerm.keySet()) {
             billNeoDTO = new BillNeoDTO();
-            billNeoDTO.setName(lisname);
+            lisname = listerm.get(term);
+            billNeoDTO.setName(term);
+            billNeoDTO.setStandname(lisname);
 
             lisBillNeoDTO = new LisBillNeoDTO();
 
             lis = lisRepository.findByNameIs(lisname);
 
-            if (lis!=null) {
+            if (lis != null) {
                 lisBillNeoDTO = lisNode.ListoLISDTO(lis);
             }
 
@@ -170,6 +183,24 @@ public class NeoFacade {
     }
 
 
+    public void getDiag(Map<String, String> diaglist) {
+
+        Disease disease;
+        String diag;
+
+        for (String term : diaglist.keySet()) {
+
+            diag = diaglist.get(term);
+            disease = diseaseRepository.findByNameIs(diag);
+
+            if (disease != null) {
+                System.out.println(disease);
+            }
+        }
+
+
+    }
+
 
     /**
      * 标准词转换

+ 1 - 1
src/main/java/com/diagbot/facade/PushFacade.java

@@ -80,7 +80,7 @@ public class PushFacade {
 
         List<Item> items = indicationPushVO.getDrug();
         for (Item item : items) {
-            billNeoVO.getDrugList().add(item.getName());
+            billNeoVO.getDrugList().put(item.getName(), item.getUniqueName());
         }
 
         return billNeoVO;

+ 0 - 1
src/main/java/com/diagbot/repository/DiseaseRepository.java

@@ -1,7 +1,6 @@
 package com.diagbot.repository;
 
 import com.diagbot.entity.node.Disease;
-import com.diagbot.entity.node.LIS;
 import org.springframework.data.neo4j.repository.Neo4jRepository;
 
 

+ 7 - 3
src/main/java/com/diagbot/vo/BillNeoVO.java

@@ -3,17 +3,21 @@ package com.diagbot.vo;
 import lombok.Data;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 @Data
 public class BillNeoVO {
 
     // 化验入参
-    private List<String> lisList = new ArrayList<>();
+    private Map<String, String> lisList = new HashMap<>();
 
     // 辅检入参
-    private List<String> pacsList = new ArrayList<>();
+    private Map<String, String> pacsList = new HashMap<>();
 
     // 药品入参
-    private List<String> drugList = new ArrayList<>();
+    private Map<String, String> drugList = new HashMap<>();
+
+    private Map<String, String> diagList = new HashMap<>();
 }