Browse Source

Merge remote-tracking branch 'origin/dev/neo2mysql20210120' into dev/neo2mysql20210120

gaodm 4 years ago
parent
commit
3c716a4a09

+ 72 - 0
src/main/java/com/diagbot/facade/KlConceptFacade.java

@@ -1,8 +1,19 @@
 package com.diagbot.facade;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.entity.KlConcept;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.LexiconEnum;
 import com.diagbot.service.impl.KlConceptServiceImpl;
+import com.diagbot.util.ListUtil;
+import com.diagbot.vo.ConceptVO;
+import com.google.common.collect.Lists;
 import org.springframework.stereotype.Component;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
 /**
  * @Description:
  * @author: gaodm
@@ -10,4 +21,65 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class KlConceptFacade extends KlConceptServiceImpl {
+
+    /**
+     * 批量校验标准术语
+     *
+     * @param conceptVO
+     * @return
+     */
+    public List<String> getConceptNames(ConceptVO conceptVO) {
+        if (ListUtil.isEmpty(conceptVO.getNames())) {
+            return new ArrayList<>();
+        }
+        List<String> retList = Lists.newLinkedList();
+        //type: 类型:1-化验大项、2-化验小项、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血
+        Integer type = convertType(conceptVO.getType());
+
+        List<KlConcept> concepts = this.list(new QueryWrapper<KlConcept>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("lib_name", conceptVO.getNames()));
+
+        if (ListUtil.isNotEmpty(concepts)) {
+            retList = concepts.stream().map(i -> i.getLibName()).distinct().collect(Collectors.toList());
+        }
+
+        return retList;
+    }
+
+
+    public Integer convertType(Integer type) {
+        Integer retType = null;
+        //type: 类型:1-化验大项、2-化验小项、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血
+        switch (type) {
+            case 1:
+                retType = LexiconEnum.LisName.getKey();
+                break;
+            case 2:
+                retType = LexiconEnum.LisSubName.getKey();
+                break;
+            case 3:
+                retType = LexiconEnum.PacsName.getKey();
+                break;
+            case 4:
+                retType = LexiconEnum.Disease.getKey();
+                break;
+            case 5:
+                retType = LexiconEnum.Medicine.getKey();
+                break;
+            case 6:
+                retType = LexiconEnum.Operation.getKey();
+                break;
+            case 7:
+                retType = LexiconEnum.Dept.getKey();
+                break;
+            case 8:
+                retType = LexiconEnum.Transfusion.getKey();
+                break;
+            default:
+                break;
+        }
+
+        return retType;
+    }
 }

+ 5 - 1
src/main/java/com/diagbot/web/RetrievalController.java

@@ -4,6 +4,7 @@ import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.RetrievalDTO;
 import com.diagbot.dto.StaticKnowledgeIndexDTO;
 import com.diagbot.facade.ConceptFacade;
+import com.diagbot.facade.KlConceptFacade;
 import com.diagbot.facade.MedRetrievalFacade;
 import com.diagbot.facade.RetrievalFacade;
 import com.diagbot.vo.ConceptVO;
@@ -36,6 +37,8 @@ public class RetrievalController {
     private MedRetrievalFacade medRetrievalFacade;
     @Autowired
     private ConceptFacade conceptFacade;
+    @Autowired
+    private KlConceptFacade klConceptFacade;
 
 
     @ApiOperation(value = "术语检索[zhaops]",
@@ -74,7 +77,8 @@ public class RetrievalController {
                     "names: 术语列表<br>")
     @PostMapping("/getConceptNames")
     public RespDTO<List<String>> getConceptNames(@Valid @RequestBody ConceptVO conceptVO) {
-        List<String> data = conceptFacade.getConceptNames(conceptVO);
+        //List<String> data = conceptFacade.getConceptNames(conceptVO);
+        List<String> data = klConceptFacade.getConceptNames(conceptVO);
         return RespDTO.onSuc(data);
     }
 }