Prechádzať zdrojové kódy

Merge branch 'develop' into innerDevelop

gaodm 3 rokov pred
rodič
commit
248bebe016
43 zmenil súbory, kde vykonal 1568 pridanie a 438 odobranie
  1. 9 8
      src/main/java/com/diagbot/aggregate/AssembleAggregate.java
  2. 8 7
      src/main/java/com/diagbot/aggregate/AssemblePushAggregate.java
  3. 9 0
      src/main/java/com/diagbot/client/CdssCoreClient.java
  4. 14 1
      src/main/java/com/diagbot/client/hystrix/CdssCoreHystrix.java
  5. 2 0
      src/main/java/com/diagbot/config/ResourceServerConfigurer.java
  6. 2 0
      src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java
  7. 13 0
      src/main/java/com/diagbot/dto/IndexBatchDTO.java
  8. 1 1
      src/main/java/com/diagbot/entity/AnesthesiaConfig.java
  9. 1 1
      src/main/java/com/diagbot/entity/DeptConfig.java
  10. 1 1
      src/main/java/com/diagbot/entity/DiseaseConfig.java
  11. 6 60
      src/main/java/com/diagbot/entity/DrugConfig.java
  12. 1 1
      src/main/java/com/diagbot/entity/LisConfig.java
  13. 1 1
      src/main/java/com/diagbot/entity/NurseConfig.java
  14. 1 1
      src/main/java/com/diagbot/entity/OperationConfig.java
  15. 1 1
      src/main/java/com/diagbot/entity/PacsConfig.java
  16. 1 1
      src/main/java/com/diagbot/entity/ScaleConfig.java
  17. 1 1
      src/main/java/com/diagbot/entity/TcmdiseaseConfig.java
  18. 1 1
      src/main/java/com/diagbot/entity/TcmsyndromeConfig.java
  19. 1 1
      src/main/java/com/diagbot/entity/TransfusionConfig.java
  20. 23 0
      src/main/java/com/diagbot/entity/wrapper/AnesthesiaConfigWrapper.java
  21. 24 0
      src/main/java/com/diagbot/entity/wrapper/DeptConfigWrapper.java
  22. 23 0
      src/main/java/com/diagbot/entity/wrapper/DiseaseConfigWrapper.java
  23. 28 0
      src/main/java/com/diagbot/entity/wrapper/DrugConfigWrapper.java
  24. 23 0
      src/main/java/com/diagbot/entity/wrapper/LisConfigWrapper.java
  25. 10 1
      src/main/java/com/diagbot/entity/wrapper/MappingConfigWrapper.java
  26. 23 0
      src/main/java/com/diagbot/entity/wrapper/NurseConfigWrapper.java
  27. 23 0
      src/main/java/com/diagbot/entity/wrapper/OperationConfigWrapper.java
  28. 23 0
      src/main/java/com/diagbot/entity/wrapper/PacsConfigWrapper.java
  29. 23 0
      src/main/java/com/diagbot/entity/wrapper/ScaleConfigWrapper.java
  30. 23 0
      src/main/java/com/diagbot/entity/wrapper/TcmdiseaseConfigWrapper.java
  31. 23 0
      src/main/java/com/diagbot/entity/wrapper/TcmsyndromeConfigWrapper.java
  32. 23 0
      src/main/java/com/diagbot/entity/wrapper/TransfusionConfigWrapper.java
  33. 2 1
      src/main/java/com/diagbot/enums/MatchSourceEnum.java
  34. 1 1
      src/main/java/com/diagbot/exception/ServiceErrorCode.java
  35. 7 7
      src/main/java/com/diagbot/facade/ConceptInfoFacade.java
  36. 1084 332
      src/main/java/com/diagbot/facade/MappingConfigFacade.java
  37. 3 2
      src/main/java/com/diagbot/service/impl/MrServiceImpl.java
  38. 1 0
      src/main/java/com/diagbot/vo/ConceptVO.java
  39. 1 0
      src/main/java/com/diagbot/vo/FilterVO.java
  40. 18 0
      src/main/java/com/diagbot/vo/IndexByApprovalVO.java
  41. 14 0
      src/main/java/com/diagbot/vo/MappingConfigPageVO.java
  42. 41 7
      src/main/java/com/diagbot/web/MappingConfigController.java
  43. 30 0
      src/main/resources/mapper/MappingConfigMapper.xml

+ 9 - 8
src/main/java/com/diagbot/aggregate/AssembleAggregate.java

@@ -4,6 +4,7 @@ import com.diagbot.biz.push.entity.Item;
 import com.diagbot.biz.push.entity.Lis;
 import com.diagbot.biz.push.entity.Pacs;
 import com.diagbot.enums.ConceptTypeEnum;
+import com.diagbot.enums.StatusEnum;
 import com.diagbot.facade.MappingConfigFacade;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.ListUtil;
@@ -162,7 +163,7 @@ public class AssembleAggregate {
 
         if (ListUtil.isNotEmpty(lisHisNameList)) {
             lisConfigMap
-                    = mappingConfigFacade.groupByHisNameWithName(lisHisNameList, ConceptTypeEnum.LisPack.getKey(), searchData.getHospitalId());
+                    = mappingConfigFacade.groupByHisNameWithName(lisHisNameList, ConceptTypeEnum.LisPack.getKey(), searchData.getHospitalId(), StatusEnum.Enable.getKey());
         }
         return lisConfigMap;
     }
@@ -195,7 +196,7 @@ public class AssembleAggregate {
         Map<String, Map<String, Map<String, List<String>>>> pacsConfigMap = new HashMap<>();
         if (ListUtil.isNotEmpty(pacsHisNameList)) {
             pacsConfigMap
-                    = mappingConfigFacade.groupByHisNameWithName(pacsHisNameList, ConceptTypeEnum.Pacs.getKey(), searchData.getHospitalId());
+                    = mappingConfigFacade.groupByHisNameWithName(pacsHisNameList, ConceptTypeEnum.Pacs.getKey(), searchData.getHospitalId(),StatusEnum.Enable.getKey());
         }
         return pacsConfigMap;
     }
@@ -233,7 +234,7 @@ public class AssembleAggregate {
         Map<String, Map<String, Map<String, List<String>>>> configMap = new HashMap<>();
         if (ListUtil.isNotEmpty(diagHisNameList)) {
             configMap
-                    = mappingConfigFacade.groupByHisNameWithName(diagHisNameList, ConceptTypeEnum.Disease.getKey(), searchData.getHospitalId());
+                    = mappingConfigFacade.groupByHisNameWithName(diagHisNameList, ConceptTypeEnum.Disease.getKey(), searchData.getHospitalId(),StatusEnum.Enable.getKey());
         }
         return configMap;
     }
@@ -266,7 +267,7 @@ public class AssembleAggregate {
         Map<String, Map<String, Map<String, List<String>>>> configMap = new HashMap<>();
         if (ListUtil.isNotEmpty(drugHisNameList)) {
             configMap
-                    = mappingConfigFacade.groupByHisNameWithName(drugHisNameList, ConceptTypeEnum.Drug.getKey(), searchData.getHospitalId());
+                    = mappingConfigFacade.groupByHisNameWithName(drugHisNameList, ConceptTypeEnum.Drug.getKey(), searchData.getHospitalId(),StatusEnum.Enable.getKey());
         }
         return configMap;
     }
@@ -304,7 +305,7 @@ public class AssembleAggregate {
         Map<String, Map<String, Map<String, List<String>>>> configMap = new HashMap<>();
         if (ListUtil.isNotEmpty(operationHisNameList)) {
             configMap
-                    = mappingConfigFacade.groupByHisNameWithName(operationHisNameList, ConceptTypeEnum.Operation.getKey(), searchData.getHospitalId());
+                    = mappingConfigFacade.groupByHisNameWithName(operationHisNameList, ConceptTypeEnum.Operation.getKey(), searchData.getHospitalId(),StatusEnum.Enable.getKey());
         }
         return configMap;
     }
@@ -330,7 +331,7 @@ public class AssembleAggregate {
 
         if (ListUtil.isNotEmpty(deptHisNameList)) {
             configMap
-                    = mappingConfigFacade.groupByHisNameWithName(deptHisNameList, ConceptTypeEnum.Dept.getKey(), searchData.getHospitalId());
+                    = mappingConfigFacade.groupByHisNameWithName(deptHisNameList, ConceptTypeEnum.Dept.getKey(), searchData.getHospitalId(),StatusEnum.Enable.getKey());
         }
         return configMap;
     }
@@ -364,7 +365,7 @@ public class AssembleAggregate {
 
         if (ListUtil.isNotEmpty(transfusionHisNameList)) {
             configMap
-                    = mappingConfigFacade.groupByHisNameWithName(transfusionHisNameList, ConceptTypeEnum.Transfusion.getKey(), searchData.getHospitalId());
+                    = mappingConfigFacade.groupByHisNameWithName(transfusionHisNameList, ConceptTypeEnum.Transfusion.getKey(), searchData.getHospitalId(),StatusEnum.Enable.getKey());
         }
         return configMap;
     }
@@ -402,7 +403,7 @@ public class AssembleAggregate {
                 }
 
                 String hisDetailName = "";
-                if(type.equals(ConceptTypeEnum.LisPack.getKey())) {
+                if (type.equals(ConceptTypeEnum.LisPack.getKey())) {
                     hisDetailName = ReflectUtil.getProperty(item, "detailName");
                     if (StringUtil.isBlank(hisDetailName)) {
                         hisDetailName = "";

+ 8 - 7
src/main/java/com/diagbot/aggregate/AssemblePushAggregate.java

@@ -4,6 +4,7 @@ import com.diagbot.dto.PushBaseDTO;
 import com.diagbot.dto.PushDTO;
 import com.diagbot.dto.PushScaleDTO;
 import com.diagbot.enums.ConceptTypeEnum;
+import com.diagbot.enums.StatusEnum;
 import com.diagbot.facade.MappingConfigFacade;
 import com.diagbot.util.ListUtil;
 import com.google.common.collect.Lists;
@@ -85,7 +86,7 @@ public class AssemblePushAggregate {
                     .map(i -> i.getName())
                     .collect(Collectors.toList());
             Map<String, Map<String, Map<String, List<String>>>> uniqueNameMap
-                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.LisPack.getKey(), hospitalId);
+                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.LisPack.getKey(), hospitalId, StatusEnum.Enable.getKey());
 
             if (uniqueNameMap != null && uniqueNameMap.size() > 0) {
                 retLis.forEach(item -> {
@@ -113,7 +114,7 @@ public class AssemblePushAggregate {
                     .map(i -> i.getName())
                     .collect(Collectors.toList());
             Map<String, Map<String, Map<String, List<String>>>> uniqueNameMap
-                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Pacs.getKey(), hospitalId);
+                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Pacs.getKey(), hospitalId, StatusEnum.Enable.getKey());
 
             if (uniqueNameMap != null && uniqueNameMap.size() > 0) {
                 retPacs.forEach(item -> {
@@ -146,7 +147,7 @@ public class AssemblePushAggregate {
             }
             if (ListUtil.isNotEmpty(uniqueNameList)) {
                 Map<String, Map<String, Map<String, List<String>>>> uniqueNameMap
-                        = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Disease.getKey(), hospitalId);
+                        = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Disease.getKey(), hospitalId, StatusEnum.Enable.getKey());
 
                 for (Map.Entry<String, List<PushBaseDTO>> entry : retMap.entrySet()) {
                     if (uniqueNameMap != null && uniqueNameMap.size() > 0) {
@@ -177,7 +178,7 @@ public class AssemblePushAggregate {
                     .map(i -> i.getName())
                     .collect(Collectors.toList());
             Map<String, Map<String, Map<String, List<String>>>> uniqueNameMap
-                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Operation.getKey(), hospitalId);
+                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Operation.getKey(), hospitalId, StatusEnum.Enable.getKey());
 
             if (uniqueNameMap != null && uniqueNameMap.size() > 0) {
                 retOperation.forEach(item -> {
@@ -205,7 +206,7 @@ public class AssemblePushAggregate {
                     .map(i -> i.getName())
                     .collect(Collectors.toList());
             Map<String, Map<String, Map<String, List<String>>>> uniqueNameMap
-                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Drug.getKey(), hospitalId);
+                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Drug.getKey(), hospitalId, StatusEnum.Enable.getKey());
 
             if (uniqueNameMap != null && uniqueNameMap.size() > 0) {
                 retDrug.forEach(item -> {
@@ -233,7 +234,7 @@ public class AssemblePushAggregate {
                     .map(i -> i.getName())
                     .collect(Collectors.toList());
             Map<String, Map<String, Map<String, List<String>>>> uniqueNameMap
-                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Scale.getKey(), hospitalId);
+                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Scale.getKey(), hospitalId, StatusEnum.Enable.getKey());
 
             if (uniqueNameMap != null && uniqueNameMap.size() > 0) {
                 retScale.forEach(item -> {
@@ -261,7 +262,7 @@ public class AssemblePushAggregate {
                     .map(i -> i.getName())
                     .collect(Collectors.toList());
             Map<String, Map<String, Map<String, List<String>>>> uniqueNameMap
-                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Nurse.getKey(), hospitalId);
+                    = mappingConfigFacade.groupByUniqueNameWithName(uniqueNameList, ConceptTypeEnum.Nurse.getKey(), hospitalId, StatusEnum.Enable.getKey());
 
             if (uniqueNameMap != null && uniqueNameMap.size() > 0) {
                 retNurse.forEach(item -> {

+ 9 - 0
src/main/java/com/diagbot/client/CdssCoreClient.java

@@ -59,6 +59,15 @@ public interface CdssCoreClient {
     @PostMapping("/retrieval/index")
     RespDTO<RetrievalDTO> index(@RequestBody @Valid RetrievalVO retrievalVO);
 
+    /**
+     * 国药准字匹配
+     *
+     * @param indexByApprovalVO
+     * @return
+     */
+    @PostMapping("/retrieval/indexByApproval")
+    RespDTO<List<IndexBatchDTO>> indexByApproval(@Valid @RequestBody IndexByApprovalVO indexByApprovalVO);
+
     /**
      * 静态知识检索
      *

+ 14 - 1
src/main/java/com/diagbot/client/hystrix/CdssCoreHystrix.java

@@ -72,6 +72,19 @@ public class CdssCoreHystrix implements CdssCoreClient {
         return null;
     }
 
+
+    /**
+     * 国药准字匹配
+     *
+     * @param indexByApprovalVO
+     * @return
+     */
+    @Override
+    public RespDTO<List<IndexBatchDTO>> indexByApproval(@Valid @RequestBody IndexByApprovalVO indexByApprovalVO) {
+        log.error("【hystrix】调用{}异常", "indexByApproval");
+        return null;
+    }
+
     /**
      * 静态知识检索
      *
@@ -341,4 +354,4 @@ public class CdssCoreHystrix implements CdssCoreClient {
         log.error("【hystrix】调用{}异常", "getTermMatching");
         return null;
     }
-}
+}

+ 2 - 0
src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -48,7 +48,9 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/tran/mappingConfig/precDataMatch").permitAll()
                 .antMatchers("/tran/mappingConfig/precData").permitAll()
                 .antMatchers("/tran/mappingConfig/precDataMatch_remote").permitAll()
+                .antMatchers("/tran/mappingConfig/importExcelDataVerify").permitAll()
                 .antMatchers("/tran/mappingConfig/importExcel").permitAll()
+                .antMatchers("/tran/mappingConfig/importExcel_remote").permitAll()
                 .antMatchers("/tran/mappingConfig/exportExcel").permitAll()
                 .antMatchers("/tran/mappingConfig/exportExcel_remote").permitAll()
                 .antMatchers("/tran/mappingConfig/getPage").permitAll()

+ 2 - 0
src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -91,7 +91,9 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/tran/mappingConfig/precDataMatch", request)
                 || matchers("/tran/mappingConfig/precData", request)
                 || matchers("/tran/mappingConfig/precDataMatch_remote", request)
+                || matchers("/tran/mappingConfig/importExcelDataVerify", request)
                 || matchers("/tran/mappingConfig/importExcel", request)
+                || matchers("/tran/mappingConfig/importExcel_remote", request)
                 || matchers("/tran/mappingConfig/exportExcel", request)
                 || matchers("/tran/mappingConfig/exportExcel_remote", request)
                 || matchers("/tran/mappingConfig/getPage", request)

+ 13 - 0
src/main/java/com/diagbot/dto/IndexBatchDTO.java

@@ -12,8 +12,21 @@ import lombok.Setter;
 @Setter
 public class IndexBatchDTO {
     private Long id;
+    private Integer status;
     private String name;
     private String code;
     private String synonyms;
     private Integer type;
+    /**
+     * 国药准字
+     */
+    private String approval;
+    /**
+     * 药品剂型
+     */
+    private String form;
+    /**
+     * 药品剂型id
+     */
+    private Long formConceptId;
 }

+ 1 - 1
src/main/java/com/diagbot/entity/AnesthesiaConfig.java

@@ -36,7 +36,7 @@ public class AnesthesiaConfig {
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/DeptConfig.java

@@ -83,7 +83,7 @@ public class DeptConfig {
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/DiseaseConfig.java

@@ -78,7 +78,7 @@ public class DiseaseConfig {
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null"}, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 6 - 60
src/main/java/com/diagbot/entity/DrugConfig.java

@@ -1,15 +1,10 @@
 package com.diagbot.entity;
 
 import cn.afterturn.easypoi.excel.annotation.Excel;
-import com.baomidou.mybatisplus.annotation.FieldStrategy;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.diagbot.util.StringUtil;
-import lombok.Getter;
-import lombok.Setter;
+import lombok.Data;
 
 import javax.validation.constraints.NotBlank;
 import java.util.Date;
-import java.util.Objects;
 
 /**
  * <p>
@@ -19,8 +14,7 @@ import java.util.Objects;
  * @author zhaops
  * @since 2020-07-28
  */
-@Getter
-@Setter
+@Data
 public class DrugConfig {
     /**
      * 主键
@@ -80,68 +74,20 @@ public class DrugConfig {
      * 剂型
      */
     @Excel(name = "药品剂型", width = 60, orderNum = "3", isImportField = "true")
-    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private String form;
 
+    @Excel(name = "国药准字", width = 40, orderNum = "4", isImportField = "true")
+    private String approval;
 
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "5", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**
      * 数据来源(1-标准词、2-同义词、3-编码、4-历史数据、5-相似词、99-数据迁移)
      */
-    @Excel(name = "数据来源【不填、标准词、同义词、编码、历史数据、相似词】", width = 20, orderNum = "5", replace = { "标准词_1", "同义词_2", "编码_3", "历史数据_4", "相似词_5", "数据迁移_99", "_null" }, isImportField = "true")
+    @Excel(name = "数据来源【不填、标准词、同义词、编码、历史数据、相似词、国药准字】", width = 20, orderNum = "6", replace = { "标准词_1", "同义词_2", "编码_3", "历史数据_4", "相似词_5", "国药准字_6", "数据迁移_99", "_null" }, isImportField = "true")
     private Integer source;
-
-    @Override
-    public String toString() {
-        return "DrugConfig{" +
-                "id=" + id +
-                ", isDeleted=" + isDeleted +
-                ", gmtCreate=" + gmtCreate +
-                ", gmtModified=" + gmtModified +
-                ", creator=" + creator +
-                ", modifier=" + modifier +
-                ", hospitalId=" + hospitalId +
-                ", hisName=" + hisName +
-                ", uniqueName=" + uniqueName +
-                ", code=" + code +
-                ", form=" + form +
-                "}";
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        if (this == o) {
-            return true;
-        }
-        if (o == null || getClass() != o.getClass()) {
-            return false;
-        }
-        DrugConfig drugConfig = (DrugConfig) o;
-        return Objects.equals(id, drugConfig.id)
-                && Objects.equals(isDeleted, drugConfig.isDeleted)
-                && Objects.equals(hospitalId, drugConfig.hospitalId)
-                && Objects.equals(hisName, drugConfig.hisName)
-                && Objects.equals(form, drugConfig.form)
-                && Objects.equals(uniqueName, drugConfig.uniqueName)
-                && Objects.equals(code, drugConfig.code);
-    }
-
-    @Override
-    public int hashCode() {
-        return Objects.hash(id, isDeleted, hospitalId, hisName, form, uniqueName, code);
-    }
-
-    public static boolean nonNull(DrugConfig o) {
-        return !(o == null
-                || (o.hospitalId == null
-                && StringUtil.isBlank(o.hisName)
-                && StringUtil.isBlank(o.uniqueName)
-                && StringUtil.isBlank(o.code)
-                && StringUtil.isBlank(o.form)));
-    }
 }

+ 1 - 1
src/main/java/com/diagbot/entity/LisConfig.java

@@ -87,7 +87,7 @@ public class LisConfig {
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/NurseConfig.java

@@ -81,7 +81,7 @@ public class NurseConfig{
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/OperationConfig.java

@@ -82,7 +82,7 @@ public class OperationConfig{
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/PacsConfig.java

@@ -82,7 +82,7 @@ public class PacsConfig implements Serializable {
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/ScaleConfig.java

@@ -81,7 +81,7 @@ public class ScaleConfig{
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/TcmdiseaseConfig.java

@@ -82,7 +82,7 @@ public class TcmdiseaseConfig{
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/TcmsyndromeConfig.java

@@ -78,7 +78,7 @@ public class TcmsyndromeConfig {
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 1 - 1
src/main/java/com/diagbot/entity/TransfusionConfig.java

@@ -78,7 +78,7 @@ public class TransfusionConfig {
     /**
      * 是否匹配(0-未匹配、1-已匹配)
      */
-    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1" }, isImportField = "true")
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", replace = { "未匹配_0", "已匹配_1", "_null" }, isImportField = "true")
     private Integer isMatch;
 
     /**

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/AnesthesiaConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.AnesthesiaConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:13
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class AnesthesiaConfigWrapper extends AnesthesiaConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 24 - 0
src/main/java/com/diagbot/entity/wrapper/DeptConfigWrapper.java

@@ -0,0 +1,24 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.DeptConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 14:53
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class DeptConfigWrapper extends DeptConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/DiseaseConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.DiseaseConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:00
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class DiseaseConfigWrapper extends DiseaseConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 28 - 0
src/main/java/com/diagbot/entity/wrapper/DrugConfigWrapper.java

@@ -0,0 +1,28 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.DrugConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:02
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class DrugConfigWrapper extends DrugConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准剂型状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "100")
+    private Integer formStatus;
+}

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/LisConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.LisConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:09
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class LisConfigWrapper extends LisConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 10 - 1
src/main/java/com/diagbot/entity/wrapper/MappingConfigWrapper.java

@@ -16,8 +16,14 @@ import lombok.ToString;
 @ToString(callSuper = true)
 public class MappingConfigWrapper extends MappingConfig {
     private String uniqueName;
+    private Integer status;
     private String form;
+    private Integer formStatus;
     private String code;
+    /**
+     * 国药准字
+     */
+    private String approval;
 
    /* @Override
     public boolean equals(Object o) {
@@ -42,8 +48,11 @@ public class MappingConfigWrapper extends MappingConfig {
     public static boolean nonNull(MappingConfigWrapper o) {
         return !(o == null
                 || (StringUtil.isBlank(o.uniqueName)
+                && o.status == null
                 && StringUtil.isBlank(o.form)
-                && StringUtil.isBlank(o.code)))
+                && o.formStatus == null
+                && StringUtil.isBlank(o.code)
+                && StringUtil.isBlank(o.approval)))
                 || MappingConfig.nonNull(o);
     }
 }

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/NurseConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.NurseConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:12
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class NurseConfigWrapper extends NurseConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/OperationConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.OperationConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:08
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class OperationConfigWrapper extends OperationConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/PacsConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.PacsConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class PacsConfigWrapper extends PacsConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/ScaleConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.ScaleConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:15
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class ScaleConfigWrapper extends ScaleConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/TcmdiseaseConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.TcmdiseaseConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:17
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class TcmdiseaseConfigWrapper extends TcmdiseaseConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/TcmsyndromeConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.TcmsyndromeConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class TcmsyndromeConfigWrapper extends TcmsyndromeConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 23 - 0
src/main/java/com/diagbot/entity/wrapper/TransfusionConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.entity.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.entity.TransfusionConfig;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/9/22 15:18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class TransfusionConfigWrapper extends TransfusionConfig {
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "标准术语状态", width = 40, replace = { "禁用_0", "启用_1", "_null" }, orderNum = "99")
+    private Integer status;
+}

+ 2 - 1
src/main/java/com/diagbot/enums/MatchSourceEnum.java

@@ -13,7 +13,8 @@ public enum MatchSourceEnum implements KeyedNamed {
     SynonymsWord(2, "同义词"),
     Code(3,"编码"),
     History(4,"历史数据"),
-    SimilarWord(5,"相似词");
+    SimilarWord(5,"相似词"),
+    Approval(6,"国药准字");
 
     @Setter
     private int key;

+ 1 - 1
src/main/java/com/diagbot/exception/ServiceErrorCode.java

@@ -40,7 +40,7 @@ public enum ServiceErrorCode implements ErrorCode {
 
     public static ServiceErrorCode codeOf(String code) {
         for (ServiceErrorCode state : values()) {
-            if (state.getCode() == code) {
+            if (state.getCode().equals(code)) {
                 return state;
             }
         }

+ 7 - 7
src/main/java/com/diagbot/facade/ConceptInfoFacade.java

@@ -608,7 +608,7 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
             case 1:
                 Map<String, Map<String, Map<String, List<String>>>> disConfigMap
                         = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
-                        ConceptTypeEnum.Disease.getKey(), hospitalId);
+                        ConceptTypeEnum.Disease.getKey(), hospitalId,StatusEnum.Enable.getKey());
                 if (disConfigMap != null
                         && disConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
                     nameList = disConfigMap.get(staticKnowledgeHISVO.getHisName())
@@ -620,7 +620,7 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
             case 2:
                 Map<String, Map<String, Map<String, List<String>>>> drugConfigMap
                         = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
-                        ConceptTypeEnum.Drug.getKey(), hospitalId);
+                        ConceptTypeEnum.Drug.getKey(), hospitalId,StatusEnum.Enable.getKey());
                 if (drugConfigMap != null
                         && drugConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
                     nameList = drugConfigMap.get(staticKnowledgeHISVO.getHisName())
@@ -633,7 +633,7 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
             case 4:
                 Map<String, Map<String, Map<String, List<String>>>> lisConfigMap
                         = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
-                        ConceptTypeEnum.LisPack.getKey(), hospitalId);
+                        ConceptTypeEnum.LisPack.getKey(), hospitalId,StatusEnum.Enable.getKey());
                 if (lisConfigMap != null) {
                     if (StringUtil.isBlank(staticKnowledgeHISVO.getHisDetailName())) {
                         staticKnowledgeHISVO.setHisDetailName("");
@@ -652,7 +652,7 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
             case 6:
                 Map<String, Map<String, Map<String, List<String>>>> pacsConfigMap
                         = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
-                        ConceptTypeEnum.Pacs.getKey(), hospitalId);
+                        ConceptTypeEnum.Pacs.getKey(), hospitalId,StatusEnum.Enable.getKey());
                 if (pacsConfigMap != null
                         && pacsConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
                     nameList = pacsConfigMap.get(staticKnowledgeHISVO.getHisName())
@@ -664,7 +664,7 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
             case 7:
                 Map<String, Map<String, Map<String, List<String>>>> operationConfigMap
                         = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
-                        ConceptTypeEnum.Operation.getKey(), hospitalId);
+                        ConceptTypeEnum.Operation.getKey(), hospitalId,StatusEnum.Enable.getKey());
                 if (operationConfigMap != null &&
                         operationConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
                     nameList = operationConfigMap.get(staticKnowledgeHISVO.getHisName())
@@ -676,7 +676,7 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
             case 8:
                 Map<String, Map<String, Map<String, List<String>>>> scaleConfigMap
                         = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
-                        ConceptTypeEnum.Scale.getKey(), hospitalId);
+                        ConceptTypeEnum.Scale.getKey(), hospitalId,StatusEnum.Enable.getKey());
                 if (scaleConfigMap != null &&
                         scaleConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
                     nameList = scaleConfigMap.get(staticKnowledgeHISVO.getHisName())
@@ -688,7 +688,7 @@ public class ConceptInfoFacade extends ConceptInfoServiceImpl {
             case 9:
                 Map<String, Map<String, Map<String, List<String>>>> nurseConfigMap
                         = mappingConfigFacade.groupByHisNameWithName(ListUtil.arrayToList(new String[] { staticKnowledgeHISVO.getHisName() }),
-                        ConceptTypeEnum.Nurse.getKey(), hospitalId);
+                        ConceptTypeEnum.Nurse.getKey(), hospitalId,StatusEnum.Enable.getKey());
                 if (nurseConfigMap != null &&
                         nurseConfigMap.get(staticKnowledgeHISVO.getHisName()) != null) {
                     nameList = nurseConfigMap.get(staticKnowledgeHISVO.getHisName())

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1084 - 332
src/main/java/com/diagbot/facade/MappingConfigFacade.java


+ 3 - 2
src/main/java/com/diagbot/service/impl/MrServiceImpl.java

@@ -4,6 +4,7 @@ import com.diagbot.biz.push.entity.Item;
 import com.diagbot.dto.TcmDTO;
 import com.diagbot.enums.ConceptTypeEnum;
 import com.diagbot.enums.OtherIndexEnum;
+import com.diagbot.enums.StatusEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.facade.MappingConfigFacade;
@@ -143,7 +144,7 @@ public class MrServiceImpl implements MrService {
                 tcmdisease.setName(otherIndex.get(OtherIndexEnum.getName(OtherIndexEnum.TcmDiag.getKey())));
                 Map<String, Map<String, Map<String, List<String>>>> configMap
                         = mappingConfigFacade.groupByHisNameWithName(Arrays.asList(new String[] { tcmdisease.getName() }),
-                        ConceptTypeEnum.Tcmdisease.getKey(), hospitalId);
+                        ConceptTypeEnum.Tcmdisease.getKey(), hospitalId, StatusEnum.Enable.getKey());
                 if (configMap != null && configMap.get(tcmdisease.getName()) != null) {
                     tcmdisease.setUniqueName(configMap.get(tcmdisease.getName())
                             .get("")
@@ -162,7 +163,7 @@ public class MrServiceImpl implements MrService {
                 tcmsyndrome.setName(otherIndex.get(OtherIndexEnum.getName(OtherIndexEnum.TcmSyndrome.getKey())));
                 Map<String, Map<String, Map<String, List<String>>>> configMap
                         = mappingConfigFacade.groupByHisNameWithName(Arrays.asList(new String[] { tcmsyndrome.getName() }),
-                        ConceptTypeEnum.Tcmsyndrome.getKey(), hospitalId);
+                        ConceptTypeEnum.Tcmsyndrome.getKey(), hospitalId, StatusEnum.Enable.getKey());
                 if (configMap != null && configMap.get(tcmsyndrome.getName()) != null) {
                     tcmsyndrome.setUniqueName(configMap.get(tcmsyndrome.getName())
                             .get("")

+ 1 - 0
src/main/java/com/diagbot/vo/ConceptVO.java

@@ -17,4 +17,5 @@ public class ConceptVO {
     private List<String> names;
     private Integer type;
     private Integer source;
+    private Integer status;
 }

+ 1 - 0
src/main/java/com/diagbot/vo/FilterVO.java

@@ -15,4 +15,5 @@ import javax.validation.constraints.NotBlank;
 public class FilterVO {
     @NotBlank(message = "请输入检索内容")
     private String inputStr;
+    private Integer status;
 }

+ 18 - 0
src/main/java/com/diagbot/vo/IndexByApprovalVO.java

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/8/24 15:49
+ */
+@Data
+public class IndexByApprovalVO {
+    /**
+     * 国药准字列表
+     */
+    private List<String> approvalList;
+}

+ 14 - 0
src/main/java/com/diagbot/vo/MappingConfigPageVO.java

@@ -48,6 +48,8 @@ public class MappingConfigPageVO extends Page {
     private String uniqueName;
     @ApiModelProperty(hidden = true)
     private List<Long> conceptIds;
+    @ApiModelProperty(hidden = true)
+    private List<Long> notInConceptIds;
 
     /**
      * 药品剂型
@@ -55,6 +57,8 @@ public class MappingConfigPageVO extends Page {
     private String form;
     @ApiModelProperty(hidden = true)
     private List<Long> formConceptIds;
+    @ApiModelProperty(hidden = true)
+    private List<Long> notInFormConceptIds;
 
     /**
      * 是否匹配(0-未匹配、1-已匹配、2-多条匹配)
@@ -71,4 +75,14 @@ public class MappingConfigPageVO extends Page {
      */
     @ApiModelProperty(hidden = true)
     private Integer isMultiple;
+
+    /**
+     * 标准术语启用禁用状态
+     */
+    private Integer status;
+
+    /**
+     * 剂型启用禁用状态
+     */
+    private Integer formStatus;
 }

+ 41 - 7
src/main/java/com/diagbot/web/MappingConfigController.java

@@ -85,11 +85,11 @@ public class MappingConfigController {
     }
 
     @ApiOperation(value = "预匹配(非文件匹配)[by:zhaops]",
-            notes = "type(必填): 类型:1-化验、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、10-量表、11-护理、12-中医诊断、13-中医证候、14-麻醉 <br>"+
+            notes = "type(必填): 类型:1-化验、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、10-量表、11-护理、12-中医诊断、13-中医证候、14-麻醉 <br>" +
                     "hisName(必填):医院术语名称 <br>" +
                     "hisDetailName(选填):医院术语名称-细项 <br>" +
                     "code(选填):诊断ICD10编码、手术编码、中医疾病编码、中医证候编码 <br>" +
-                    "approval(选填):药品国药准字 <br>" )
+                    "approval(选填):药品国药准字 <br>")
     @PostMapping(value = "/precData")
     @SysLogger("precData")
     public RespDTO<List<MappingConfigWrapper>> precData(@Valid @RequestBody PrecDataVO precDataVO) {
@@ -97,6 +97,21 @@ public class MappingConfigController {
         return RespDTO.onSuc(data);
     }
 
+    @ApiOperation(value = "数据导入校验[by:zhaops]",
+            notes = "file(必填):导入文件 <br>" +
+                    "hospitalId(必填):医院id <br>" +
+                    "uesrId(必填):操作人id <br>" +
+                    "type(必填): 类型:1-化验、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、10-量表、11-护理、12-中医诊断、13-中医证候、14-麻醉 <br>")
+    @PostMapping(value = "/importExcelDataVerify", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+    @SysLogger("importExcelDataVerify")
+    public RespDTO<Boolean> importExcelDataVerify(@RequestParam("file") MultipartFile file,
+                                                  @RequestParam("hospitalId") Long hospitalId,
+                                                  @RequestParam("type") Integer type,
+                                                  @RequestParam("uesrId") String userId) {
+        Boolean data = mappingConfigFacade.importExcelDataVerify(file, hospitalId, type, userId);
+        return RespDTO.onSuc(data);
+    }
+
     @ApiOperation(value = "数据导入[by:zhaops]",
             notes = "file(必填):导入文件 <br>" +
                     "hospitalId(必填):医院id <br>" +
@@ -105,11 +120,30 @@ public class MappingConfigController {
     @PostMapping(value = "/importExcel", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
     @SysLogger("importExcel")
     @Transactional
-    public RespDTO<Boolean> importExcel(@RequestParam("file") MultipartFile file,
-                                        @RequestParam("hospitalId") Long hospitalId,
-                                        @RequestParam("type") Integer type,
-                                        @RequestParam("uesrId") String userId) {
-        Boolean data = mappingConfigFacade.importExcel(file, hospitalId, type, userId);
+    public void importExcel(HttpServletResponse response,
+                            @RequestParam("file") MultipartFile file,
+                            @RequestParam("hospitalId") Long hospitalId,
+                            @RequestParam("type") Integer type,
+                            @RequestParam("uesrId") String userId) {
+        response.setHeader("Access-Control-Expose-Headers", "*");
+        mappingConfigFacade.importExcel(response, file, hospitalId, type, userId);
+    }
+
+    @ApiOperation(value = "数据导入_远程调用[by:zhaops]",
+            notes = "file(必填):导入文件 <br>" +
+                    "hospitalId(必填):医院id <br>" +
+                    "uesrId(必填):操作人id <br>" +
+                    "type(必填): 类型:1-化验、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、10-量表、11-护理、12-中医诊断、13-中医证候、14-麻醉 <br>")
+    @PostMapping(value = "/importExcel_remote", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+    @SysLogger("importExcel_remote")
+    @Transactional
+    @ApiIgnore
+    public RespDTO<List<MappingConfigWrapper>> importExcel_remote(HttpServletResponse response,
+                                                                  @RequestParam("file") MultipartFile file,
+                                                                  @RequestParam("hospitalId") Long hospitalId,
+                                                                  @RequestParam("type") Integer type,
+                                                                  @RequestParam("uesrId") String userId) {
+        List<MappingConfigWrapper> data = mappingConfigFacade.importExcel_remote(response, file, hospitalId, type, userId);
         return RespDTO.onSuc(data);
     }
 

+ 30 - 0
src/main/resources/mapper/MappingConfigMapper.xml

@@ -50,6 +50,13 @@
                 #{conceptId}
             </foreach>
         </if>
+        <if test="mappingConfigPageVO.notInConceptIds!=null and mappingConfigPageVO.notInConceptIds.size()>0">
+            and a.concept_id is not null
+            and a.concept_id not in
+            <foreach item="notInConceptId" collection="mappingConfigPageVO.notInConceptIds" open="(" separator="," close=")">
+                #{notInConceptId}
+            </foreach>
+        </if>
         <if test="mappingConfigPageVO.formConceptIds!=null and mappingConfigPageVO.formConceptIds.size()>0">
             and a.form_concept_id in
             <foreach item="formConceptId" collection="mappingConfigPageVO.formConceptIds" open="(" separator=","
@@ -57,6 +64,14 @@
                 #{formConceptId}
             </foreach>
         </if>
+        <if test="mappingConfigPageVO.notInFormConceptIds!=null and mappingConfigPageVO.notInFormConceptIds.size()>0">
+            and a.form_concept_id is not null
+            and a.form_concept_id in
+            <foreach item="notInFormConceptId" collection="mappingConfigPageVO.notInFormConceptIds" open="(" separator=","
+                     close=")">
+                #{notInFormConceptId}
+            </foreach>
+        </if>
         <if test="mappingConfigPageVO.isMatch!=null">
             and a.is_match=#{mappingConfigPageVO.isMatch}
         </if>
@@ -86,6 +101,13 @@
                     #{conceptId}
                 </foreach>
             </if>
+            <if test="mappingConfigPageVO.notInConceptIds!=null and mappingConfigPageVO.notInConceptIds.size()>0">
+                and a.concept_id is not null
+                and a.concept_id not in
+                <foreach item="notInConceptId" collection="mappingConfigPageVO.notInConceptIds" open="(" separator="," close=")">
+                    #{notInConceptId}
+                </foreach>
+            </if>
             <if test="mappingConfigPageVO.formConceptIds!=null and mappingConfigPageVO.formConceptIds.size()>0">
                 and a.form_concept_id in
                 <foreach item="formConceptId" collection="mappingConfigPageVO.formConceptIds" open="(" separator=","
@@ -93,6 +115,14 @@
                     #{formConceptId}
                 </foreach>
             </if>
+            <if test="mappingConfigPageVO.notInFormConceptIds!=null and mappingConfigPageVO.notInFormConceptIds.size()>0">
+                and a.form_concept_id is not null
+                and a.form_concept_id in
+                <foreach item="notInFormConceptId" collection="mappingConfigPageVO.notInFormConceptIds" open="(" separator=","
+                         close=")">
+                    #{notInFormConceptId}
+                </foreach>
+            </if>
             group by a.his_name
             <if test="mappingConfigPageVO.type!=null and mappingConfigPageVO.type==1">
                 ,a.his_detail_name