Jelajahi Sumber

静态知识检索

zhaops 4 tahun lalu
induk
melakukan
6628275743

+ 42 - 0
src/main/java/com/diagbot/dto/StaticKnowledgeIndexDTO.java

@@ -0,0 +1,42 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/8/18 15:59
+ */
+@Getter
+@Setter
+public class StaticKnowledgeIndexDTO {
+    /**
+     * 术语名称
+     */
+    private String name;
+    /**
+     * 词性
+     */
+    private Integer type;
+    /**
+     * 词性
+     */
+    private String typeName;
+    /**
+     * 同义词
+     */
+    private String retrievalName;
+    /**
+     * 是否有静态知识
+     */
+    private Integer hasInfomation = 0;
+    /**
+     * 是否有临床路径
+     */
+    private Integer hasClinicalPathway = 0;
+    /**
+     * 是否有注意事项
+     */
+    private Integer hasNotice = 0;
+}

+ 37 - 8
src/main/java/com/diagbot/facade/RetrievalFacade.java

@@ -1,8 +1,27 @@
 package com.diagbot.facade;
 
-import com.diagbot.dto.*;
-import com.diagbot.repository.*;
+import com.diagbot.dto.DrugInfoDTO;
+import com.diagbot.dto.LisDetailDTO;
+import com.diagbot.dto.OperationInfoDTO;
+import com.diagbot.dto.RetrievalDTO;
+import com.diagbot.dto.StaticKnowledgeIndexDTO;
+import com.diagbot.repository.DeptNode;
+import com.diagbot.repository.DeptRepository;
+import com.diagbot.repository.ICDDiseaseNode;
+import com.diagbot.repository.ICDDiseaseRepository;
+import com.diagbot.repository.LisNode;
+import com.diagbot.repository.LisPackNode;
+import com.diagbot.repository.LisPackRepository;
+import com.diagbot.repository.LisRepository;
+import com.diagbot.repository.MedicineNode;
+import com.diagbot.repository.MedicineRepository;
+import com.diagbot.repository.OperationNode;
+import com.diagbot.repository.OperationRepository;
+import com.diagbot.repository.PACSNode;
+import com.diagbot.repository.PacsRepository;
 import com.diagbot.vo.RetrievalVO;
+import com.diagbot.vo.StaticKnowledgeIndexVO;
+import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -80,7 +99,7 @@ public class RetrievalFacade {
     public List<String> getLisPacks(String name) {
 
         LisPackNode lisPackNode = new LisPackNode();
-        List<String> lisPacklist = lisPackNode.getLISPackNameList(name,lisPackRepository);
+        List<String> lisPacklist = lisPackNode.getLISPackNameList(name, lisPackRepository);
 
         return lisPacklist;
     }
@@ -92,7 +111,7 @@ public class RetrievalFacade {
     public List<LisDetailDTO> getLis(String name) {
 
         LisNode lisNode = new LisNode();
-        List<LisDetailDTO> lislist = lisNode.getLisDetailList(name,lisRepository);
+        List<LisDetailDTO> lislist = lisNode.getLisDetailList(name, lisRepository);
 
         return lislist;
     }
@@ -104,7 +123,7 @@ public class RetrievalFacade {
     public List<String> getPACSs(String name) {
 
         PACSNode pacsNode = new PACSNode();
-        List<String> pacslist = pacsNode.getPACSNameList(name,pacsRepository);
+        List<String> pacslist = pacsNode.getPACSNameList(name, pacsRepository);
 
         return pacslist;
     }
@@ -116,7 +135,7 @@ public class RetrievalFacade {
     public List<String> getDiseases(String name) {
 
         ICDDiseaseNode diseaseNode = new ICDDiseaseNode();
-        List<String> diseaselist = diseaseNode.getDiseaseNameList(name,icdDiseaseRepository);
+        List<String> diseaselist = diseaseNode.getDiseaseNameList(name, icdDiseaseRepository);
 
         return diseaselist;
     }
@@ -128,7 +147,7 @@ public class RetrievalFacade {
     public List<DrugInfoDTO> getMedicines(String name) {
 
         MedicineNode medicineNode = new MedicineNode();
-        List<DrugInfoDTO> medslist = medicineNode.getMedicineList(name,medicineRepository);
+        List<DrugInfoDTO> medslist = medicineNode.getMedicineList(name, medicineRepository);
 
         return medslist;
     }
@@ -140,7 +159,7 @@ public class RetrievalFacade {
     public List<OperationInfoDTO> getOperations(String name) {
 
         OperationNode operationNode = new OperationNode();
-        List<OperationInfoDTO> opslist = operationNode.getOperationList(name,operationRepository);
+        List<OperationInfoDTO> opslist = operationNode.getOperationList(name, operationRepository);
 
         return opslist;
     }
@@ -157,5 +176,15 @@ public class RetrievalFacade {
         return deptlist;
     }
 
+    /**
+     * 医学知识(静态信息)检索
+     *
+     * @param staticKnowledgeIndexVO
+     * @return
+     */
+    public List<StaticKnowledgeIndexDTO> staticKnowledgeIndex(StaticKnowledgeIndexVO staticKnowledgeIndexVO) {
+        List<StaticKnowledgeIndexDTO> staticKnowledgeIndexDTOList = Lists.newLinkedList();
 
+        return staticKnowledgeIndexDTOList;
+    }
 }

+ 26 - 0
src/main/java/com/diagbot/vo/StaticKnowledgeIndexVO.java

@@ -0,0 +1,26 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/8/18 15:52
+ */
+@Getter
+@Setter
+public class StaticKnowledgeIndexVO {
+    /**
+     * 检索内容
+     */
+    private String inputStr;
+    /**
+     * 检索类型(多选)
+     */
+    @NotNull(message = "请输入检索类型")
+    private List<Integer> types;
+}

+ 12 - 0
src/main/java/com/diagbot/web/RetrievalController.java

@@ -2,8 +2,10 @@ package com.diagbot.web;
 
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.RetrievalDTO;
+import com.diagbot.dto.StaticKnowledgeIndexDTO;
 import com.diagbot.facade.RetrievalFacade;
 import com.diagbot.vo.RetrievalVO;
+import com.diagbot.vo.StaticKnowledgeIndexVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -13,6 +15,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.validation.Valid;
+import java.util.List;
 
 /**
  * @Description:
@@ -37,4 +40,13 @@ public class RetrievalController {
         RetrievalDTO data = retrievalFacade.index(retrievalVO);
         return RespDTO.onSuc(data);
     }
+
+    @ApiOperation(value = "医学知识(静态知识)检索[zhaops]",
+            notes = "types: 类型(多选):0-全部、1-诊断、2-药品、3-检验、4-检查、5-手术和操作 <br>" +
+                    "inputStr: 检索内容<br>")
+    @PostMapping("/staticKnowledgeIndex")
+    public RespDTO<List<StaticKnowledgeIndexDTO>> staticKnowledgeIndex(@Valid @RequestBody StaticKnowledgeIndexVO staticKnowledgeIndexVO) {
+        List<StaticKnowledgeIndexDTO> data = retrievalFacade.staticKnowledgeIndex(staticKnowledgeIndexVO);
+        return RespDTO.onSuc(data);
+    }
 }