Selaa lähdekoodia

添加公司内部质控业务外其他数据源简易交互集中处理服务

rengb 3 vuotta sitten
vanhempi
commit
caf8a2c8b7
100 muutettua tiedostoa jossa 8508 lisäystä ja 13 poistoa
  1. 19 0
      config-center/src/main/resources/shared/mdsp-service-debug.yml
  2. 19 0
      config-center/src/main/resources/shared/mdsp-service-inner.yml
  3. 19 0
      config-center/src/main/resources/shared/mdsp-service-local.yml
  4. 19 0
      config-center/src/main/resources/shared/mdsp-service-outer.yml
  5. 19 0
      config-center/src/main/resources/shared/mdsp-service-test.yml
  6. 4 12
      daqe-center/pom.xml
  7. 8 1
      gateway-service/src/main/resources/bootstrap.yml
  8. 33 0
      mdsp-service/.gitignore
  9. 79 0
      mdsp-service/pom.xml
  10. 19 0
      mdsp-service/src/main/java/com/lantone/MdspServiceApplication.java
  11. 57 0
      mdsp-service/src/main/java/com/lantone/client/CdssCoreClient.java
  12. 83 0
      mdsp-service/src/main/java/com/lantone/client/hystrix/CdssCoreHystrix.java
  13. 31 0
      mdsp-service/src/main/java/com/lantone/config/DruidConfig.java
  14. 14 0
      mdsp-service/src/main/java/com/lantone/config/JasyptConfig.java
  15. 13 0
      mdsp-service/src/main/java/com/lantone/config/RedisConfig.java
  16. 16 0
      mdsp-service/src/main/java/com/lantone/config/SwaggerConfig.java
  17. 48 0
      mdsp-service/src/main/java/com/lantone/dto/cdss/DictionaryInfoDTO.java
  18. 32 0
      mdsp-service/src/main/java/com/lantone/dto/cdss/IndexBatchDTO.java
  19. 38 0
      mdsp-service/src/main/java/com/lantone/dto/cdss/KllisDetailDTO.java
  20. 51 0
      mdsp-service/src/main/java/com/lantone/dto/cdss/LisDetailDTO.java
  21. 32 0
      mdsp-service/src/main/java/com/lantone/dto/med/IndexBatchDTO.java
  22. 38 0
      mdsp-service/src/main/java/com/lantone/dto/med/KllisDetailDTO.java
  23. 45 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/AdministrationRouteConfig.java
  24. 47 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/AnesthesiaConfig.java
  25. 143 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/DeptConfig.java
  26. 88 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/DictionaryInfo.java
  27. 137 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/DiseaseConfig.java
  28. 93 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/DrugConfig.java
  29. 147 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/LisConfig.java
  30. 302 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/MappingConfig.java
  31. 134 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/NurseConfig.java
  32. 136 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/OperationConfig.java
  33. 137 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/PacsConfig.java
  34. 135 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/ScaleConfig.java
  35. 135 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/TcmdiseaseConfig.java
  36. 135 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/TcmsyndromeConfig.java
  37. 135 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/TransfusionConfig.java
  38. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/AdministrationRouteConfigWrapper.java
  39. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/AnesthesiaConfigWrapper.java
  40. 24 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/DeptConfigWrapper.java
  41. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/DiseaseConfigWrapper.java
  42. 28 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/DrugConfigWrapper.java
  43. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/LisConfigWrapper.java
  44. 58 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/MappingConfigWrapper.java
  45. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/NurseConfigWrapper.java
  46. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/OperationConfigWrapper.java
  47. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/PacsConfigWrapper.java
  48. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/ScaleConfigWrapper.java
  49. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/TcmdiseaseConfigWrapper.java
  50. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/TcmsyndromeConfigWrapper.java
  51. 23 0
      mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/TransfusionConfigWrapper.java
  52. 167 0
      mdsp-service/src/main/java/com/lantone/entity/med/KlConcept.java
  53. 198 0
      mdsp-service/src/main/java/com/lantone/entity/med/KlDisease.java
  54. 184 0
      mdsp-service/src/main/java/com/lantone/entity/med/KlLibraryInfo.java
  55. 158 0
      mdsp-service/src/main/java/com/lantone/entity/med/KlOperation.java
  56. 147 0
      mdsp-service/src/main/java/com/lantone/entity/med/TcmDisease.java
  57. 147 0
      mdsp-service/src/main/java/com/lantone/entity/med/TcmSyndrome.java
  58. 79 0
      mdsp-service/src/main/java/com/lantone/enums/cdss/ConceptTypeEnum.java
  59. 67 0
      mdsp-service/src/main/java/com/lantone/enums/cdss/MatchSourceEnum.java
  60. 50 0
      mdsp-service/src/main/java/com/lantone/enums/cdss/StatusEnum.java
  61. 79 0
      mdsp-service/src/main/java/com/lantone/enums/med/ConceptTypeEnum.java
  62. 132 0
      mdsp-service/src/main/java/com/lantone/enums/med/LexiconEnum.java
  63. 66 0
      mdsp-service/src/main/java/com/lantone/enums/med/MatchSourceEnum.java
  64. 50 0
      mdsp-service/src/main/java/com/lantone/enums/med/StatusEnum.java
  65. 68 0
      mdsp-service/src/main/java/com/lantone/facade/cdss/DictionaryFacade.java
  66. 2544 0
      mdsp-service/src/main/java/com/lantone/facade/cdss/MappingConfigFacade.java
  67. 474 0
      mdsp-service/src/main/java/com/lantone/facade/med/KlConceptFacade.java
  68. 14 0
      mdsp-service/src/main/java/com/lantone/facade/med/KlDiseaseFacade.java
  69. 15 0
      mdsp-service/src/main/java/com/lantone/facade/med/KlLibraryInfoFacade.java
  70. 13 0
      mdsp-service/src/main/java/com/lantone/facade/med/KlOperationFacade.java
  71. 13 0
      mdsp-service/src/main/java/com/lantone/facade/med/TcmDiseaseFacade.java
  72. 13 0
      mdsp-service/src/main/java/com/lantone/facade/med/TcmSyndromeFacade.java
  73. 18 0
      mdsp-service/src/main/java/com/lantone/mapper/cdss/DictionaryInfoMapper.java
  74. 47 0
      mdsp-service/src/main/java/com/lantone/mapper/cdss/MappingConfigMapper.java
  75. 29 0
      mdsp-service/src/main/java/com/lantone/mapper/med/KlConceptMapper.java
  76. 18 0
      mdsp-service/src/main/java/com/lantone/mapper/med/KlDiseaseMapper.java
  77. 18 0
      mdsp-service/src/main/java/com/lantone/mapper/med/KlLibraryInfoMapper.java
  78. 18 0
      mdsp-service/src/main/java/com/lantone/mapper/med/KlOperationMapper.java
  79. 18 0
      mdsp-service/src/main/java/com/lantone/mapper/med/TcmDiseaseMapper.java
  80. 18 0
      mdsp-service/src/main/java/com/lantone/mapper/med/TcmSyndromeMapper.java
  81. 16 0
      mdsp-service/src/main/java/com/lantone/service/cdss/DictionaryInfoService.java
  82. 45 0
      mdsp-service/src/main/java/com/lantone/service/cdss/MappingConfigService.java
  83. 20 0
      mdsp-service/src/main/java/com/lantone/service/cdss/impl/DictionaryInfoServiceImpl.java
  84. 58 0
      mdsp-service/src/main/java/com/lantone/service/cdss/impl/MappingConfigServiceImpl.java
  85. 26 0
      mdsp-service/src/main/java/com/lantone/service/med/KlConceptService.java
  86. 16 0
      mdsp-service/src/main/java/com/lantone/service/med/KlDiseaseService.java
  87. 16 0
      mdsp-service/src/main/java/com/lantone/service/med/KlLibraryInfoService.java
  88. 16 0
      mdsp-service/src/main/java/com/lantone/service/med/KlOperationService.java
  89. 16 0
      mdsp-service/src/main/java/com/lantone/service/med/TcmDiseaseService.java
  90. 16 0
      mdsp-service/src/main/java/com/lantone/service/med/TcmSyndromeService.java
  91. 36 0
      mdsp-service/src/main/java/com/lantone/service/med/impl/KlConceptServiceImpl.java
  92. 20 0
      mdsp-service/src/main/java/com/lantone/service/med/impl/KlDiseaseServiceImpl.java
  93. 20 0
      mdsp-service/src/main/java/com/lantone/service/med/impl/KlLibraryInfoServiceImpl.java
  94. 20 0
      mdsp-service/src/main/java/com/lantone/service/med/impl/KlOperationServiceImpl.java
  95. 20 0
      mdsp-service/src/main/java/com/lantone/service/med/impl/TcmDiseaseServiceImpl.java
  96. 20 0
      mdsp-service/src/main/java/com/lantone/service/med/impl/TcmSyndromeServiceImpl.java
  97. 213 0
      mdsp-service/src/main/java/com/lantone/util/ExcelUtils.java
  98. 28 0
      mdsp-service/src/main/java/com/lantone/util/SysUserUtils.java
  99. 21 0
      mdsp-service/src/main/java/com/lantone/vo/cdss/ConceptVO.java
  100. 0 0
      mdsp-service/src/main/java/com/lantone/vo/cdss/FilterVO.java

+ 19 - 0
config-center/src/main/resources/shared/mdsp-service-debug.yml

@@ -0,0 +1,19 @@
+spring:
+  redis:
+    database: 12
+    host: 192.168.2.237 # Redis服务器地址
+    port: 6351 # Redis服务器连接端口
+    password: ENC(Pfc4r7aTbxCpd0XAVZEpsoOTfvKlR+h3lK2RDwFntoeKt7RNo98hT8G2vznKCdg6) # Redis服务器连接密码(默认为空)
+  datasource:
+    dynamic:
+      datasource:
+        med:
+          url: jdbc:mysql://192.168.2.236:3306/med_2021?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
+        cdss:
+          url: jdbc:mysql://192.168.2.236:3306/cdss?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
+
+swagger.show: true

+ 19 - 0
config-center/src/main/resources/shared/mdsp-service-inner.yml

@@ -0,0 +1,19 @@
+spring:
+  redis:
+    database: 12
+    host: 192.168.2.125 # Redis服务器地址
+    port: 6351 # Redis服务器连接端口
+    password: ENC(YBV01kMHu6ufwSegbHcfaoQ20bbW1ho67SHAnKMsJX6K9O0ZXaF+/wHYlLOQjxqN) # Redis服务器连接密码(默认为空)
+  datasource:
+    dynamic:
+      datasource:
+        med:
+          url: jdbc:mysql://192.168.2.121:3306/med_2021?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: teamback
+          password: goTulmLeon
+        cdss:
+          url: jdbc:mysql://192.168.2.121:3306/cdss?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: teamback
+          password: goTulmLeon
+
+swagger.show: true

+ 19 - 0
config-center/src/main/resources/shared/mdsp-service-local.yml

@@ -0,0 +1,19 @@
+spring:
+  redis:
+    database: 12
+    host: 192.168.2.237 # Redis服务器地址
+    port: 6351 # Redis服务器连接端口
+    password: ENC(j/i26SYVLx6wfhf3GQZHVSXezzyyl41W7wChMG+FIgzZzlk+BYi1yDXe36zwoVLZ) # Redis服务器连接密码(默认为空)
+  datasource:
+    dynamic:
+      datasource:
+        med:
+          url: jdbc:mysql://192.168.2.236:3306/med_2021?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
+        cdss:
+          url: jdbc:mysql://192.168.2.236:3306/cdss?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
+
+swagger.show: true

+ 19 - 0
config-center/src/main/resources/shared/mdsp-service-outer.yml

@@ -0,0 +1,19 @@
+spring:
+  redis:
+    database: 12
+    host: 192.168.2.129 # Redis服务器地址
+    port: 6351 # Redis服务器连接端口
+    password: ENC(mesC4twLS8qQ9BiZBnXO8+IniAF+ljJQBJHCI63Tb8ZJgrwJxZc4VTm6x4ed91hh) # Redis服务器连接密码(默认为空)
+  datasource:
+    dynamic:
+      datasource:
+        med:
+          url: jdbc:mysql://192.168.2.122:3306/med_2021?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
+        cdss:
+          url: jdbc:mysql://192.168.2.122:3306/cdss?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
+
+swagger.show: false

+ 19 - 0
config-center/src/main/resources/shared/mdsp-service-test.yml

@@ -0,0 +1,19 @@
+spring:
+  redis:
+    database: 12
+    host: 192.168.2.126 # Redis服务器地址
+    port: 6351 # Redis服务器连接端口
+    password: ENC(4ueOtw8DSAJ5BcYg0kVIMwuhRhklV+vFjWFX3iLD9XDSVqw1ysb8w2ari1ch5Ro7) # Redis服务器连接密码(默认为空)
+  datasource:
+    dynamic:
+      datasource:
+        med:
+          url: jdbc:mysql://192.168.2.241:3306/med_2021?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
+        cdss:
+          url: jdbc:mysql://192.168.2.241:3306/cdss?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
+
+swagger.show: true

+ 4 - 12
daqe-center/pom.xml

@@ -9,10 +9,6 @@
         <version>0.0.1-SNAPSHOT</version>
     </parent>
 
-    <properties>
-        <easypoi.version>4.2.0</easypoi.version>
-    </properties>
-
     <artifactId>daqe-center</artifactId>
     <name>daqe-center</name>
     <packaging>jar</packaging>
@@ -23,14 +19,6 @@
             <groupId>com.lantone</groupId>
             <artifactId>dblayer-mbg</artifactId>
         </dependency>
-
-        <!-- easypoi -->
-        <dependency>
-            <groupId>cn.afterturn</groupId>
-            <artifactId>easypoi-spring-boot-starter</artifactId>
-            <version>${easypoi.version}</version>
-        </dependency>
-
         <dependency>
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
@@ -47,6 +35,10 @@
             <groupId>io.github.openfeign</groupId>
             <artifactId>feign-okhttp</artifactId>
         </dependency>
+        <dependency>
+            <groupId>cn.afterturn</groupId>
+            <artifactId>easypoi-spring-boot-starter</artifactId>
+        </dependency>
     </dependencies>
 
     <build>

+ 8 - 1
gateway-service/src/main/resources/bootstrap.yml

@@ -51,6 +51,12 @@ spring:
             - Path=/daqe-center/**
           filters:
             - StripPrefix=1
+        - id: mdsp-service
+          uri: lb://mdsp-service
+          predicates:
+            - Path=/mdsp-service/**
+          filters:
+            - StripPrefix=1
     config:
       discovery:
         enabled: true
@@ -123,4 +129,5 @@ secure:
       - "/report-service/medAppealInfoManage/getAppealMode"
       - "/daqe-center/**"
       - "/security-center/logManage/getOperationLogs"
-      - "/security-center/logManage/getOperationLogNum"
+      - "/security-center/logManage/getOperationLogNum"
+      - "/mdsp-service/**"

+ 33 - 0
mdsp-service/.gitignore

@@ -0,0 +1,33 @@
+HELP.md
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/

+ 79 - 0
mdsp-service/pom.xml

@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>com.lantone</groupId>
+        <artifactId>emrais</artifactId>
+        <version>0.0.1-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>mdsp-service</artifactId>
+    <name>mdsp-service</name>
+    <packaging>jar</packaging>
+    <description>公司内部质控业务外其他数据源简易交互集中处理服务</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>com.diagbot</groupId>
+            <artifactId>common</artifactId>
+            <version>0.0.1-SNAPSHOT</version>
+        </dependency>
+        <dependency>
+            <groupId>com.lantone</groupId>
+            <artifactId>common</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>druid-spring-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
+            <version>${dynamic-datasource-spring-boot-starter.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-config</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-openfeign</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.github.openfeign</groupId>
+            <artifactId>feign-okhttp</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>cn.afterturn</groupId>
+            <artifactId>easypoi-spring-boot-starter</artifactId>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>com.spotify</groupId>
+                <artifactId>docker-maven-plugin</artifactId>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

+ 19 - 0
mdsp-service/src/main/java/com/lantone/MdspServiceApplication.java

@@ -0,0 +1,19 @@
+package com.lantone;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
+import org.springframework.cloud.openfeign.EnableFeignClients;
+
+@EnableEurekaClient
+@EnableFeignClients
+@SpringBootApplication
+@MapperScan(basePackages = "com.lantone.mapper")
+public class MdspServiceApplication {
+
+    public static void main(String[] args) {
+        SpringApplication.run(MdspServiceApplication.class, args);
+    }
+
+}

+ 57 - 0
mdsp-service/src/main/java/com/lantone/client/CdssCoreClient.java

@@ -0,0 +1,57 @@
+package com.lantone.client;
+
+import com.diagbot.dto.RespDTO;
+import com.lantone.dto.med.IndexBatchDTO;
+import com.lantone.dto.med.KllisDetailDTO;
+import com.lantone.vo.med.ConceptVO;
+import com.lantone.vo.med.FilterVO;
+import com.lantone.vo.med.IndexByApprovalVO;
+import com.lantone.vo.med.KllisDetailVO;
+
+import java.util.List;
+import java.util.Map;
+
+//import com.lantone.dto.ConceptScaleDTO;
+
+/**
+ * @Description: CDSS核心类客户端
+ * @author: gaodm
+ * @time: 2020/7/28 9:29
+ */
+public interface CdssCoreClient {
+
+    /**
+     * 国药准字匹配
+     *
+     * @param indexByApprovalVO
+     * @return
+     */
+    RespDTO<List<IndexBatchDTO>> indexByApproval(IndexByApprovalVO indexByApprovalVO);
+
+
+    /**
+     * 术语关联医学术语检索
+     *
+     * @param filterVO
+     * @return
+     */
+    RespDTO<List<IndexBatchDTO>> filter(FilterVO filterVO);
+
+    /**
+     * 术语批量校验
+     *
+     * @param conceptVO
+     * @return
+     */
+    RespDTO<List<IndexBatchDTO>> getConceptNames(ConceptVO conceptVO);
+
+
+    /**
+     * 化验小项术语批量查询获取范围
+     *
+     * @param kllisDetailVO
+     * @return
+     */
+    RespDTO<Map<String, KllisDetailDTO>> getLisDetaisByNames(KllisDetailVO kllisDetailVO);
+
+}

+ 83 - 0
mdsp-service/src/main/java/com/lantone/client/hystrix/CdssCoreHystrix.java

@@ -0,0 +1,83 @@
+package com.lantone.client.hystrix;
+
+import com.diagbot.dto.RespDTO;
+import com.lantone.client.CdssCoreClient;
+import com.lantone.dto.med.IndexBatchDTO;
+import com.lantone.dto.med.KllisDetailDTO;
+import com.lantone.facade.med.KlConceptFacade;
+import com.lantone.vo.med.ConceptVO;
+import com.lantone.vo.med.FilterVO;
+import com.lantone.vo.med.IndexByApprovalVO;
+import com.lantone.vo.med.KllisDetailVO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+//import com.lantone.dto.ConceptScaleDTO;
+
+/**
+ * @Description: 病历质控客户端(请求失败熔断)
+ * @author: gaodm
+ * @time: 2020/7/28 9:29
+ */
+@Component
+@Slf4j
+public class CdssCoreHystrix implements CdssCoreClient {
+
+
+    @Autowired
+    private KlConceptFacade klConceptFacade;
+
+    /**
+     * 国药准字匹配
+     *
+     * @param indexByApprovalVO
+     * @return
+     */
+    @Override
+    public RespDTO<List<IndexBatchDTO>> indexByApproval(IndexByApprovalVO indexByApprovalVO) {
+        List<com.lantone.dto.med.IndexBatchDTO> data = klConceptFacade.indexByApproval(indexByApprovalVO);
+        return RespDTO.onSuc(data);
+    }
+
+
+    /**
+     * 术语关联医学术语检索
+     *
+     * @param filterVO
+     * @return
+     */
+    @Override
+    public RespDTO<List<IndexBatchDTO>> filter(FilterVO filterVO) {
+        List<com.lantone.dto.med.IndexBatchDTO> data = klConceptFacade.filter(filterVO);
+        return RespDTO.onSuc(data);
+    }
+
+    /**
+     * 术语批量校验
+     *
+     * @param conceptVO
+     * @return
+     */
+    @Override
+    public RespDTO<List<IndexBatchDTO>> getConceptNames(ConceptVO conceptVO) {
+        List<com.lantone.dto.med.IndexBatchDTO> data = klConceptFacade.getConceptNames(conceptVO);
+        return RespDTO.onSuc(data);
+    }
+
+    /**
+     * 化验小项术语批量查询获取范围
+     *
+     * @param kllisDetailVO
+     * @return
+     */
+    @Override
+    public RespDTO<Map<String, KllisDetailDTO>> getLisDetaisByNames(KllisDetailVO kllisDetailVO) {
+        return RespDTO.onSuc(klConceptFacade.getLisDetaisByNamesFac(kllisDetailVO));
+    }
+
+
+}

+ 31 - 0
mdsp-service/src/main/java/com/lantone/config/DruidConfig.java

@@ -0,0 +1,31 @@
+package com.lantone.config;
+
+import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+
+/**
+ * @Description:
+ * @author: rengb
+ * @time: 2020/4/8 21:41
+ */
+@EnableTransactionManagement
+@Configuration
+public class DruidConfig {
+
+    /**
+     * mybatis-plus分页插件<br>
+     * 文档:http://mp.baomidou.com<br>
+     */
+    @Bean
+    public PaginationInterceptor paginationInterceptor() {
+        PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
+        // 设置请求的页面大于最大页后操作,true调回到首页,false继续请求,默认false
+        //paginationInterceptor.setOverflow(false);
+        // 设置最大单页限制数量,默认500条,-1不受限制
+        paginationInterceptor.setLimit(-1L);
+        return paginationInterceptor;
+    }
+
+}

+ 14 - 0
mdsp-service/src/main/java/com/lantone/config/JasyptConfig.java

@@ -0,0 +1,14 @@
+package com.lantone.config;
+
+import com.lantone.common.config.BaseJasyptConfig;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * @Description: Jasypt相关配置
+ * @author: rengb
+ * @time: 2021/7/21 11:15
+ */
+@Configuration
+public class JasyptConfig extends BaseJasyptConfig {
+
+}

+ 13 - 0
mdsp-service/src/main/java/com/lantone/config/RedisConfig.java

@@ -0,0 +1,13 @@
+package com.lantone.config;
+
+import com.lantone.common.config.BaseRedisConfig;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Redis相关配置
+ * Created by macro on 2020/6/19.
+ */
+@Configuration
+public class RedisConfig extends BaseRedisConfig {
+
+}

+ 16 - 0
mdsp-service/src/main/java/com/lantone/config/SwaggerConfig.java

@@ -0,0 +1,16 @@
+package com.lantone.config;
+
+import com.lantone.common.config.BaseSwaggerConfig;
+import org.springframework.context.annotation.Configuration;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+/**
+ * @Description: Swagger相关配置
+ * @author: rengb
+ * @time: 2021/1/5 18:27
+ */
+@Configuration
+@EnableSwagger2
+public class SwaggerConfig extends BaseSwaggerConfig {
+
+}

+ 48 - 0
mdsp-service/src/main/java/com/lantone/dto/cdss/DictionaryInfoDTO.java

@@ -0,0 +1,48 @@
+package com.lantone.dto.cdss;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * icss字典表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-25
+ */
+@Getter
+@Setter
+public class DictionaryInfoDTO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 分组(值自定义)
+     */
+    private Long groupType;
+
+    /**
+     * 内容
+     */
+    private String name;
+
+    /**
+     * 值
+     */
+    private String val;
+
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 32 - 0
mdsp-service/src/main/java/com/lantone/dto/cdss/IndexBatchDTO.java

@@ -0,0 +1,32 @@
+package com.lantone.dto.cdss;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/7 10:27
+ */
+@Getter
+@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;
+}

+ 38 - 0
mdsp-service/src/main/java/com/lantone/dto/cdss/KllisDetailDTO.java

@@ -0,0 +1,38 @@
+package com.lantone.dto.cdss;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: gaodm
+ * @time: 2021/4/16 14:34
+ */
+@Getter
+@Setter
+public class KllisDetailDTO {
+    /**
+     * 名称
+     */
+    private String libName;
+    /**
+     * 编号
+     */
+    private Long id;
+    /**
+     * 下限
+     */
+    private Double minValue;
+    /**
+     * 上限
+     */
+    private Double maxValue;
+    /**
+     * 单位
+     */
+    private String unit;
+    /**
+     * 参考范围:0-范围内,1-范围外
+     */
+    private Integer type;
+}

+ 51 - 0
mdsp-service/src/main/java/com/lantone/dto/cdss/LisDetailDTO.java

@@ -0,0 +1,51 @@
+package com.lantone.dto.cdss;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/8/12 15:53
+ */
+@Getter
+@Setter
+public class LisDetailDTO {
+    private Long id;
+    /**
+     * 大项(套餐)
+     */
+    private String name;
+    /**
+     * 小项(公表名)
+     */
+    private String uniqueName;
+    /**
+     * 数值
+     */
+    private Double value;
+    /**
+     * 单位
+     */
+    private String units;
+    /**
+     * 下限
+     */
+    private Double minValue;
+    /**
+     * 上限
+     */
+    private Double maxValue;
+    /**
+     * 非数值结果
+     */
+    private String otherValue;
+    /**
+     * 非数值类型参考值
+     */
+    private String referenceValue;
+    /**
+     * 参考范围:0-范围内,1-范围外
+     */
+    private Integer range;
+}

+ 32 - 0
mdsp-service/src/main/java/com/lantone/dto/med/IndexBatchDTO.java

@@ -0,0 +1,32 @@
+package com.lantone.dto.med;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/7 10:27
+ */
+@Getter
+@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;
+}

+ 38 - 0
mdsp-service/src/main/java/com/lantone/dto/med/KllisDetailDTO.java

@@ -0,0 +1,38 @@
+package com.lantone.dto.med;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: gaodm
+ * @time: 2021/4/16 14:34
+ */
+@Getter
+@Setter
+public class KllisDetailDTO {
+    /**
+     * 名称
+     */
+    private String libName;
+    /**
+     * 编号
+     */
+    private Long id;
+    /**
+     * 下限
+     */
+    private Double minValue;
+    /**
+     * 上限
+     */
+    private Double maxValue;
+    /**
+     * 单位
+     */
+    private String unit;
+    /**
+     * 参考范围:0-范围内,1-范围外
+     */
+    private Integer type;
+}

+ 45 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/AdministrationRouteConfig.java

@@ -0,0 +1,45 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/10/26 13:39
+ */
+@Data
+public class AdministrationRouteConfig {
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院科室名称
+     */
+    @Excel(name = "医院给药途径名称", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院给药途径名称")
+    private String hisName;
+
+    /**
+     * 标准科室名称
+     */
+    @Excel(name = "标准给药途径名称", width = 40, orderNum = "2", isImportField = "true")
+    @NotBlank(message = "请输入标准给药途径名称")
+    private String uniqueName;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+}

+ 47 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/AnesthesiaConfig.java

@@ -0,0 +1,47 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/10 19:16
+ */
+@Data
+public class AnesthesiaConfig {
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院科室名称
+     */
+    @Excel(name = "医院麻醉名称", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院麻醉名称")
+    private String hisName;
+
+    /**
+     * 标准科室名称
+     */
+    @Excel(name = "标准麻醉名称", width = 40, orderNum = "2", isImportField = "true")
+    @NotBlank(message = "请输入标准麻醉名称")
+    private String uniqueName;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+}

+ 143 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/DeptConfig.java

@@ -0,0 +1,143 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 科室映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2020-08-12
+ */
+@Getter
+@Setter
+public class DeptConfig {
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院科室名称
+     */
+    @Excel(name = "医院科室名称", width = 40, orderNum = "2", isImportField = "true")
+    @NotBlank(message = "请输入医院科室名称")
+    private String hisName;
+
+    /**
+     * 医院科室编码
+     */
+    @Excel(name = "医院科室编码", width = 40, orderNum = "1", isImportField = "true")
+    private String hisCode;
+
+    /**
+     * 标准科室名称
+     */
+    @Excel(name = "标准科室名称", width = 40, orderNum = "4", isImportField = "true")
+    @NotBlank(message = "请输入标准科室名称")
+    private String uniqueName;
+
+    /**
+     * 对应项编码
+     */
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+    @Override
+    public String toString() {
+        return "DeptConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", hisCode=" + hisCode +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        DeptConfig deptConfig = (DeptConfig) o;
+        return Objects.equals(id, deptConfig.id)
+                && Objects.equals(isDeleted, deptConfig.isDeleted)
+                && Objects.equals(hospitalId, deptConfig.hospitalId)
+                && Objects.equals(hisName, deptConfig.hisName)
+                && Objects.equals(hisCode, deptConfig.hisCode)
+                && Objects.equals(uniqueName, deptConfig.uniqueName)
+                && Objects.equals(code, deptConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, hisCode, uniqueName, code);
+    }
+
+    public static boolean nonNull(DeptConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.hisCode)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 88 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/DictionaryInfo.java

@@ -0,0 +1,88 @@
+package com.lantone.entity.cdss;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * CDSS字典表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-25
+ */
+@TableName("sys_dictionary_info")
+@Getter
+@Setter
+public class DictionaryInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 分组(值自定义)
+     */
+    private Long groupType;
+
+    /**
+     * 内容
+     */
+    private String name;
+
+    /**
+     * 值
+     */
+    private String val;
+
+    /**
+     * 返回类型(0: 都返回,1:后台维护返回 2:icss界面返回)
+     */
+    private Integer returnType;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 137 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/DiseaseConfig.java

@@ -0,0 +1,137 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 诊断映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2020-07-28
+ */
+@Getter
+@Setter
+public class DiseaseConfig {
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院诊断名称
+     */
+    @Excel(name = "医院诊断名称", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院诊断名称")
+    private String hisName;
+
+    /**
+     * 标准诊断名称
+     */
+    @Excel(name = "标准诊断名称", width = 40, orderNum = "3", isImportField = "true")
+    @NotBlank(message = "请输入标准诊断名称")
+    private String uniqueName;
+
+    /**
+     * ICD-10编码
+     */
+    @Excel(name = "ICD-10编码", width = 40, orderNum = "2", isImportField = "true")
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+    @Override
+    public String toString() {
+        return "DiseaseConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                ", isMatch=" + isMatch +
+                ", source=" + source +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        DiseaseConfig diseaseConfig = (DiseaseConfig) o;
+        return Objects.equals(id, diseaseConfig.id)
+                && Objects.equals(isDeleted, diseaseConfig.isDeleted)
+                && Objects.equals(hospitalId, diseaseConfig.hospitalId)
+                && Objects.equals(hisName, diseaseConfig.hisName)
+                && Objects.equals(uniqueName, diseaseConfig.uniqueName)
+                && Objects.equals(code, diseaseConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, uniqueName, code);
+    }
+
+    public static boolean nonNull(DiseaseConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 93 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/DrugConfig.java

@@ -0,0 +1,93 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+
+/**
+ * <p>
+ * 药品映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2020-07-28
+ */
+@Data
+public class DrugConfig {
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院药品名称
+     */
+    @Excel(name = "医院药品名称", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院药品名称")
+    private String hisName;
+
+    /**
+     * 标准药品名称
+     */
+    @Excel(name = "标准药品名称", width = 40, orderNum = "2", isImportField = "true")
+    @NotBlank(message = "请输入标准药品名称")
+    private String uniqueName;
+
+    /**
+     * 标准编码
+     */
+    private String code;
+
+    /**
+     * 剂型
+     */
+    @Excel(name = "药品剂型", width = 60, orderNum = "3", isImportField = "true")
+    private String form;
+
+    @Excel(name = "国药准字", width = 40, orderNum = "4", isImportField = "true")
+    private String approval;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @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 = "6", replace = { "标准词_1", "同义词_2", "编码_3", "历史数据_4", "相似词_5", "国药准字_6", "数据迁移_99", "_null" }, isImportField = "true")
+    private Integer source;
+}

+ 147 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/LisConfig.java

@@ -0,0 +1,147 @@
+package com.lantone.entity.cdss;
+
+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 javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 化验公表映射
+ * </p>
+ *
+ * @author zhaops
+ * @since 2020-07-28
+ */
+@Getter
+@Setter
+public class LisConfig {
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 检验套餐
+     */
+    @Excel(name = "检验套餐", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入检验套餐")
+    private String hisName;
+
+    /**
+     * 检验细项
+     */
+    @Excel(name = "检验细项", width = 40, orderNum = "2", isImportField = "true")
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String hisDetailName;
+
+    /**
+     * 标准检验项目
+     */
+    @Excel(name = "标准检验项目", width = 40, orderNum = "4", isImportField = "true")
+    @NotBlank(message = "请输入标准检验项目")
+    private String uniqueName;
+
+    /**
+     * 对应项目编码
+     */
+    //@Excel(name = "对应项目编码", width = 40, orderNum = "3")
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+    @Override
+    public String toString() {
+        return "LisConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", hisDetailName=" + hisDetailName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        LisConfig lisConfig = (LisConfig) o;
+        return Objects.equals(id, lisConfig.id)
+                && Objects.equals(isDeleted, lisConfig.isDeleted)
+                && Objects.equals(hospitalId, lisConfig.hospitalId)
+                && Objects.equals(hisName, lisConfig.hisName)
+                && Objects.equals(hisDetailName, lisConfig.hisDetailName)
+                && Objects.equals(uniqueName, lisConfig.uniqueName)
+                && Objects.equals(code, lisConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, hisDetailName, uniqueName, code);
+    }
+
+    public static boolean nonNull(LisConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.hisDetailName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 302 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/MappingConfig.java

@@ -0,0 +1,302 @@
+package com.lantone.entity.cdss;
+
+import com.baomidou.mybatisplus.annotation.FieldStrategy;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.diagbot.util.StringUtil;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 医学术语映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-06-09
+ */
+@Data
+@TableName("tran_mapping_config")
+public class MappingConfig implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医学术语类型( 1-检验套餐、2-检验细项、3-辅检、4-诊断、5-药品、6-手术和操作、7-科室、8-输血、10-量表、11-护理、12-中医疾病、13-中医证候、14-麻醉)
+     */
+    private Integer type;
+
+    /**
+     * 医院术语名称
+     */
+    private String hisName;
+
+    /**
+     * 医院术语编码
+     */
+    private String hisCode;
+
+    /**
+     * 医院术语细项名称(检验细项)
+     */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private String hisDetailName;
+
+    /**
+     * 医学标准术语id
+     */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private Long conceptId;
+
+    /**
+     * 药品剂型id
+     */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
+    private Long formConceptId;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    private Integer isMatch;
+
+    /**
+     * 数据来源(1-标准词、2-同义词、3-编码、4-历史数据、5-相似词、99-数据迁移)
+     */
+    private Integer source;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public String getHisName() {
+        return hisName;
+    }
+
+    public void setHisName(String hisName) {
+        this.hisName = hisName;
+    }
+
+    public String getHisCode() {
+        return hisCode;
+    }
+
+    public void setHisCode(String hisCode) {
+        this.hisCode = hisCode;
+    }
+
+    public String getHisDetailName() {
+        return hisDetailName;
+    }
+
+    public void setHisDetailName(String hisDetailName) {
+        this.hisDetailName = hisDetailName;
+    }
+
+    public Long getConceptId() {
+        return conceptId;
+    }
+
+    public void setConceptId(Long conceptId) {
+        this.conceptId = conceptId;
+    }
+
+    public Long getFormConceptId() {
+        return formConceptId;
+    }
+
+    public void setFormConceptId(Long formConceptId) {
+        this.formConceptId = formConceptId;
+    }
+
+    public Integer getIsMatch() {
+        return isMatch;
+    }
+
+    public void setIsMatch(Integer isMatch) {
+        this.isMatch = isMatch;
+    }
+
+    public Integer getSource() {
+        return source;
+    }
+
+    public void setSource(Integer source) {
+        this.source = source;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "MappingConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", type=" + type +
+                ", hisName=" + hisName +
+                ", hisCode=" + hisCode +
+                ", hisDetailName=" + hisDetailName +
+                ", conceptId=" + conceptId +
+                ", formConceptId=" + formConceptId +
+                ", isMatch=" + isMatch +
+                ", source=" + source +
+                ", remark=" + remark +
+                "}";
+    }
+
+    /*@Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        MappingConfig mappingConfig = (MappingConfig) o;
+        return Objects.equals(id, mappingConfig.id)
+                && Objects.equals(isDeleted, mappingConfig.isDeleted)
+                && Objects.equals(hospitalId, mappingConfig.hospitalId)
+                && Objects.equals(type, mappingConfig.type)
+                && Objects.equals(hisName, mappingConfig.hisName)
+                && Objects.equals(hisCode, mappingConfig.hisCode)
+                && Objects.equals(hisDetailName, mappingConfig.hisDetailName)
+                && Objects.equals(conceptId, mappingConfig.conceptId)
+                && Objects.equals(formConceptId, mappingConfig.formConceptId)
+                && Objects.equals(isMatch, mappingConfig.isMatch)
+                //&& Objects.equals(source, mappingConfig.source)
+                ;
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, type, hisName, hisCode, hisDetailName, conceptId, formConceptId, isMatch);
+    }*/
+
+    public static boolean nonNull(MappingConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && o.type == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.hisCode)
+                && StringUtil.isBlank(o.hisDetailName)
+                && o.conceptId == null
+                && o.formConceptId == null
+                && o.isMatch == null
+                && o.source == null));
+    }
+}

+ 134 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/NurseConfig.java

@@ -0,0 +1,134 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 护理映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-04-26
+ */
+@Getter
+@Setter
+public class NurseConfig{
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院项目名称
+     */
+    @Excel(name = "医院护理名称", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院护理名称")
+    private String hisName;
+
+    /**
+     * 标准名称
+     */
+    @Excel(name = "标准护理名称", width = 40, orderNum = "3", isImportField = "true")
+    @NotBlank(message = "请输入标准护理名称")
+    private String uniqueName;
+
+    /**
+     * 标准编码
+     */
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+    @Override
+    public String toString() {
+        return "NurseConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        NurseConfig nurseConfig = (NurseConfig) o;
+        return Objects.equals(id, nurseConfig.id)
+                && Objects.equals(isDeleted, nurseConfig.isDeleted)
+                && Objects.equals(hospitalId, nurseConfig.hospitalId)
+                && Objects.equals(hisName, nurseConfig.hisName)
+                && Objects.equals(uniqueName, nurseConfig.uniqueName)
+                && Objects.equals(code, nurseConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, uniqueName, code);
+    }
+
+    public static boolean nonNull(NurseConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 136 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/OperationConfig.java

@@ -0,0 +1,136 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 手术映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2020-07-28
+ */
+@Getter
+@Setter
+public class OperationConfig{
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院手术/操作名称
+     */
+    @Excel(name = "医院手术/操作名称", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院手术/操作名称")
+    private String hisName;
+
+    /**
+     * 标准手术/操作名称
+     */
+    @Excel(name = "标准手术/操作名称", width = 40, orderNum = "3", isImportField = "true")
+    @NotBlank(message = "请输入标准手术/操作名称")
+    private String uniqueName;
+
+    /**
+     * 对应项编码
+     */
+    @Excel(name = "手术和操作代码", width = 40, orderNum = "2", isImportField = "true")
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+
+    @Override
+    public String toString() {
+        return "OperationConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        OperationConfig operationConfig = (OperationConfig) o;
+        return Objects.equals(id, operationConfig.id)
+                && Objects.equals(isDeleted, operationConfig.isDeleted)
+                && Objects.equals(hospitalId, operationConfig.hospitalId)
+                && Objects.equals(hisName, operationConfig.hisName)
+                && Objects.equals(uniqueName, operationConfig.uniqueName)
+                && Objects.equals(code, operationConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, uniqueName, code);
+    }
+
+    public static boolean nonNull(OperationConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 137 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/PacsConfig.java

@@ -0,0 +1,137 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 检查公表映射
+ * </p>
+ *
+ * @author zhaops
+ * @since 2020-07-28
+ */
+@Getter
+@Setter
+public class PacsConfig implements Serializable {
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院检查项目
+     */
+    @Excel(name = "医院检查项目", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院检查项目")
+    private String hisName;
+
+    /**
+     * 标准检查项目
+     */
+    @Excel(name = "标准检查项目", width = 40, orderNum = "3", isImportField = "true")
+    @NotBlank(message = "请输入标准检查项目")
+    private String uniqueName;
+
+    /**
+     * 对应项编码
+     */
+    //@Excel(name = "对应项编码", width = 40, orderNum = "2")
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+
+    @Override
+    public String toString() {
+        return "PacsConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        PacsConfig pacsConfig = (PacsConfig) o;
+        return Objects.equals(id, pacsConfig.id)
+                && Objects.equals(isDeleted, pacsConfig.isDeleted)
+                && Objects.equals(hospitalId, pacsConfig.hospitalId)
+                && Objects.equals(hisName, pacsConfig.hisName)
+                && Objects.equals(uniqueName, pacsConfig.uniqueName)
+                && Objects.equals(code, pacsConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, uniqueName, code);
+    }
+
+    public static boolean nonNull(PacsConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 135 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/ScaleConfig.java

@@ -0,0 +1,135 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 量表映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-04-13
+ */
+@Getter
+@Setter
+public class ScaleConfig{
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院项目名称
+     */
+    @Excel(name = "医院量表名称", width = 60, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院量表名称")
+    private String hisName;
+
+    /**
+     * 标准名称
+     */
+    @Excel(name = "标准量表名称", width = 60, orderNum = "3", isImportField = "true")
+    @NotBlank(message = "请输入标准量表名称")
+    private String uniqueName;
+
+    /**
+     * 标准编码
+     */
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+
+    @Override
+    public String toString() {
+        return "ScaleConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        ScaleConfig scaleConfig = (ScaleConfig) o;
+        return Objects.equals(id, scaleConfig.id)
+                && Objects.equals(isDeleted, scaleConfig.isDeleted)
+                && Objects.equals(hospitalId, scaleConfig.hospitalId)
+                && Objects.equals(hisName, scaleConfig.hisName)
+                && Objects.equals(uniqueName, scaleConfig.uniqueName)
+                && Objects.equals(code, scaleConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, uniqueName, code);
+    }
+
+    public static boolean nonNull(ScaleConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 135 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/TcmdiseaseConfig.java

@@ -0,0 +1,135 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 中医疾病映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-05-13
+ */
+@Getter
+@Setter
+public class TcmdiseaseConfig{
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院项目名称
+     */
+    @Excel(name = "中医疾病名称", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院中医疾病名称")
+    private String hisName;
+
+    /**
+     * 标准名称
+     */
+    @Excel(name = "标准中医疾病名称", width = 40, orderNum = "3", isImportField = "true")
+    @NotBlank(message = "请输入标准中医疾病名称")
+    private String uniqueName;
+
+    /**
+     * 标准编码
+     */
+    @Excel(name = "中医疾病代码", width = 40, orderNum = "2", isImportField = "true")
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+    @Override
+    public String toString() {
+        return "TcmdiseaseConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        TcmdiseaseConfig tcmdiseaseConfig = (TcmdiseaseConfig) o;
+        return Objects.equals(id, tcmdiseaseConfig.id)
+                && Objects.equals(isDeleted, tcmdiseaseConfig.isDeleted)
+                && Objects.equals(hospitalId, tcmdiseaseConfig.hospitalId)
+                && Objects.equals(hisName, tcmdiseaseConfig.hisName)
+                && Objects.equals(uniqueName, tcmdiseaseConfig.uniqueName)
+                && Objects.equals(code, tcmdiseaseConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, uniqueName, code);
+    }
+
+    public static boolean nonNull(TcmdiseaseConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 135 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/TcmsyndromeConfig.java

@@ -0,0 +1,135 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 中医证候映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-05-13
+ */
+@Getter
+@Setter
+public class TcmsyndromeConfig {
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院项目名称
+     */
+    @Excel(name = "医院中医证候名称", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院中医证候名称")
+    private String hisName;
+
+    /**
+     * 标准名称
+     */
+    @Excel(name = "标准中医证候名称", width = 40, orderNum = "3", isImportField = "true")
+    @NotBlank(message = "请输入标准中医证候名称")
+    private String uniqueName;
+
+    /**
+     * 标准编码
+     */
+    @Excel(name = "中医证候代码", width = 40, orderNum = "2", isImportField = "true")
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+    @Override
+    public String toString() {
+        return "TcmsyndromeConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        TcmsyndromeConfig tcmsyndromeConfig = (TcmsyndromeConfig) o;
+        return Objects.equals(id, tcmsyndromeConfig.id)
+                && Objects.equals(isDeleted, tcmsyndromeConfig.isDeleted)
+                && Objects.equals(hospitalId, tcmsyndromeConfig.hospitalId)
+                && Objects.equals(hisName, tcmsyndromeConfig.hisName)
+                && Objects.equals(uniqueName, tcmsyndromeConfig.uniqueName)
+                && Objects.equals(code, tcmsyndromeConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, uniqueName, code);
+    }
+
+    public static boolean nonNull(TcmsyndromeConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 135 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/TransfusionConfig.java

@@ -0,0 +1,135 @@
+package com.lantone.entity.cdss;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.diagbot.util.StringUtil;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * <p>
+ * 输血映射表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2020-08-31
+ */
+@Getter
+@Setter
+public class TransfusionConfig {
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院用血类型
+     */
+    @Excel(name = "医院输血类型", width = 40, orderNum = "1", isImportField = "true")
+    @NotBlank(message = "请输入医院输血类型")
+    private String hisName;
+
+    /**
+     * 标准用血术语
+     */
+    @Excel(name = "标准输血类型", width = 40, orderNum = "3", isImportField = "true")
+    @NotBlank(message = "请输入标准输血类型")
+    private String uniqueName;
+
+    /**
+     * 对应项编码
+     */
+    //@Excel(name = "对应项编码", width = 40, orderNum = "2")
+    private String code;
+
+    /**
+     * 是否匹配(0-未匹配、1-已匹配)
+     */
+    @Excel(name = "是否匹配【未匹配、已匹配】", width = 20, orderNum = "4", 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")
+    private Integer source;
+
+    @Override
+    public String toString() {
+        return "TransfusionConfig{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", hospitalId=" + hospitalId +
+                ", hisName=" + hisName +
+                ", uniqueName=" + uniqueName +
+                ", code=" + code +
+                "}";
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        TransfusionConfig transfusionConfig = (TransfusionConfig) o;
+        return Objects.equals(id, transfusionConfig.id)
+                && Objects.equals(isDeleted, transfusionConfig.isDeleted)
+                && Objects.equals(hospitalId, transfusionConfig.hospitalId)
+                && Objects.equals(hisName, transfusionConfig.hisName)
+                && Objects.equals(uniqueName, transfusionConfig.uniqueName)
+                && Objects.equals(code, transfusionConfig.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, isDeleted, hospitalId, hisName, uniqueName, code);
+    }
+
+    public static boolean nonNull(TransfusionConfig o) {
+        return !(o == null
+                || (o.hospitalId == null
+                && StringUtil.isBlank(o.hisName)
+                && StringUtil.isBlank(o.uniqueName)
+                && StringUtil.isBlank(o.code)));
+    }
+}

+ 23 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/AdministrationRouteConfigWrapper.java

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

+ 23 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/AnesthesiaConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/DeptConfigWrapper.java

@@ -0,0 +1,24 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/DiseaseConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/DrugConfigWrapper.java

@@ -0,0 +1,28 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/LisConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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;
+}

+ 58 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/MappingConfigWrapper.java

@@ -0,0 +1,58 @@
+package com.lantone.entity.cdss.wrapper;
+
+import com.lantone.entity.cdss.MappingConfig;
+import com.lantone.common.util.StringUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/10 19:27
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@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) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        MappingConfigWrapper mappingConfigWrapper = (MappingConfigWrapper) o;
+        return super.equals(o)
+                && Objects.equals(uniqueName, mappingConfigWrapper.uniqueName)
+                && Objects.equals(form, mappingConfigWrapper.form)
+                && Objects.equals(code, mappingConfigWrapper.code);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(uniqueName, form, code) + super.hashCode();
+    }*/
+
+    public static boolean nonNull(MappingConfigWrapper o) {
+        return !(o == null
+                || (StringUtil.isBlank(o.uniqueName)
+                && o.status == null
+                && StringUtil.isBlank(o.form)
+                && o.formStatus == null
+                && StringUtil.isBlank(o.code)
+                && StringUtil.isBlank(o.approval)))
+                || MappingConfig.nonNull(o);
+    }
+}

+ 23 - 0
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/NurseConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/OperationConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/PacsConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/ScaleConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/TcmdiseaseConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/TcmsyndromeConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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
mdsp-service/src/main/java/com/lantone/entity/cdss/wrapper/TransfusionConfigWrapper.java

@@ -0,0 +1,23 @@
+package com.lantone.entity.cdss.wrapper;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.lantone.entity.cdss.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;
+}

+ 167 - 0
mdsp-service/src/main/java/com/lantone/entity/med/KlConcept.java

@@ -0,0 +1,167 @@
+package com.lantone.entity.med;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 概念表
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+public class KlConcept implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键,概念id
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 对应术语id
+     */
+    private Long libId;
+
+    /**
+     * 概念名称(冗余)
+     */
+    private String libName;
+
+    /**
+     * 概念词性type(冗余)
+     */
+    private Integer libType;
+
+    /**
+     * 启用状态(0:禁用,1:启用)
+     */
+    private Integer status;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+
+    public Long getLibId() {
+        return libId;
+    }
+
+    public void setLibId(Long libId) {
+        this.libId = libId;
+    }
+
+    public String getLibName() {
+        return libName;
+    }
+
+    public void setLibName(String libName) {
+        this.libName = libName;
+    }
+
+    public Integer getLibType() {
+        return libType;
+    }
+
+    public void setLibType(Integer libType) {
+        this.libType = libType;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    @Override
+    public String toString() {
+        return "KlConcept{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", libId=" + libId +
+                ", libName=" + libName +
+                ", libType=" + libType +
+                ", status=" + status +
+                "}";
+    }
+}

+ 198 - 0
mdsp-service/src/main/java/com/lantone/entity/med/KlDisease.java

@@ -0,0 +1,198 @@
+package com.lantone.entity.med;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 疾病表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2022-03-03
+ */
+@Data
+public class KlDisease implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 术语概念id
+     */
+    private Long conceptId;
+
+    /**
+     * 科室概念id
+     */
+    private Long deptId;
+
+    /**
+     * ICD10编号
+     */
+    private String icd10Code;
+
+    /**
+     * 国临名称
+     */
+    private String guoname;
+
+    /**
+     * 国临编码
+     */
+    private String guocode;
+
+    /**
+     * 国临拼音
+     */
+    private String guospell;
+
+    /**
+     * 病程
+     */
+    private String course;
+
+    /**
+     * 诱因
+     */
+    private String inducement;
+
+    /**
+     * 饮食禁忌
+     */
+    private String foodProhibition;
+
+    /**
+     * 危险因素
+     */
+    private String hazard;
+
+    /**
+     * 治愈性
+     */
+    private String healing;
+
+    /**
+     * 危害性
+     */
+    private String pernicious;
+
+    /**
+     * 临床分类
+     */
+    private String clinicType;
+
+    /**
+     * 好发地区
+     */
+    private String vulArea;
+
+    /**
+     * 好发人群
+     */
+    private String vulCrowd;
+
+    /**
+     * 发病率
+     */
+    private Double incidence;
+
+    /**
+     * 是否传染(0:否,1:是)
+     */
+    private Integer isInfect;
+
+    /**
+     * 并发症
+     */
+    private String complication;
+
+    /**
+     * 病因
+     */
+    private String pathogeny;
+
+    /**
+     * 疾病分型
+     */
+    private String disType;
+
+    /**
+     * 中西医疾病(0:通用,1:西,2:中)
+     */
+    private Integer chWestern;
+
+    /**
+     * 是否常见病(0:否,1:是)
+     */
+    private Integer isCommonDis;
+
+    /**
+     * 是否遗传(0:否,1:是)
+     */
+    private Integer isHeredity;
+
+    /**
+     * 简称
+     */
+    private String nameSimple;
+
+    /**
+     * 英文简称
+     */
+    private String enNameSimple;
+
+    /**
+     * 英文名称
+     */
+    private String enName;
+
+    /**
+     * 形态学分类代码
+     */
+    private String morphology;
+
+    /**
+     * 肿瘤细胞类型
+     */
+    private String tumorCellType;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 184 - 0
mdsp-service/src/main/java/com/lantone/entity/med/KlLibraryInfo.java

@@ -0,0 +1,184 @@
+package com.lantone.entity.med;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 术语表
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+public class KlLibraryInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 概念id
+     */
+    private Long conceptId;
+
+    /**
+     * 是否标准词,1:是,0:否
+     */
+    private Integer isConcept;
+
+    /**
+     * 词性id
+     */
+    private Integer typeId;
+
+    /**
+     * 拼音
+     */
+    private String spell;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    public Long getConceptId() {
+        return conceptId;
+    }
+
+    public void setConceptId(Long conceptId) {
+        this.conceptId = conceptId;
+    }
+    public Integer getIsConcept() {
+        return isConcept;
+    }
+
+    public void setIsConcept(Integer isConcept) {
+        this.isConcept = isConcept;
+    }
+    public Integer getTypeId() {
+        return typeId;
+    }
+
+    public void setTypeId(Integer typeId) {
+        this.typeId = typeId;
+    }
+    public String getSpell() {
+        return spell;
+    }
+
+    public void setSpell(String spell) {
+        this.spell = spell;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "KlLibraryInfo{" +
+            "id=" + id +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", name=" + name +
+            ", conceptId=" + conceptId +
+            ", isConcept=" + isConcept +
+            ", typeId=" + typeId +
+            ", spell=" + spell +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 158 - 0
mdsp-service/src/main/java/com/lantone/entity/med/KlOperation.java

@@ -0,0 +1,158 @@
+package com.lantone.entity.med;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 手术扩展表
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-06-15
+ */
+public class KlOperation implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 术语概念id
+     */
+    private Long conceptId;
+
+    /**
+     * 手术级别(0,1,2,3,4)
+     */
+    private Integer operationLevel;
+
+    /**
+     * 手术操作码
+     */
+    private String operationCode;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public Long getConceptId() {
+        return conceptId;
+    }
+
+    public void setConceptId(Long conceptId) {
+        this.conceptId = conceptId;
+    }
+    public Integer getOperationLevel() {
+        return operationLevel;
+    }
+
+    public void setOperationLevel(Integer operationLevel) {
+        this.operationLevel = operationLevel;
+    }
+    public String getOperationCode() {
+        return operationCode;
+    }
+
+    public void setOperationCode(String operationCode) {
+        this.operationCode = operationCode;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "KlOperation{" +
+            "id=" + id +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", conceptId=" + conceptId +
+            ", operationLevel=" + operationLevel +
+            ", operationCode=" + operationCode +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 147 - 0
mdsp-service/src/main/java/com/lantone/entity/med/TcmDisease.java

@@ -0,0 +1,147 @@
+package com.lantone.entity.med;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 中医疾病表
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-06-07
+ */
+@TableName("kl_tcm_disease")
+public class TcmDisease implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 术语概念id
+     */
+    private Long conceptId;
+
+    /**
+     * 编码
+     */
+    private String code;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public LocalDateTime getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(LocalDateTime gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public LocalDateTime getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(LocalDateTime gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public Long getConceptId() {
+        return conceptId;
+    }
+
+    public void setConceptId(Long conceptId) {
+        this.conceptId = conceptId;
+    }
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "TcmDisease{" +
+            "id=" + id +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", conceptId=" + conceptId +
+            ", code=" + code +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 147 - 0
mdsp-service/src/main/java/com/lantone/entity/med/TcmSyndrome.java

@@ -0,0 +1,147 @@
+package com.lantone.entity.med;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 中医证候表
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-06-07
+ */
+@TableName("kl_tcm_syndrome")
+public class TcmSyndrome implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 术语概念id
+     */
+    private Long conceptId;
+
+    /**
+     * 编码
+     */
+    private String code;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public LocalDateTime getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(LocalDateTime gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public LocalDateTime getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(LocalDateTime gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public Long getConceptId() {
+        return conceptId;
+    }
+
+    public void setConceptId(Long conceptId) {
+        this.conceptId = conceptId;
+    }
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "TcmSyndrome{" +
+            "id=" + id +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", conceptId=" + conceptId +
+            ", code=" + code +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 79 - 0
mdsp-service/src/main/java/com/lantone/enums/cdss/ConceptTypeEnum.java

@@ -0,0 +1,79 @@
+package com.lantone.enums.cdss;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/9/10 15:51
+ */
+public enum ConceptTypeEnum implements KeyedNamed {
+
+    LisPack(1, "检验套餐"),
+    Lis(2, "检验细项"),
+    Pacs(3, "检查"),
+    Disease(4, "诊断"),
+    Drug(5, "药品"),
+    Operation(6, "手术和操作"),
+    Dept(7, "科室"),
+    Transfusion(8, "输血"),
+    Symptom(9,"症状"),
+    //PacsSubName(9, "检查子项"),
+    Scale(10, "量表"),
+    Nurse(11, "护理"),
+    Tcmdisease(12,"中医疾病"),
+    Tcmsyndrome(13,"中医证候"),
+    Anesthesia(14, "麻醉"),
+    Form(15, "药品剂型"),
+    AdministrationRoute(16,"给药途径");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    ConceptTypeEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static ConceptTypeEnum getEnum(int key) {
+        for (ConceptTypeEnum item : ConceptTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static ConceptTypeEnum getEnum(String name) {
+        for (ConceptTypeEnum item : ConceptTypeEnum.values()) {
+            if (item.name.equals(name)) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        ConceptTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    public static Integer getKey(String name) {
+        ConceptTypeEnum item = getEnum(name);
+        return item != null ? item.key : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 67 - 0
mdsp-service/src/main/java/com/lantone/enums/cdss/MatchSourceEnum.java

@@ -0,0 +1,67 @@
+package com.lantone.enums.cdss;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/15 13:20
+ */
+public enum MatchSourceEnum implements KeyedNamed {
+    StandWord(1, "标准词"),
+    SynonymsWord(2, "同义词"),
+    Code(3,"编码"),
+    History(4,"历史数据"),
+    SimilarWord(5,"相似词"),
+    Approval(6,"国药准字");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    MatchSourceEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static MatchSourceEnum getEnum(int key) {
+        for (MatchSourceEnum item : MatchSourceEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static MatchSourceEnum getEnum(String name) {
+        for (MatchSourceEnum item : MatchSourceEnum.values()) {
+            if (item.name.equals(name)) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        MatchSourceEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    public static Integer getKey(String name) {
+        MatchSourceEnum item = getEnum(name);
+        return item != null ? item.key : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 50 - 0
mdsp-service/src/main/java/com/lantone/enums/cdss/StatusEnum.java

@@ -0,0 +1,50 @@
+package com.lantone.enums.cdss;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2018年11月21日 下午2:31:42
+ */
+public enum StatusEnum implements KeyedNamed {
+    Disable(0, "禁用"),
+    Enable(1, "启用");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    StatusEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static StatusEnum getEnum(int key) {
+        for (StatusEnum item : StatusEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        StatusEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}
+

+ 79 - 0
mdsp-service/src/main/java/com/lantone/enums/med/ConceptTypeEnum.java

@@ -0,0 +1,79 @@
+package com.lantone.enums.med;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/9/10 15:51
+ */
+public enum ConceptTypeEnum implements KeyedNamed {
+
+    LisPack(1, "检验套餐"),
+    Lis(2, "检验细项"),
+    Pacs(3, "检查"),
+    Disease(4, "诊断"),
+    Drug(5, "药品"),
+    Operation(6, "手术和操作"),
+    Dept(7, "科室"),
+    Transfusion(8, "输血"),
+    Symptom(9, "症状"),
+    //PacsSubName(9, "检查子项"),
+    Scale(10, "量表"),
+    Nurse(11, "护理"),
+    Tcmdisease(12, "中医疾病"),
+    Tcmsyndrome(13, "中医证候"),
+    Anesthesia(14, "麻醉"),
+    Form(15, "药品剂型"),
+    AdministrationRoute(16, "给药途径");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    ConceptTypeEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static ConceptTypeEnum getEnum(int key) {
+        for (ConceptTypeEnum item : ConceptTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static ConceptTypeEnum getEnum(String name) {
+        for (ConceptTypeEnum item : ConceptTypeEnum.values()) {
+            if (item.name.equals(name)) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        ConceptTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    public static Integer getKey(String name) {
+        ConceptTypeEnum item = getEnum(name);
+        return item != null ? item.key : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 132 - 0
mdsp-service/src/main/java/com/lantone/enums/med/LexiconEnum.java

@@ -0,0 +1,132 @@
+package com.lantone.enums.med;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/2/24 10:46
+ */
+public enum LexiconEnum implements KeyedNamed {
+
+    Disease(100,"疾病"),
+    Medicine(101,"药品通用名"),
+    Form(102,"药品剂型"),
+    Symptom(103,"症状"),
+    Vital(104,"体格检查项目"),
+    VitalResult(105,"体格检查结果"),
+    Operation(106,"手术和操作"),
+    LisName(107,"实验室检查套餐"),
+    LisSubName(108,"实验室检查子项目"),
+    PacsName(109,"辅助检查项目"),
+    PacsSubName(110,"辅助检查子项目"),
+    PacsDescribe(111,"辅助检查描述"),
+    PacsResult(112,"辅助检查结果"),
+    Transfusion(113,"输血类型"),
+    Anesthesia(114,"麻醉"),
+    Dept(115,"科室"),
+    Gender(116,"性别"),
+    Group(117,"人群"),
+    Food(118,"食物"),
+    Allergen(119,"其他过敏原"),
+    Device(120,"医疗器械及物品"),
+    AdministrationRoute(121,"给药途径"),
+    Part(122,"部位"),
+    Nurse(123,"护理"),
+    Scale(124,"量表"),
+    Unit(125,"单位"),
+    Nature(126,"性质"),
+    Tcmdisease(127, "中医疾病"),
+    Tcmsyndrome(128, "中医证候"),
+    Inducement(129, "诱因"),
+    Law(130, "政策法规"),
+    not(131, "否定词"),
+    Physicotherapy(132, "物理治疗"),
+    ICD10Class(300,"ICD10疾病类别"),
+    MedChemClass(301,"药品化学物质类别"),
+    MedZhiLiaoClass(302,"药品治疗学类别"),
+    MedYaoLiClass(303,"药品药理学类别"),
+    MedJiePouClass(304,"药品解剖学类别"),
+    SymptomClass(305,"症状类别"),
+    OperationClass(306,"手术和操作类别"),
+    DisSysType(307,"疾病系统分类"),
+    DiseaseCollection(308,"疾病集合"),
+    MedicineCollection(309,"药品通用名集合"),
+    FormCollection(310,"药品剂型集合"),
+    SymptomCollection(311,"症状集合"),
+    VitalCollection(312,"体格检查项目集合"),
+    VitalResultCollection(313,"体格检查结果集合"),
+    OperationCollection(314,"手术和操作集合"),
+    LisNameCollection(315,"实验室检查套餐集合"),
+    PacsNameCollection(316,"辅助检查项目集合"),
+    PacsSubNameCollection(317,"辅助检查子项目集合"),
+    PacsDescribeCollection(318,"辅助检查描述集合"),
+    PacsResultCollection(319,"辅助检查结果集合"),
+    AnesthesiaCollection(320,"麻醉集合"),
+    DeptCollection(321,"科室集合"),
+    FoodCollection(322,"食物集合"),
+    AllergenCollection(323,"其他过敏原集合"),
+    DeviceCollection(324,"医疗器械及物品集合"),
+    PartCollection(325,"部位集合"),
+    TcmdiseaseCollection(326,"中医疾病集合"),
+    TcmsyndromeCollection(327,"中医证候集合"),
+    InducementCollection(328,"诱因集合"),
+    DugrouteCollection(329,"给药途径集合"),
+    ICD10ClassNode(400,"ICD10疾病类别根节点"),
+    DeptDiseaseNode(401,"科室疾病类别根节点"),
+    MedChemClassNode(402,"药品化学物质类别根节点"),
+    MedZhiLiaoClassNode(403,"药品治疗学类别根节点"),
+    MedYaoLiClassNode(404,"药品药理学类别根节点"),
+    MedJiePouClassNode(405,"药品解剖学类别根节点"),
+    SymptomClassNode(406,"症状类别根节点"),
+    OperationClassNode(407,"手术和操作类别根节点"),
+    LisClassNode(408,"实验室检查类别根节点"),
+    PacsClassNode(409,"辅助检查类别根节点"),
+    Age(410,"年龄");
+
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    LexiconEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static LexiconEnum getEnum(int key) {
+        for (LexiconEnum item : LexiconEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static LexiconEnum getEnum(String value) {
+        for (LexiconEnum item : LexiconEnum.values()) {
+            if (item.getName().equals(value)) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        LexiconEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 66 - 0
mdsp-service/src/main/java/com/lantone/enums/med/MatchSourceEnum.java

@@ -0,0 +1,66 @@
+package com.lantone.enums.med;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/15 13:20
+ */
+public enum MatchSourceEnum implements KeyedNamed {
+    StandWord(1, "标准词"),
+    SynonymsWord(2, "同义词"),
+    Code(3,"编码"),
+    History(4,"历史数据"),
+    SimilarWord(5,"相似词");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    MatchSourceEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static MatchSourceEnum getEnum(int key) {
+        for (MatchSourceEnum item : MatchSourceEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static MatchSourceEnum getEnum(String name) {
+        for (MatchSourceEnum item : MatchSourceEnum.values()) {
+            if (item.name.equals(name)) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        MatchSourceEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    public static Integer getKey(String name) {
+        MatchSourceEnum item = getEnum(name);
+        return item != null ? item.key : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 50 - 0
mdsp-service/src/main/java/com/lantone/enums/med/StatusEnum.java

@@ -0,0 +1,50 @@
+package com.lantone.enums.med;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2018年11月21日 下午2:31:42
+ */
+public enum StatusEnum implements KeyedNamed {
+    Disable(0, "禁用"),
+    Enable(1, "启用");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    StatusEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static StatusEnum getEnum(int key) {
+        for (StatusEnum item : StatusEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        StatusEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}
+

+ 68 - 0
mdsp-service/src/main/java/com/lantone/facade/cdss/DictionaryFacade.java

@@ -0,0 +1,68 @@
+package com.lantone.facade.cdss;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.util.ListUtil;
+import com.lantone.dto.cdss.DictionaryInfoDTO;
+import com.lantone.entity.cdss.DictionaryInfo;
+import com.lantone.service.cdss.impl.DictionaryInfoServiceImpl;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class DictionaryFacade extends DictionaryInfoServiceImpl {
+
+    /**
+     * 返回字典信息
+     *
+     * @return
+     */
+    public Map<Long, List<DictionaryInfoDTO>> getList() {
+        List<DictionaryInfo> list = this.list(new QueryWrapper<DictionaryInfo>()
+                .in("return_type", ListUtil.arrayToList(new Long[] { 0L, 2L }))
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .orderByAsc("group_type", "order_no"));
+        List<DictionaryInfoDTO> listRes = BeanUtil.listCopyTo(list, DictionaryInfoDTO.class);
+        return EntityUtil.makeEntityListMap(listRes, "groupType");
+    }
+
+    /**
+     * 返回字典信息
+     *
+     * @return
+     */
+    public Map<Long, List<DictionaryInfoDTO>> getListBack() {
+        List<DictionaryInfo> list = this.list(new QueryWrapper<DictionaryInfo>()
+                .in("return_type", ListUtil.arrayToList(new Long[] { 0L, 1L }))
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .orderByAsc("group_type", "order_no"));
+        List<DictionaryInfoDTO> listRes = BeanUtil.listCopyTo(list, DictionaryInfoDTO.class);
+        return EntityUtil.makeEntityListMap(listRes, "groupType");
+    }
+
+
+    /**
+     * 返回指定字典信息
+     *
+     * @param groupType
+     * @return
+     */
+    public List<DictionaryInfoDTO> getListByGroupType(Integer groupType) {
+        List<DictionaryInfo> list = this.list(new QueryWrapper<DictionaryInfo>()
+                .eq("group_type", groupType)
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .orderByAsc("order_no"));
+        List<DictionaryInfoDTO> listRes = BeanUtil.listCopyTo(list, DictionaryInfoDTO.class);
+        return listRes;
+    }
+    
+}

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 2544 - 0
mdsp-service/src/main/java/com/lantone/facade/cdss/MappingConfigFacade.java


+ 474 - 0
mdsp-service/src/main/java/com/lantone/facade/med/KlConceptFacade.java

@@ -0,0 +1,474 @@
+package com.lantone.facade.med;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.lantone.dto.med.IndexBatchDTO;
+import com.lantone.dto.med.KllisDetailDTO;
+import com.lantone.entity.med.KlConcept;
+import com.lantone.entity.med.KlDisease;
+import com.lantone.entity.med.KlLibraryInfo;
+import com.lantone.entity.med.KlOperation;
+import com.lantone.entity.med.TcmDisease;
+import com.lantone.entity.med.TcmSyndrome;
+import com.lantone.enums.med.ConceptTypeEnum;
+import com.diagbot.enums.IsDeleteEnum;
+import com.lantone.enums.med.LexiconEnum;
+import com.lantone.enums.med.MatchSourceEnum;
+import com.lantone.enums.med.StatusEnum;
+import com.lantone.service.med.impl.KlConceptServiceImpl;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.util.ListUtil;
+import com.lantone.vo.med.ConceptVO;
+import com.lantone.vo.med.FilterVO;
+import com.lantone.vo.med.IndexByApprovalVO;
+import com.lantone.vo.med.KllisDetailVO;
+import com.google.common.collect.Lists;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @Description:
+ * @author: gaodm
+ * @time: 2021/1/26 13:05
+ */
+@Component
+public class KlConceptFacade extends KlConceptServiceImpl {
+
+    //////////////
+    @Autowired
+    private KlDiseaseFacade klDiseaseFacade;
+
+    //////////////
+    @Autowired
+    private KlOperationFacade klOperationFacade;
+    @Autowired
+    private TcmDiseaseFacade tcmDiseaseFacade;
+
+    ///////////////////////////
+    @Autowired
+    private TcmSyndromeFacade tcmSyndromeFacade;
+
+    ////////////
+    @Autowired
+    private KlLibraryInfoFacade klLibraryInfoFacade;
+
+
+    //////////////////////////////////
+    /**
+     * 批量校验标准术语
+     *
+     * @param conceptVO
+     * @return
+     */
+    public List<IndexBatchDTO> getConceptNames(ConceptVO conceptVO) {
+        List<IndexBatchDTO> retList = Lists.newLinkedList();
+        Integer type = convertType(conceptVO.getType(), false);
+
+        if (conceptVO.getSource().equals(-1)) {
+            if (ListUtil.isEmpty(conceptVO.getIds())) {
+                return retList;
+            }
+            //根据id检索
+            List<KlConcept> concepts = Lists.newLinkedList();
+            List<KlConcept> tempList = Lists.newLinkedList();
+            QueryWrapper<KlConcept> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
+            if (conceptVO.getStatus() != null) {
+                queryWrapper.eq("status", conceptVO.getStatus());
+                if (conceptVO.getStatus().equals(StatusEnum.Disable.getKey())) {
+                    tempList = this.list(queryWrapper);
+                    if (ListUtil.isNotEmpty(tempList)) {
+                        Map<Long, KlConcept> tempMap = tempList.stream().collect(Collectors.toMap(KlConcept::getId, v -> v));
+                        for (Map.Entry<Long, KlConcept> entry : tempMap.entrySet()) {
+                            if (conceptVO.getIds().contains(entry.getKey())) {
+                                concepts.add(entry.getValue());
+                            }
+                        }
+                    }
+                }
+            }
+            if (conceptVO.getStatus() == null || conceptVO.getStatus().equals(StatusEnum.Enable.getKey())) {
+                queryWrapper.in("id", conceptVO.getIds());
+                concepts = this.list(queryWrapper);
+            }
+            for (KlConcept concept : concepts) {
+                IndexBatchDTO dto = new IndexBatchDTO();
+                dto.setId(concept.getId());
+                dto.setName(concept.getLibName());
+                dto.setStatus(concept.getStatus());
+                dto.setType(convertType(concept.getLibType(), true));
+                retList.add(dto);
+            }
+        } else if (conceptVO.getSource().equals(MatchSourceEnum.StandWord.getKey())) {
+            QueryWrapper<KlConcept> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
+            if (conceptVO.getStatus() != null) {
+                queryWrapper.eq("status", conceptVO.getStatus());
+            }
+            if (ListUtil.isNotEmpty(conceptVO.getNames())) {
+                queryWrapper.in("lib_name", conceptVO.getNames());
+            }
+            if (conceptVO.getType().equals(ConceptTypeEnum.Pacs.getKey())) {
+                //辅检同时检索辅检项目和辅检子项
+                queryWrapper.in("lib_type", Arrays.asList(LexiconEnum.PacsName.getKey(), LexiconEnum.PacsSubName.getKey()));
+            } else {
+                queryWrapper.eq("lib_type", type);
+            }
+            List<KlConcept> concepts = this.list(queryWrapper);
+
+            if (ListUtil.isNotEmpty(concepts)) {
+                for (KlConcept concept : concepts) {
+                    IndexBatchDTO dto = new IndexBatchDTO();
+                    dto.setId(concept.getId());
+                    dto.setName(concept.getLibName());
+                    dto.setStatus(concept.getStatus());
+                    retList.add(dto);
+                }
+            }
+        } else if (conceptVO.getSource().equals(MatchSourceEnum.SynonymsWord.getKey())) {
+            if (ListUtil.isEmpty(conceptVO.getNames())) {
+                return retList;
+            }
+            QueryWrapper<KlLibraryInfo> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .eq("is_concept", 0)
+                    .in("name", conceptVO.getNames());
+            if (conceptVO.getType().equals(ConceptTypeEnum.Pacs.getKey())) {
+                //辅检同时检索辅检项目和辅检子项
+                queryWrapper.in("type_id", Arrays.asList(LexiconEnum.PacsName.getKey(), LexiconEnum.PacsSubName.getKey()));
+            } else {
+                queryWrapper.eq("type_id", type);
+            }
+            List<KlLibraryInfo> libratyInfos = klLibraryInfoFacade.list(queryWrapper);
+            if (ListUtil.isEmpty(libratyInfos)) {
+                return retList;
+            }
+            Map<Long, List<KlLibraryInfo>> libraryInfoMap
+                    = libratyInfos.stream().collect(Collectors.groupingBy(KlLibraryInfo::getConceptId));
+            List<Long> synonymsRelatedConceptIds
+                    = libratyInfos.stream().map(KlLibraryInfo::getConceptId).collect(Collectors.toList());
+            QueryWrapper<KlConcept> conceptQueryWrapper = new QueryWrapper<>();
+            conceptQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .in("id", synonymsRelatedConceptIds);
+            if (conceptVO.getStatus() != null) {
+                conceptQueryWrapper.eq("status", conceptVO.getStatus());
+            }
+            List<KlConcept> synonymsRelatedConcepts = this.list(conceptQueryWrapper);
+            Map<Long, KlConcept> conceptMap
+                    = synonymsRelatedConcepts.stream().collect(Collectors.toMap(KlConcept::getId, v -> v));
+
+            if (conceptMap != null && conceptMap.size() > 0) {
+                for (Map.Entry<Long, KlConcept> entry : conceptMap.entrySet()) {
+                    KlConcept concept = entry.getValue();
+                    if (libraryInfoMap.containsKey(entry.getKey())) {
+                        for (KlLibraryInfo libraryInfo : libraryInfoMap.get(entry.getKey())) {
+                            if (!conceptVO.getNames().contains(libraryInfo.getName())) {
+                                continue;
+                            }
+                            IndexBatchDTO indexBatchDTO = new IndexBatchDTO();
+                            indexBatchDTO.setId(concept.getId());
+                            indexBatchDTO.setName(concept.getLibName());
+                            indexBatchDTO.setStatus(concept.getStatus());
+                            indexBatchDTO.setSynonyms(libraryInfo.getName());
+                            retList.add(indexBatchDTO);
+                        }
+                    }
+                }
+            }
+        } else if (conceptVO.getSource().equals(MatchSourceEnum.Code.getKey())) {
+            if (ListUtil.isEmpty(conceptVO.getNames())) {
+                return retList;
+            }
+            List<Long> conceptIds = Lists.newArrayList();
+            Map<Long, List<String>> codeMap = new HashMap<>();
+            if (type.equals(LexiconEnum.Disease.getKey())) {
+                List<KlDisease> diseases = klDiseaseFacade.list(new QueryWrapper<KlDisease>()
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .in("icd10_code", conceptVO.getNames()));
+                if (ListUtil.isNotEmpty(diseases)) {
+                    conceptIds = diseases.stream().map(KlDisease::getConceptId).distinct().collect(Collectors.toList());
+                    codeMap = diseases.stream()
+                            .collect(Collectors.groupingBy(KlDisease::getConceptId,
+                                    Collectors.mapping(KlDisease::getIcd10Code, Collectors.toList())));
+                }
+            } else if (type.equals(LexiconEnum.Operation.getKey())) {
+                List<KlOperation> operations = klOperationFacade.list(new QueryWrapper<KlOperation>()
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .in("operation_code", conceptVO.getNames()));
+                if (ListUtil.isNotEmpty(operations)) {
+                    conceptIds = operations.stream().map(KlOperation::getConceptId).distinct().collect(Collectors.toList());
+                    codeMap = operations.stream()
+                            .collect(Collectors.groupingBy(KlOperation::getConceptId,
+                                    Collectors.mapping(KlOperation::getOperationCode, Collectors.toList())));
+                }
+            } else if (type.equals(LexiconEnum.Tcmdisease.getKey())) {
+                List<TcmDisease> tcmDiseases = tcmDiseaseFacade.list(new QueryWrapper<TcmDisease>()
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .in("code", conceptVO.getNames()));
+                if (ListUtil.isNotEmpty(tcmDiseases)) {
+                    conceptIds = tcmDiseases.stream().map(TcmDisease::getConceptId).distinct().collect(Collectors.toList());
+                    codeMap = tcmDiseases.stream().collect(Collectors.groupingBy(TcmDisease::getConceptId,
+                            Collectors.mapping(TcmDisease::getCode, Collectors.toList())));
+                }
+            } else if (type.equals(LexiconEnum.Tcmsyndrome.getKey())) {
+                List<TcmSyndrome> tcmSyndromes = tcmSyndromeFacade.list(new QueryWrapper<TcmSyndrome>()
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .in("code", conceptVO.getNames()));
+                if (ListUtil.isNotEmpty(tcmSyndromes)) {
+                    conceptIds = tcmSyndromes.stream().map(TcmSyndrome::getConceptId).distinct().collect(Collectors.toList());
+                    codeMap = tcmSyndromes.stream().collect(Collectors.groupingBy(TcmSyndrome::getConceptId,
+                            Collectors.mapping(TcmSyndrome::getCode, Collectors.toList())));
+                }
+            }
+            if (ListUtil.isEmpty(conceptIds)) {
+                return retList;
+            }
+            QueryWrapper<KlConcept> qw = new QueryWrapper<KlConcept>()
+                    .eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .in("id", conceptIds);
+            if (conceptVO.getStatus() != null) {
+                qw.eq("status", conceptVO.getStatus());
+            }
+            List<KlConcept> concepts = this.list(qw);
+            Map<Long, KlConcept> conceptMap
+                    = concepts.stream().collect(Collectors.toMap(KlConcept::getId, v -> v));
+            if (conceptMap != null && conceptMap.size() > 0) {
+                for (Map.Entry<Long, KlConcept> entry : conceptMap.entrySet()) {
+                    KlConcept concept = entry.getValue();
+                    if (codeMap.containsKey(entry.getKey())) {
+                        for (String code : codeMap.get(entry.getKey())) {
+                            if (!conceptVO.getNames().contains(code)) {
+                                continue;
+                            }
+                            IndexBatchDTO indexBatchDTO = new IndexBatchDTO();
+                            indexBatchDTO.setId(concept.getId());
+                            indexBatchDTO.setName(concept.getLibName());
+                            indexBatchDTO.setCode(code);
+                            indexBatchDTO.setStatus(concept.getStatus());
+                            retList.add(indexBatchDTO);
+                        }
+                    }
+                }
+            }
+        }
+
+        if (ListUtil.isEmpty(retList)) {
+            return retList;
+        }
+        //关联编码
+        List<Long> conceptIds = retList.stream().map(IndexBatchDTO::getId).collect(Collectors.toList());
+        //诊断关联编码
+        List<KlDisease> diseases = klDiseaseFacade.list(new QueryWrapper<KlDisease>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("concept_id", conceptIds));
+        if (ListUtil.isNotEmpty(diseases)) {
+            Map<Long, KlDisease> idMap = diseases.stream().collect(Collectors.toMap(KlDisease::getConceptId, v -> v));
+            for (IndexBatchDTO dto : retList) {
+                if (idMap.containsKey(dto.getId())) {
+                    dto.setCode(idMap.get(dto.getId()).getIcd10Code());
+                }
+            }
+        }
+        //手术关联编码
+        List<KlOperation> operations = klOperationFacade.list(new QueryWrapper<KlOperation>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("concept_id", conceptIds));
+        if (ListUtil.isNotEmpty(operations)) {
+            Map<Long, KlOperation> idMap = operations.stream().collect(Collectors.toMap(KlOperation::getConceptId, v -> v));
+            for (IndexBatchDTO dto : retList) {
+                if (idMap.containsKey(dto.getId())) {
+                    dto.setCode(idMap.get(dto.getId()).getOperationCode());
+                }
+            }
+        }
+        //中医疾病关联编码
+        List<TcmDisease> tcmDiseases = tcmDiseaseFacade.list(new QueryWrapper<TcmDisease>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("concept_id", conceptIds));
+        if (ListUtil.isNotEmpty(tcmDiseases)) {
+            Map<Long, TcmDisease> idMap = tcmDiseases.stream().collect(Collectors.toMap(TcmDisease::getConceptId, v -> v));
+            for (IndexBatchDTO dto : retList) {
+                if (idMap.containsKey(dto.getId())) {
+                    dto.setCode(idMap.get(dto.getId()).getCode());
+                }
+            }
+        }
+        //中医证候关联编码
+        List<TcmSyndrome> tcmSyndromes = tcmSyndromeFacade.list(new QueryWrapper<TcmSyndrome>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("concept_id", conceptIds));
+        if (ListUtil.isNotEmpty(tcmSyndromes)) {
+            Map<Long, TcmSyndrome> idMap = tcmSyndromes.stream().collect(Collectors.toMap(TcmSyndrome::getConceptId, v -> v));
+            for (IndexBatchDTO dto : retList) {
+                if (idMap.containsKey(dto.getId())) {
+                    dto.setCode(idMap.get(dto.getId()).getCode());
+                }
+            }
+        }
+        return retList;
+    }
+
+
+    ///////////////////////////////////////
+    /**
+     * 术语模糊检索
+     *
+     * @param filterVO
+     * @return
+     */
+    public List<IndexBatchDTO> filter(FilterVO filterVO) {
+        List<IndexBatchDTO> retList = Lists.newArrayList();
+        QueryWrapper<KlConcept> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .like("lib_name", filterVO.getInputStr());
+        if (filterVO.getStatus() != null) {
+            queryWrapper.eq("status", filterVO.getStatus());
+        }
+        List<KlConcept> klConcepts = this.list(queryWrapper);
+        for (KlConcept concept : klConcepts) {
+            IndexBatchDTO indexBatchDTO = new IndexBatchDTO();
+            indexBatchDTO.setId(concept.getId());
+            indexBatchDTO.setName(concept.getLibName());
+            indexBatchDTO.setStatus(concept.getStatus());
+            Integer type = convertType(concept.getLibType(), true);
+            if (type != null) {
+                indexBatchDTO.setType(type);
+                retList.add(indexBatchDTO);
+            }
+        }
+        return retList;
+    }
+
+
+    //////////////////////////////////
+    /**
+     * 国药准字校验
+     *
+     * @param indexByApprovalVO
+     * @return
+     */
+    @Override
+    public List<IndexBatchDTO> indexByApproval(IndexByApprovalVO indexByApprovalVO) {
+        if (ListUtil.isEmpty(indexByApprovalVO.getApprovalList())) {
+            return new ArrayList<>();
+        }
+        return super.indexByApproval(indexByApprovalVO);
+    }
+
+
+    //////////////////////////////////
+    /**
+     * 类型互转
+     *
+     * @param type
+     * @param reverse
+     * @return
+     */
+    public Integer convertType(Integer type, Boolean reverse) {
+        Integer retType = null;
+        if (type == null) {
+            return retType;
+        }
+        if (reverse) {
+            if (type.equals(LexiconEnum.LisName.getKey())
+                    || type.equals(LexiconEnum.LisSubName.getKey())) {
+                retType = ConceptTypeEnum.LisPack.getKey();
+            } else if (type.equals(LexiconEnum.PacsName.getKey())
+                    || type.equals(LexiconEnum.PacsSubName.getKey())) {
+                retType = ConceptTypeEnum.Pacs.getKey();
+            } else if (type.equals(LexiconEnum.Disease.getKey())) {
+                retType = ConceptTypeEnum.Disease.getKey();
+            } else if (type.equals(LexiconEnum.Medicine.getKey())) {
+                retType = ConceptTypeEnum.Drug.getKey();
+            } else if (type.equals(LexiconEnum.Operation.getKey())) {
+                retType = ConceptTypeEnum.Operation.getKey();
+            } else if (type.equals(LexiconEnum.Dept.getKey())) {
+                retType = ConceptTypeEnum.Dept.getKey();
+            } else if (type.equals(LexiconEnum.Transfusion.getKey())) {
+                retType = ConceptTypeEnum.Transfusion.getKey();
+            } else if (type.equals(LexiconEnum.Scale.getKey())) {
+                retType = ConceptTypeEnum.Scale.getKey();
+            } else if (type.equals(LexiconEnum.Nurse.getKey())) {
+                retType = ConceptTypeEnum.Nurse.getKey();
+            } else if (type.equals(LexiconEnum.Tcmdisease.getKey())) {
+                retType = ConceptTypeEnum.Tcmdisease.getKey();
+            } else if (type.equals(LexiconEnum.Tcmsyndrome.getKey())) {
+                retType = ConceptTypeEnum.Tcmsyndrome.getKey();
+            } else if (type.equals(LexiconEnum.Anesthesia.getKey())) {
+                retType = ConceptTypeEnum.Anesthesia.getKey();
+            } else if (type.equals(LexiconEnum.Form.getKey())) {
+                retType = ConceptTypeEnum.Form.getKey();
+            } else if (type.equals(LexiconEnum.AdministrationRoute.getKey())) {
+                retType = ConceptTypeEnum.AdministrationRoute.getKey();
+            }
+        } else {
+            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;
+                case 10:
+                    retType = LexiconEnum.Scale.getKey();
+                    break;
+                case 11:
+                    retType = LexiconEnum.Nurse.getKey();
+                    break;
+                case 12:
+                    retType = LexiconEnum.Tcmdisease.getKey();
+                    break;
+                case 13:
+                    retType = LexiconEnum.Tcmsyndrome.getKey();
+                    break;
+                case 14:
+                    retType = LexiconEnum.Anesthesia.getKey();
+                    break;
+                case 15:
+                    retType = LexiconEnum.Form.getKey();
+                    break;
+                case 16:
+                    retType = LexiconEnum.AdministrationRoute.getKey();
+                default:
+                    break;
+            }
+        }
+        return retType;
+    }
+
+
+
+
+
+    /////////////////////////////////////////
+    public Map<String, KllisDetailDTO> getLisDetaisByNamesFac(KllisDetailVO kllisDetailVO) {
+        List<KllisDetailDTO> list = this.getLisDetaisByNames(kllisDetailVO);
+        Map<String, KllisDetailDTO> res = EntityUtil.makeEntityMap(list, "libName");
+        return res;
+    }
+
+}

+ 14 - 0
mdsp-service/src/main/java/com/lantone/facade/med/KlDiseaseFacade.java

@@ -0,0 +1,14 @@
+package com.lantone.facade.med;
+
+import com.lantone.service.med.impl.KlDiseaseServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @author: gaodm
+ * @time: 2021/1/26 13:07
+ */
+@Component
+public class KlDiseaseFacade extends KlDiseaseServiceImpl {
+
+}

+ 15 - 0
mdsp-service/src/main/java/com/lantone/facade/med/KlLibraryInfoFacade.java

@@ -0,0 +1,15 @@
+package com.lantone.facade.med;
+
+import com.lantone.service.med.impl.KlLibraryInfoServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @author: gaodm
+ * @time: 2021/1/26 13:06
+ */
+@Component
+public class KlLibraryInfoFacade extends KlLibraryInfoServiceImpl {
+
+ 
+}

+ 13 - 0
mdsp-service/src/main/java/com/lantone/facade/med/KlOperationFacade.java

@@ -0,0 +1,13 @@
+package com.lantone.facade.med;
+
+import com.lantone.service.med.impl.KlOperationServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/15 15:07
+ */
+@Component
+public class KlOperationFacade extends KlOperationServiceImpl {
+}

+ 13 - 0
mdsp-service/src/main/java/com/lantone/facade/med/TcmDiseaseFacade.java

@@ -0,0 +1,13 @@
+package com.lantone.facade.med;
+
+import com.lantone.service.med.impl.TcmDiseaseServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/7 11:08
+ */
+@Component
+public class TcmDiseaseFacade extends TcmDiseaseServiceImpl {
+}

+ 13 - 0
mdsp-service/src/main/java/com/lantone/facade/med/TcmSyndromeFacade.java

@@ -0,0 +1,13 @@
+package com.lantone.facade.med;
+
+import com.lantone.service.med.impl.TcmSyndromeServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2021/6/7 11:08
+ */
+@Component
+public class TcmSyndromeFacade extends TcmSyndromeServiceImpl {
+}

+ 18 - 0
mdsp-service/src/main/java/com/lantone/mapper/cdss/DictionaryInfoMapper.java

@@ -0,0 +1,18 @@
+package com.lantone.mapper.cdss;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.entity.cdss.DictionaryInfo;
+
+/**
+ * <p>
+ * CDSS字典表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-25
+ */
+@DS("cdss")
+public interface DictionaryInfoMapper extends BaseMapper<DictionaryInfo> {
+
+}

+ 47 - 0
mdsp-service/src/main/java/com/lantone/mapper/cdss/MappingConfigMapper.java

@@ -0,0 +1,47 @@
+package com.lantone.mapper.cdss;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.lantone.entity.cdss.MappingConfig;
+import com.lantone.entity.cdss.wrapper.MappingConfigWrapper;
+import com.lantone.vo.cdss.MappingConfigPageVO;
+import com.lantone.vo.cdss.RetrievalVO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医学术语映射表 Mapper 接口
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-06-09
+ */
+@DS("cdss")
+public interface MappingConfigMapper extends BaseMapper<MappingConfig> {
+    /**
+     * 分页查询
+     *
+     * @param mappingConfigPageVO
+     * @return
+     */
+    IPage<MappingConfigWrapper> getPage(@Param("mappingConfigPageVO") MappingConfigPageVO mappingConfigPageVO);
+
+    /**
+     * 医院术语检索
+     *
+     * @param retrievalVO
+     * @return
+     */
+    List<MappingConfig> hisNameIndex(RetrievalVO retrievalVO);
+
+    /**
+     * 医院术语-细项检索
+     *
+     * @param retrievalVO
+     * @return
+     */
+    List<MappingConfig> hisDetailNameIndex(RetrievalVO retrievalVO);
+}

+ 29 - 0
mdsp-service/src/main/java/com/lantone/mapper/med/KlConceptMapper.java

@@ -0,0 +1,29 @@
+package com.lantone.mapper.med;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.dto.med.IndexBatchDTO;
+import com.lantone.dto.med.KllisDetailDTO;
+import com.lantone.entity.med.KlConcept;
+import com.lantone.vo.med.IndexByApprovalVO;
+import com.lantone.vo.med.KllisDetailVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 概念表 Mapper 接口
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+@DS("med")
+public interface KlConceptMapper extends BaseMapper<KlConcept> {
+
+    List<IndexBatchDTO> indexByApproval(IndexByApprovalVO indexByApprovalVO);
+
+
+    List<KllisDetailDTO> getLisDetaisByNames(KllisDetailVO kllisDetailVO);
+
+}

+ 18 - 0
mdsp-service/src/main/java/com/lantone/mapper/med/KlDiseaseMapper.java

@@ -0,0 +1,18 @@
+package com.lantone.mapper.med;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.entity.med.KlDisease;
+
+/**
+ * <p>
+ * 疾病表 Mapper 接口
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+@DS("med")
+public interface KlDiseaseMapper extends BaseMapper<KlDisease> {
+
+}

+ 18 - 0
mdsp-service/src/main/java/com/lantone/mapper/med/KlLibraryInfoMapper.java

@@ -0,0 +1,18 @@
+package com.lantone.mapper.med;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.entity.med.KlLibraryInfo;
+
+/**
+ * <p>
+ * 术语表 Mapper 接口
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+@DS("med")
+public interface KlLibraryInfoMapper extends BaseMapper<KlLibraryInfo> {
+
+}

+ 18 - 0
mdsp-service/src/main/java/com/lantone/mapper/med/KlOperationMapper.java

@@ -0,0 +1,18 @@
+package com.lantone.mapper.med;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.entity.med.KlOperation;
+
+/**
+ * <p>
+ * 手术扩展表 Mapper 接口
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-06-15
+ */
+@DS("med")
+public interface KlOperationMapper extends BaseMapper<KlOperation> {
+
+}

+ 18 - 0
mdsp-service/src/main/java/com/lantone/mapper/med/TcmDiseaseMapper.java

@@ -0,0 +1,18 @@
+package com.lantone.mapper.med;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.entity.med.TcmDisease;
+
+/**
+ * <p>
+ * 中医疾病表 Mapper 接口
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-06-07
+ */
+@DS("med")
+public interface TcmDiseaseMapper extends BaseMapper<TcmDisease> {
+
+}

+ 18 - 0
mdsp-service/src/main/java/com/lantone/mapper/med/TcmSyndromeMapper.java

@@ -0,0 +1,18 @@
+package com.lantone.mapper.med;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.entity.med.TcmSyndrome;
+
+/**
+ * <p>
+ * 中医证候表 Mapper 接口
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-06-07
+ */
+@DS("med")
+public interface TcmSyndromeMapper extends BaseMapper<TcmSyndrome> {
+
+}

+ 16 - 0
mdsp-service/src/main/java/com/lantone/service/cdss/DictionaryInfoService.java

@@ -0,0 +1,16 @@
+package com.lantone.service.cdss;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.entity.cdss.DictionaryInfo;
+
+/**
+ * <p>
+ * CDSS字典表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-25
+ */
+public interface DictionaryInfoService extends IService<DictionaryInfo> {
+
+}

+ 45 - 0
mdsp-service/src/main/java/com/lantone/service/cdss/MappingConfigService.java

@@ -0,0 +1,45 @@
+package com.lantone.service.cdss;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.entity.cdss.MappingConfig;
+import com.lantone.entity.cdss.wrapper.MappingConfigWrapper;
+import com.lantone.vo.cdss.MappingConfigPageVO;
+import com.lantone.vo.cdss.RetrievalVO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医学术语映射表 服务类
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-06-09
+ */
+public interface MappingConfigService extends IService<MappingConfig> {
+    /**
+     * 分页查询
+     *
+     * @param mappingConfigPageVO
+     * @return
+     */
+    IPage<MappingConfigWrapper> getPage(@Param("mappingConfigPageVO") MappingConfigPageVO mappingConfigPageVO);
+
+    /**
+     * 医院术语检索
+     *
+     * @param retrievalVO
+     * @return
+     */
+    List<MappingConfig> hisNameIndex(RetrievalVO retrievalVO);
+
+    /**
+     * 医院术语-细项检索
+     *
+     * @param retrievalVO
+     * @return
+     */
+    List<MappingConfig> hisDetailNameIndex(RetrievalVO retrievalVO);
+}

+ 20 - 0
mdsp-service/src/main/java/com/lantone/service/cdss/impl/DictionaryInfoServiceImpl.java

@@ -0,0 +1,20 @@
+package com.lantone.service.cdss.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.entity.cdss.DictionaryInfo;
+import com.lantone.mapper.cdss.DictionaryInfoMapper;
+import com.lantone.service.cdss.DictionaryInfoService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * CDSS字典表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-25
+ */
+@Service
+public class DictionaryInfoServiceImpl extends ServiceImpl<DictionaryInfoMapper, DictionaryInfo> implements DictionaryInfoService {
+
+}

+ 58 - 0
mdsp-service/src/main/java/com/lantone/service/cdss/impl/MappingConfigServiceImpl.java

@@ -0,0 +1,58 @@
+package com.lantone.service.cdss.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.entity.cdss.MappingConfig;
+import com.lantone.entity.cdss.wrapper.MappingConfigWrapper;
+import com.lantone.mapper.cdss.MappingConfigMapper;
+import com.lantone.service.cdss.MappingConfigService;
+import com.lantone.vo.cdss.MappingConfigPageVO;
+import com.lantone.vo.cdss.RetrievalVO;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医学术语映射表 服务实现类
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-06-09
+ */
+@Service
+public class MappingConfigServiceImpl extends ServiceImpl<MappingConfigMapper, MappingConfig> implements MappingConfigService {
+    /**
+     * 分页查询
+     *
+     * @param mappingConfigPageVO
+     * @return
+     */
+    @Override
+    public IPage<MappingConfigWrapper> getPage(@Param("mappingConfigPageVO") MappingConfigPageVO mappingConfigPageVO) {
+        return baseMapper.getPage(mappingConfigPageVO);
+    }
+
+    /**
+     * 医院术语检索
+     *
+     * @param retrievalVO
+     * @return
+     */
+    @Override
+    public List<MappingConfig> hisNameIndex(RetrievalVO retrievalVO) {
+        return baseMapper.hisNameIndex(retrievalVO);
+    }
+
+    /**
+     * 医院术语-细项检索
+     *
+     * @param retrievalVO
+     * @return
+     */
+    @Override
+    public List<MappingConfig> hisDetailNameIndex(RetrievalVO retrievalVO) {
+        return baseMapper.hisDetailNameIndex(retrievalVO);
+    }
+}

+ 26 - 0
mdsp-service/src/main/java/com/lantone/service/med/KlConceptService.java

@@ -0,0 +1,26 @@
+package com.lantone.service.med;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.dto.med.IndexBatchDTO;
+import com.lantone.dto.med.KllisDetailDTO;
+import com.lantone.entity.med.KlConcept;
+import com.lantone.vo.med.IndexByApprovalVO;
+import com.lantone.vo.med.KllisDetailVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 概念表 服务类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+public interface KlConceptService extends IService<KlConcept> {
+
+    List<IndexBatchDTO> indexByApproval(IndexByApprovalVO indexByApprovalVO);
+
+    List<KllisDetailDTO> getLisDetaisByNames(KllisDetailVO kllisDetailVO);
+
+}

+ 16 - 0
mdsp-service/src/main/java/com/lantone/service/med/KlDiseaseService.java

@@ -0,0 +1,16 @@
+package com.lantone.service.med;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.entity.med.KlDisease;
+
+/**
+ * <p>
+ * 疾病表 服务类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+public interface KlDiseaseService extends IService<KlDisease> {
+
+}

+ 16 - 0
mdsp-service/src/main/java/com/lantone/service/med/KlLibraryInfoService.java

@@ -0,0 +1,16 @@
+package com.lantone.service.med;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.entity.med.KlLibraryInfo;
+
+/**
+ * <p>
+ * 术语表 服务类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+public interface KlLibraryInfoService extends IService<KlLibraryInfo> {
+
+}

+ 16 - 0
mdsp-service/src/main/java/com/lantone/service/med/KlOperationService.java

@@ -0,0 +1,16 @@
+package com.lantone.service.med;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.entity.med.KlOperation;
+
+/**
+ * <p>
+ * 手术扩展表 服务类
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-06-15
+ */
+public interface KlOperationService extends IService<KlOperation> {
+
+}

+ 16 - 0
mdsp-service/src/main/java/com/lantone/service/med/TcmDiseaseService.java

@@ -0,0 +1,16 @@
+package com.lantone.service.med;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.entity.med.TcmDisease;
+
+/**
+ * <p>
+ * 中医疾病表 服务类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-06-07
+ */
+public interface TcmDiseaseService extends IService<TcmDisease> {
+
+}

+ 16 - 0
mdsp-service/src/main/java/com/lantone/service/med/TcmSyndromeService.java

@@ -0,0 +1,16 @@
+package com.lantone.service.med;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.entity.med.TcmSyndrome;
+
+/**
+ * <p>
+ * 中医证候表 服务类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-06-07
+ */
+public interface TcmSyndromeService extends IService<TcmSyndrome> {
+
+}

+ 36 - 0
mdsp-service/src/main/java/com/lantone/service/med/impl/KlConceptServiceImpl.java

@@ -0,0 +1,36 @@
+package com.lantone.service.med.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.dto.med.IndexBatchDTO;
+import com.lantone.dto.med.KllisDetailDTO;
+import com.lantone.entity.med.KlConcept;
+import com.lantone.mapper.med.KlConceptMapper;
+import com.lantone.service.med.KlConceptService;
+import com.lantone.vo.med.IndexByApprovalVO;
+import com.lantone.vo.med.KllisDetailVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 概念表 服务实现类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+@Service
+public class KlConceptServiceImpl extends ServiceImpl<KlConceptMapper, KlConcept> implements KlConceptService {
+
+    @Override
+    public List<IndexBatchDTO> indexByApproval(IndexByApprovalVO indexByApprovalVO) {
+        return baseMapper.indexByApproval(indexByApprovalVO);
+    }
+
+    @Override
+    public List<KllisDetailDTO> getLisDetaisByNames(KllisDetailVO kllisDetailVO) {
+        return baseMapper.getLisDetaisByNames(kllisDetailVO);
+    }
+
+}

+ 20 - 0
mdsp-service/src/main/java/com/lantone/service/med/impl/KlDiseaseServiceImpl.java

@@ -0,0 +1,20 @@
+package com.lantone.service.med.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.entity.med.KlDisease;
+import com.lantone.mapper.med.KlDiseaseMapper;
+import com.lantone.service.med.KlDiseaseService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 疾病表 服务实现类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+@Service
+public class KlDiseaseServiceImpl extends ServiceImpl<KlDiseaseMapper, KlDisease> implements KlDiseaseService {
+
+}

+ 20 - 0
mdsp-service/src/main/java/com/lantone/service/med/impl/KlLibraryInfoServiceImpl.java

@@ -0,0 +1,20 @@
+package com.lantone.service.med.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.entity.med.KlLibraryInfo;
+import com.lantone.mapper.med.KlLibraryInfoMapper;
+import com.lantone.service.med.KlLibraryInfoService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 术语表 服务实现类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-01-21
+ */
+@Service
+public class KlLibraryInfoServiceImpl extends ServiceImpl<KlLibraryInfoMapper, KlLibraryInfo> implements KlLibraryInfoService {
+
+}

+ 20 - 0
mdsp-service/src/main/java/com/lantone/service/med/impl/KlOperationServiceImpl.java

@@ -0,0 +1,20 @@
+package com.lantone.service.med.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.entity.med.KlOperation;
+import com.lantone.mapper.med.KlOperationMapper;
+import com.lantone.service.med.KlOperationService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 手术扩展表 服务实现类
+ * </p>
+ *
+ * @author zhaops
+ * @since 2021-06-15
+ */
+@Service
+public class KlOperationServiceImpl extends ServiceImpl<KlOperationMapper, KlOperation> implements KlOperationService {
+
+}

+ 20 - 0
mdsp-service/src/main/java/com/lantone/service/med/impl/TcmDiseaseServiceImpl.java

@@ -0,0 +1,20 @@
+package com.lantone.service.med.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.entity.med.TcmDisease;
+import com.lantone.mapper.med.TcmDiseaseMapper;
+import com.lantone.service.med.TcmDiseaseService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 中医疾病表 服务实现类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-06-07
+ */
+@Service
+public class TcmDiseaseServiceImpl extends ServiceImpl<TcmDiseaseMapper, TcmDisease> implements TcmDiseaseService {
+
+}

+ 20 - 0
mdsp-service/src/main/java/com/lantone/service/med/impl/TcmSyndromeServiceImpl.java

@@ -0,0 +1,20 @@
+package com.lantone.service.med.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.entity.med.TcmSyndrome;
+import com.lantone.mapper.med.TcmSyndromeMapper;
+import com.lantone.service.med.TcmSyndromeService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 中医证候表 服务实现类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-06-07
+ */
+@Service
+public class TcmSyndromeServiceImpl extends ServiceImpl<TcmSyndromeMapper, TcmSyndrome> implements TcmSyndromeService {
+
+}

+ 213 - 0
mdsp-service/src/main/java/com/lantone/util/ExcelUtils.java

@@ -0,0 +1,213 @@
+package com.lantone.util;
+
+
+import cn.afterturn.easypoi.excel.ExcelExportUtil;
+import cn.afterturn.easypoi.excel.ExcelImportUtil;
+import cn.afterturn.easypoi.excel.entity.ExportParams;
+import cn.afterturn.easypoi.excel.entity.ImportParams;
+import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
+import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
+import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult;
+import cn.afterturn.easypoi.exception.excel.ExcelImportException;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.lantone.common.util.StringUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.File;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.NoSuchElementException;
+
+/**
+ * @Description: excel 导入导出工具类
+ * @author: gaodm
+ * @time: 2020/6/2 19:18
+ */
+public class ExcelUtils {
+    public static void exportExcel(List<?> list, String title, String sheetName, Class<?> pojoClass, String fileName,
+                                   boolean isCreateHeader, HttpServletResponse response) {
+        ExportParams exportParams = new ExportParams(title, sheetName);
+        exportParams.setCreateHeadRows(isCreateHeader);
+        defaultExport(list, pojoClass, fileName, response, exportParams);
+    }
+
+    public static void exportExcelDynamicCol(List<ExcelExportEntity> entityList, Collection<?> dataSet, String title, String sheetName, String fileName,
+                                             HttpServletResponse response) {
+        ExportParams exportParams = new ExportParams(title, sheetName);
+        dynamicColExport(entityList, dataSet, fileName, response, exportParams);
+    }
+
+    public static void exportExcel(List<?> list, String title, String sheetName, Class<?> pojoClass, String fileName,
+                                   HttpServletResponse response, float height) {
+        Boolean havTitle = false;
+        if (StringUtil.isNotBlank(title)) {
+            havTitle = true;
+        }
+        userExport2(list, pojoClass, fileName, response, new ExportParams(title, sheetName), height, havTitle);
+    }
+
+    public static void exportExcel(List<?> list, String title, String sheetName, Class<?> pojoClass, String fileName,
+                                   HttpServletResponse response) {
+        defaultExport(list, pojoClass, fileName, response, new ExportParams(title, sheetName));
+    }
+
+    public static void exportExcel(List<Map<String, Object>> list, String fileName, HttpServletResponse response) {
+        defaultExport(list, fileName, response);
+    }
+
+    private static void defaultExport(List<?> list, Class<?> pojoClass, String fileName, HttpServletResponse response,
+                                      ExportParams exportParams) {
+        Workbook workbook = ExcelExportUtil.exportExcel(exportParams, pojoClass, list);
+        if (workbook != null) {
+            ;
+        }
+        downLoadExcel(fileName, response, workbook);
+    }
+
+    private static void dynamicColExport(List<ExcelExportEntity> entityList, Collection<?> dataSet, String fileName, HttpServletResponse response,
+                                         ExportParams exportParams) {
+        Workbook workbook = ExcelExportUtil.exportExcel(exportParams, entityList, dataSet);
+        if (workbook != null) {
+            ;
+        }
+        downLoadExcel(fileName, response, workbook);
+    }
+
+    private static void userExport(List<?> list, Class<?> pojoClass, String fileName, HttpServletResponse response,
+                                   ExportParams exportParams) {
+        Workbook workbook = ExcelExportUtil.exportExcel(exportParams, pojoClass, list);
+        if (workbook != null) {
+            Sheet sheet = workbook.getSheetAt(0);
+            //列宽设置
+            sheet.setColumnWidth(8, 256 * 20);
+            sheet.setColumnWidth(9, 256 * 50);
+            int rowNum = sheet.getLastRowNum();
+            Row row = sheet.getRow(0);
+            for (int i = 1; i <= rowNum; i++) {
+                row = sheet.getRow(i);
+                row.setHeightInPoints(12.8f);
+            }
+        }
+        downLoadExcel(fileName, response, workbook);
+    }
+
+    private static void userExport2(List<?> list, Class<?> pojoClass, String fileName, HttpServletResponse response,
+                                    ExportParams exportParams, float height, Boolean havTitle) {
+        Workbook workbook = ExcelExportUtil.exportExcel(exportParams, pojoClass, list);
+        if (workbook != null) {
+            Sheet sheet = workbook.getSheetAt(0);
+            int rowNum = sheet.getLastRowNum();
+            Row row = sheet.getRow(0);
+            int startRowNum = 1;
+            if (havTitle) {
+                startRowNum = 2;
+            }
+            for (int i = startRowNum; i <= rowNum; i++) {
+                row = sheet.getRow(i);
+                row.setHeightInPoints(height);
+            }
+        }
+        downLoadExcel(fileName, response, workbook);
+    }
+
+    private static void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) {
+        try {
+            response.setCharacterEncoding("UTF-8");
+            response.setHeader("content-Type", "application/vnd.ms-excel");
+            response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));
+            workbook.write(response.getOutputStream());
+        } catch (IOException e) {
+            // throw new NormalException(e.getMessage());
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "导出Excel异常");
+        }
+    }
+
+    private static void defaultExport(List<Map<String, Object>> list, String fileName, HttpServletResponse response) {
+        Workbook workbook = ExcelExportUtil.exportExcel(list, ExcelType.HSSF);
+        if (workbook != null) {
+            ;
+        }
+        downLoadExcel(fileName, response, workbook);
+    }
+
+    public static <T> List<T> importExcel(String filePath, Integer titleRows, Integer headerRows, Class<T> pojoClass) {
+        if (StringUtils.isBlank(filePath)) {
+            return null;
+        }
+        ImportParams params = new ImportParams();
+        params.setTitleRows(titleRows);
+        params.setHeadRows(headerRows);
+        List<T> list = null;
+        try {
+            list = ExcelImportUtil.importExcel(new File(filePath), pojoClass, params);
+        } catch (NoSuchElementException e) {
+            // throw new NormalException("模板不能为空");
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "模板不能为空");
+        } catch (ExcelImportException e) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "校验失败,请使用模板进行数据导入");
+        } catch (Exception e) {
+            e.printStackTrace();
+            // throw new NormalException(e.getMessage());
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "导入Excel异常");
+        }
+        return list;
+    }
+
+    public static <T> List<T> importExcel(MultipartFile file, Integer titleRows, Integer headerRows,
+                                          Class<T> pojoClass) {
+        if (file == null) {
+            return null;
+        }
+        ImportParams params = new ImportParams();
+        params.setTitleRows(titleRows);
+        params.setHeadRows(headerRows);
+        List<T> list = null;
+        try {
+            list = ExcelImportUtil.importExcel(file.getInputStream(), pojoClass, params);
+        } catch (NoSuchElementException e) {
+            // throw new NormalException("excel文件不能为空");
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "excel文件不能为空");
+        } catch (ExcelImportException e) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "校验失败,请使用模板进行数据导入");
+        } catch (Exception e) {
+            // throw new NormalException(e.getMessage());
+            System.out.println(e.getMessage());
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "导入Excel异常");
+        }
+        return list;
+    }
+
+
+    public static <T> ExcelImportResult<T> importExcelMore(MultipartFile file, Integer titleRows, Integer headerRows,
+                                                           Class<T> pojoClass) {
+        if (file == null) {
+            return null;
+        }
+        ImportParams params = new ImportParams();
+        params.setTitleRows(titleRows);
+        params.setHeadRows(headerRows);
+        ExcelImportResult<T> result = null;
+        try {
+            result = ExcelImportUtil.importExcelMore(file.getInputStream(), pojoClass, params);
+        } catch (NoSuchElementException e) {
+            // throw new NormalException("excel文件不能为空");
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "excel文件不能为空");
+        } catch (ExcelImportException e) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "校验失败,请使用模板进行数据导入");
+        } catch (Exception e) {
+            // throw new NormalException(e.getMessage());
+            System.out.println(e.getMessage());
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "导入Excel异常");
+        }
+        return result;
+    }
+}

+ 28 - 0
mdsp-service/src/main/java/com/lantone/util/SysUserUtils.java

@@ -0,0 +1,28 @@
+package com.lantone.util;
+
+/**
+ * @Description: 用户工具类
+ * @author: gaodm
+ * @time: 2018/8/3 17:46
+ */
+public class SysUserUtils {
+
+    /**
+     * 获取当前请求的用户ID
+     *
+     * @return
+     */
+    public static String getCurrentPrincipleID() {
+        return "110";
+    }
+
+    /**
+     * 获取当前请求用户的医院ID
+     *
+     * @return
+     */
+    public static String getCurrentHospitalID() {
+        return "3";
+    }
+
+}

+ 21 - 0
mdsp-service/src/main/java/com/lantone/vo/cdss/ConceptVO.java

@@ -0,0 +1,21 @@
+package com.lantone.vo.cdss;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/9/10 14:48
+ */
+@Getter
+@Setter
+public class ConceptVO {
+    private List<Long> ids;
+    private List<String> names;
+    private Integer type;
+    private Integer source;
+    private Integer status;
+}

+ 0 - 0
mdsp-service/src/main/java/com/lantone/vo/cdss/FilterVO.java


Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä