Browse Source

Merge branch 'develop' into dev/mix20200401_icss6.0

gaodm 5 năm trước cách đây
mục cha
commit
61fd5b4dad
100 tập tin đã thay đổi với 6303 bổ sung228 xóa
  1. 4 4
      config-server/src/main/resources/shared/ltkg-service-dev.yml
  2. 4 4
      config-server/src/main/resources/shared/ltkg-service-local.yml
  3. 3 3
      config-server/src/main/resources/shared/ltkg-service-pre.yml
  4. 3 3
      config-server/src/main/resources/shared/ltkg-service-pro.yml
  5. 5 5
      config-server/src/main/resources/shared/ltkg-service-test.yml
  6. 7 5
      config-server/src/main/resources/shared/mrman-service-dev.yml
  7. 7 5
      config-server/src/main/resources/shared/mrman-service-local.yml
  8. 7 5
      config-server/src/main/resources/shared/mrman-service-pre.yml
  9. 7 5
      config-server/src/main/resources/shared/mrman-service-pro.yml
  10. 7 5
      config-server/src/main/resources/shared/mrman-service-test.yml
  11. 23 0
      docs/036.20200526终末质控1.3.0/init_qc.sql
  12. 111 0
      docs/036.20200609标准病例初始化脚本/qc_init_clauses.sql
  13. 1064 0
      docs/036.20200609标准病例初始化脚本/sys_user_menu.sql
  14. 1062 0
      docs/037.20200615病历条目和质控类型关心映射/qc_init.sql
  15. 11 0
      docs/037.20200615病历条目和质控类型关心映射/qc_initv1.3.4.sql
  16. 3 1
      ltkg-service/src/main/java/com/diagbot/facade/KgFacade.java
  17. 7 2
      ltkg-service/src/main/java/com/diagbot/web/KgController.java
  18. 1 1
      ltkg-service/src/main/resources/mapper/KgMapper.xml
  19. 21 0
      mrman-service/src/main/java/com/diagbot/client/BehospitalInfoHystrixClient.java
  20. 24 0
      mrman-service/src/main/java/com/diagbot/client/hystrix/BehospitalInfoHystrix.java
  21. 17 0
      mrman-service/src/main/java/com/diagbot/dto/AnalyzeMessageDTO.java
  22. 2 0
      mrman-service/src/main/java/com/diagbot/dto/GetModuleInfoOneDTO.java
  23. 1 0
      mrman-service/src/main/java/com/diagbot/dto/GetUpdateInfoDetialDTO.java
  24. 16 0
      mrman-service/src/main/java/com/diagbot/dto/MedBehospitalDeptDTO.java
  25. 75 0
      mrman-service/src/main/java/com/diagbot/dto/MedQcresultDetailAllDTO.java
  26. 31 0
      mrman-service/src/main/java/com/diagbot/dto/MedRecordAnalyzeDTO.java
  27. 15 1
      mrman-service/src/main/java/com/diagbot/dto/QcCasesEntryAllDTO.java
  28. 28 0
      mrman-service/src/main/java/com/diagbot/dto/QcEntryTypeDTO.java
  29. 27 0
      mrman-service/src/main/java/com/diagbot/dto/QcEntryTypeDetailDTO.java
  30. 26 0
      mrman-service/src/main/java/com/diagbot/dto/QcTypeByEntryDTO.java
  31. 18 0
      mrman-service/src/main/java/com/diagbot/dto/QcTypeSimpDTO.java
  32. 43 0
      mrman-service/src/main/java/com/diagbot/dto/StdMissionDetailPageDTO.java
  33. 16 0
      mrman-service/src/main/java/com/diagbot/dto/StdMissionInfoPageDTO.java
  34. 18 0
      mrman-service/src/main/java/com/diagbot/dto/SthospitalInfoFindDTO.java
  35. 65 0
      mrman-service/src/main/java/com/diagbot/dto/SthospitalInfoPageDTO.java
  36. 35 0
      mrman-service/src/main/java/com/diagbot/dto/SthospitalInfoStatiDTO.java
  37. 428 0
      mrman-service/src/main/java/com/diagbot/entity/MedBehospitalInfo.java
  38. 73 0
      mrman-service/src/main/java/com/diagbot/entity/MedModuleMapping.java
  39. 261 0
      mrman-service/src/main/java/com/diagbot/entity/MedQcresultDetail.java
  40. 95 0
      mrman-service/src/main/java/com/diagbot/entity/MedRecordAnalyze.java
  41. 18 120
      mrman-service/src/main/java/com/diagbot/entity/QcCasesEntry.java
  42. 428 0
      mrman-service/src/main/java/com/diagbot/entity/StdBehospitalInfo.java
  43. 223 0
      mrman-service/src/main/java/com/diagbot/entity/StdMissionDetail.java
  44. 139 0
      mrman-service/src/main/java/com/diagbot/entity/StdMissionInfo.java
  45. 276 0
      mrman-service/src/main/java/com/diagbot/entity/StdQcresultDetail.java
  46. 17 15
      mrman-service/src/main/java/com/diagbot/facade/CasesEntryHospitalFacade.java
  47. 27 0
      mrman-service/src/main/java/com/diagbot/facade/MedBehospitalInfoFacade.java
  48. 14 0
      mrman-service/src/main/java/com/diagbot/facade/MedModuleMappingFacade.java
  49. 27 0
      mrman-service/src/main/java/com/diagbot/facade/MedQcresultDetailFacade.java
  50. 25 0
      mrman-service/src/main/java/com/diagbot/facade/MedRecordAnalyzeFacade.java
  51. 134 15
      mrman-service/src/main/java/com/diagbot/facade/QcCacesEntryFacade.java
  52. 37 11
      mrman-service/src/main/java/com/diagbot/facade/QcModuleDetailFacade.java
  53. 59 15
      mrman-service/src/main/java/com/diagbot/facade/QcModuleInfoFacade.java
  54. 1 1
      mrman-service/src/main/java/com/diagbot/facade/QcTypeFacade.java
  55. 207 0
      mrman-service/src/main/java/com/diagbot/facade/StdBehospitalInfoFacade.java
  56. 105 0
      mrman-service/src/main/java/com/diagbot/facade/StdMissionDetailFacade.java
  57. 76 0
      mrman-service/src/main/java/com/diagbot/facade/StdMissionInfoFacade.java
  58. 36 0
      mrman-service/src/main/java/com/diagbot/facade/StdQcresultDetailFacade.java
  59. 4 0
      mrman-service/src/main/java/com/diagbot/mapper/CasesEntryHospitalMapper.java
  60. 21 0
      mrman-service/src/main/java/com/diagbot/mapper/MedBehospitalInfoMapper.java
  61. 16 0
      mrman-service/src/main/java/com/diagbot/mapper/MedModuleMappingMapper.java
  62. 22 0
      mrman-service/src/main/java/com/diagbot/mapper/MedQcresultDetailMapper.java
  63. 23 0
      mrman-service/src/main/java/com/diagbot/mapper/MedRecordAnalyzeMapper.java
  64. 18 0
      mrman-service/src/main/java/com/diagbot/mapper/QcCasesEntryMapper.java
  65. 24 0
      mrman-service/src/main/java/com/diagbot/mapper/StdBehospitalInfoMapper.java
  66. 20 0
      mrman-service/src/main/java/com/diagbot/mapper/StdMissionDetailMapper.java
  67. 20 0
      mrman-service/src/main/java/com/diagbot/mapper/StdMissionInfoMapper.java
  68. 16 0
      mrman-service/src/main/java/com/diagbot/mapper/StdQcresultDetailMapper.java
  69. 3 0
      mrman-service/src/main/java/com/diagbot/service/CasesEntryHospitalService.java
  70. 21 0
      mrman-service/src/main/java/com/diagbot/service/MedBehospitalInfoService.java
  71. 16 0
      mrman-service/src/main/java/com/diagbot/service/MedModuleMappingService.java
  72. 22 0
      mrman-service/src/main/java/com/diagbot/service/MedQcresultDetailService.java
  73. 23 0
      mrman-service/src/main/java/com/diagbot/service/MedRecordAnalyzeService.java
  74. 18 0
      mrman-service/src/main/java/com/diagbot/service/QcCasesEntryService.java
  75. 0 1
      mrman-service/src/main/java/com/diagbot/service/QcModuleInfoService.java
  76. 24 0
      mrman-service/src/main/java/com/diagbot/service/StdBehospitalInfoService.java
  77. 20 0
      mrman-service/src/main/java/com/diagbot/service/StdMissionDetailService.java
  78. 20 0
      mrman-service/src/main/java/com/diagbot/service/StdMissionInfoService.java
  79. 16 0
      mrman-service/src/main/java/com/diagbot/service/StdQcresultDetailService.java
  80. 6 0
      mrman-service/src/main/java/com/diagbot/service/impl/CasesEntryHospitalServiceImpl.java
  81. 28 0
      mrman-service/src/main/java/com/diagbot/service/impl/MedBehospitalInfoServiceImpl.java
  82. 20 0
      mrman-service/src/main/java/com/diagbot/service/impl/MedModuleMappingServiceImpl.java
  83. 29 0
      mrman-service/src/main/java/com/diagbot/service/impl/MedQcresultDetailServiceImpl.java
  84. 33 0
      mrman-service/src/main/java/com/diagbot/service/impl/MedRecordAnalyzeServiceImpl.java
  85. 34 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcCasesEntryServiceImpl.java
  86. 34 0
      mrman-service/src/main/java/com/diagbot/service/impl/StdBehospitalInfoServiceImpl.java
  87. 27 0
      mrman-service/src/main/java/com/diagbot/service/impl/StdMissionDetailServiceImpl.java
  88. 27 0
      mrman-service/src/main/java/com/diagbot/service/impl/StdMissionInfoServiceImpl.java
  89. 20 0
      mrman-service/src/main/java/com/diagbot/service/impl/StdQcresultDetailServiceImpl.java
  90. 1 1
      mrman-service/src/main/java/com/diagbot/vo/AddModuleInfoVO.java
  91. 18 0
      mrman-service/src/main/java/com/diagbot/vo/AnalyzeApiVO.java
  92. 1 0
      mrman-service/src/main/java/com/diagbot/vo/GetModuleInfoVO.java
  93. 15 0
      mrman-service/src/main/java/com/diagbot/vo/InsertByHospitalVO.java
  94. 17 0
      mrman-service/src/main/java/com/diagbot/vo/MedBehospitalDeptVO.java
  95. 25 0
      mrman-service/src/main/java/com/diagbot/vo/MedQcresultDetailAllVO.java
  96. 20 0
      mrman-service/src/main/java/com/diagbot/vo/ModuleIndexVO.java
  97. 15 0
      mrman-service/src/main/java/com/diagbot/vo/QcCasesEntryAllVO.java
  98. 18 0
      mrman-service/src/main/java/com/diagbot/vo/QcEntryTypeIndexVO.java
  99. 28 0
      mrman-service/src/main/java/com/diagbot/vo/QcEntryTypePageVO.java
  100. 0 0
      mrman-service/src/main/java/com/diagbot/vo/QcEntryTypeSaveVO.java

+ 4 - 4
config-server/src/main/resources/shared/ltkg-service-dev.yml

@@ -12,9 +12,9 @@ spring:
       datasource:
       datasource:
         neo4j:
         neo4j:
           driver-class-name: org.neo4j.jdbc.Driver
           driver-class-name: org.neo4j.jdbc.Driver
-          url: jdbc:neo4j:http://192.168.2.190:7474
-          username: root
-          password: zjlantone
+          url: jdbc:neo4j:http://192.168.3.150:7474
+          username: neo4j
+          password: 12345678
           #定义初始连接数
           #定义初始连接数
           initialSize: 0
           initialSize: 0
           #定义最大连接数
           #定义最大连接数
@@ -95,4 +95,4 @@ nlprel:
 
 
 qa:
 qa:
   server:
   server:
-    address: http://192.168.3.150:9999
+    address: http://192.168.3.150:9998

+ 4 - 4
config-server/src/main/resources/shared/ltkg-service-local.yml

@@ -12,9 +12,9 @@ spring:
       datasource:
       datasource:
         neo4j:
         neo4j:
           driver-class-name: org.neo4j.jdbc.Driver
           driver-class-name: org.neo4j.jdbc.Driver
-          url: jdbc:neo4j:http://192.168.2.190:7474
-          username: root
-          password: zjlantone
+          url: jdbc:neo4j:http://192.168.3.150:7474
+          username: neo4j
+          password: 12345678
           #定义初始连接数
           #定义初始连接数
           initialSize: 0
           initialSize: 0
           #定义最大连接数
           #定义最大连接数
@@ -95,4 +95,4 @@ nlprel:
 
 
 qa:
 qa:
   server:
   server:
-    address: http://192.168.3.150:9999
+    address: http://192.168.3.150:9998

+ 3 - 3
config-server/src/main/resources/shared/ltkg-service-pre.yml

@@ -12,7 +12,7 @@ spring:
       datasource:
       datasource:
         neo4j:
         neo4j:
           driver-class-name: org.neo4j.jdbc.Driver
           driver-class-name: org.neo4j.jdbc.Driver
-          url: jdbc:neo4j:http://192.168.3.150:7474
+          url: jdbc:neo4j:http://192.168.2.186:7474
           username: neo4j
           username: neo4j
           password: 12345678
           password: 12345678
           #定义初始连接数
           #定义初始连接数
@@ -91,8 +91,8 @@ mybatis-plus:
 
 
 nlprel:
 nlprel:
   server:
   server:
-    address: http://192.168.3.150:3456
+    address: http://192.168.2.186:3456
 
 
 qa:
 qa:
   server:
   server:
-    address: http://192.168.3.150:9999
+    address: http://192.168.2.186:9998

+ 3 - 3
config-server/src/main/resources/shared/ltkg-service-pro.yml

@@ -12,7 +12,7 @@ spring:
       datasource:
       datasource:
         neo4j:
         neo4j:
           driver-class-name: org.neo4j.jdbc.Driver
           driver-class-name: org.neo4j.jdbc.Driver
-          url: jdbc:neo4j:http://192.168.3.150:7474
+          url: jdbc:neo4j:http://192.168.2.123:7472
           username: neo4j
           username: neo4j
           password: 12345678
           password: 12345678
           #定义初始连接数
           #定义初始连接数
@@ -91,8 +91,8 @@ mybatis-plus:
 
 
 nlprel:
 nlprel:
   server:
   server:
-    address: http://192.168.3.150:3456
+    address: http://192.168.2.123:3456
 
 
 qa:
 qa:
   server:
   server:
-    address: http://192.168.3.150:9999
+    address: http://192.168.2.123:9998

+ 5 - 5
config-server/src/main/resources/shared/ltkg-service-test.yml

@@ -12,9 +12,9 @@ spring:
       datasource:
       datasource:
         neo4j:
         neo4j:
           driver-class-name: org.neo4j.jdbc.Driver
           driver-class-name: org.neo4j.jdbc.Driver
-          url: jdbc:neo4j:http://192.168.2.190:7474
-          username: root
-          password: zjlantone
+          url: jdbc:neo4j:http://192.168.2.234:7472
+          username: neo4j
+          password: 12345678
           #定义初始连接数
           #定义初始连接数
           initialSize: 0
           initialSize: 0
           #定义最大连接数
           #定义最大连接数
@@ -91,8 +91,8 @@ mybatis-plus:
 
 
 nlprel:
 nlprel:
   server:
   server:
-    address: http://192.168.3.150:3456
+    address: http://192.168.2.234:3456
 
 
 qa:
 qa:
   server:
   server:
-    address: http://192.168.3.150:9999
+    address: http://192.168.2.234:9998

+ 7 - 5
config-server/src/main/resources/shared/mrman-service-dev.yml

@@ -58,11 +58,11 @@ spring:
           druid:
           druid:
             initial-size: 5
             initial-size: 5
         slave:
         slave:
-          driver-class-name: oracle.jdbc.driver.OracleDriver
-          platform: oracle
-          url: jdbc:oracle:thin:@192.168.2.246:1521:orcl
-          username: ETRACKMRQC
-          password: ETRACKMRQC
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          platform: mysql
+          url: jdbc:mysql://192.168.2.236:3306/qc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
           druid:
           druid:
             initial-size: 5
             initial-size: 5
 
 
@@ -125,3 +125,5 @@ mybatis-plus:
   configuration:
   configuration:
     map-underscore-to-camel-case: true
     map-underscore-to-camel-case: true
     cache-enabled: false
     cache-enabled: false
+
+qc.address: http://192.168.2.236:5858

+ 7 - 5
config-server/src/main/resources/shared/mrman-service-local.yml

@@ -58,11 +58,11 @@ spring:
           druid:
           druid:
             initial-size: 5
             initial-size: 5
         slave:
         slave:
-          driver-class-name: oracle.jdbc.driver.OracleDriver
-          platform: oracle
-          url: jdbc:oracle:thin:@192.168.2.246:1521:orcl
-          username: ETRACKMRQC
-          password: ETRACKMRQC
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          platform: mysql
+          url: jdbc:mysql://192.168.2.236:3306/qc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
           druid:
           druid:
             initial-size: 5
             initial-size: 5
 
 
@@ -125,3 +125,5 @@ mybatis-plus:
   configuration:
   configuration:
     map-underscore-to-camel-case: true
     map-underscore-to-camel-case: true
     cache-enabled: false
     cache-enabled: false
+
+qc.address: http://192.168.2.236:5858

+ 7 - 5
config-server/src/main/resources/shared/mrman-service-pre.yml

@@ -58,11 +58,11 @@ spring:
           druid:
           druid:
             initial-size: 5
             initial-size: 5
         slave:
         slave:
-          driver-class-name: oracle.jdbc.driver.OracleDriver
-          platform: oracle
-          url: jdbc:oracle:thin:@192.168.2.246:1521:orcl
-          username: ETRACKMRQC
-          password: ETRACKMRQC
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          platform: mysql
+          url: jdbc:mysql://192.168.2.121:3306/qc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: teamback
+          password: goTulmLeon
           druid:
           druid:
             initial-size: 5
             initial-size: 5
 
 
@@ -125,3 +125,5 @@ mybatis-plus:
   configuration:
   configuration:
     map-underscore-to-camel-case: true
     map-underscore-to-camel-case: true
     cache-enabled: false
     cache-enabled: false
+
+qc.address: http://192.168.2.121:5858

+ 7 - 5
config-server/src/main/resources/shared/mrman-service-pro.yml

@@ -58,11 +58,11 @@ spring:
           druid:
           druid:
             initial-size: 5
             initial-size: 5
         slave:
         slave:
-          driver-class-name: oracle.jdbc.driver.OracleDriver
-          platform: oracle
-          url: jdbc:oracle:thin:@192.168.2.246:1521:orcl
-          username: ETRACKMRQC
-          password: ETRACKMRQC
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          platform: mysql
+          url: jdbc:mysql://192.168.2.122:3306/qc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
           druid:
           druid:
             initial-size: 5
             initial-size: 5
 
 
@@ -125,3 +125,5 @@ mybatis-plus:
   configuration:
   configuration:
     map-underscore-to-camel-case: true
     map-underscore-to-camel-case: true
     cache-enabled: false
     cache-enabled: false
+
+qc.address: http://192.168.2.122:5858

+ 7 - 5
config-server/src/main/resources/shared/mrman-service-test.yml

@@ -59,11 +59,11 @@ spring:
           druid:
           druid:
             initial-size: 5
             initial-size: 5
         slave:
         slave:
-          driver-class-name: oracle.jdbc.driver.OracleDriver
-          platform: oracle
-          url: jdbc:oracle:thin:@192.168.2.246:1521:orcl
-          username: ETRACKMRQC
-          password: ETRACKMRQC
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          platform: mysql
+          url: jdbc:mysql://192.168.2.241:3306/qc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true
+          username: root
+          password: lantone
           druid:
           druid:
             initial-size: 5
             initial-size: 5
 
 
@@ -126,3 +126,5 @@ mybatis-plus:
   configuration:
   configuration:
     map-underscore-to-camel-case: true
     map-underscore-to-camel-case: true
     cache-enabled: false
     cache-enabled: false
+
+qc.address: http://192.168.2.241:5858

+ 23 - 0
docs/036.20200526终末质控1.3.0/init_qc.sql

@@ -0,0 +1,23 @@
+use `qc`;
+
+alter table qc_module_info MODIFY COLUMN `record_module_id` bigint(20) NOT NULL DEFAULT '0' COMMENT 'med_record_module的id';
+
+-- ----------------------------
+-- Table structure for med_module_mapping
+-- ----------------------------
+DROP TABLE IF EXISTS `med_module_mapping`;
+CREATE TABLE `med_module_mapping` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `module_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '模板id',
+  `record_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '文书id(med_record_analyze中的id)',
+  `hospital_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '医院ID',
+  `remark` varchar(128) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`),
+  KEY `module_id` (`module_id`),
+  KEY `record_id` (`record_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COMMENT='模板与文书映射关系表';

+ 111 - 0
docs/036.20200609标准病例初始化脚本/qc_init_clauses.sql

@@ -0,0 +1,111 @@
+use `qc`;
+-- ----------------------------
+-- Table structure for std_behospital_info
+-- ----------------------------
+DROP TABLE IF EXISTS `std_behospital_info`;
+CREATE TABLE `std_behospital_info` (
+  `behospital_code` varchar(16) NOT NULL COMMENT '病人住院ID',
+  `hospital_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '医院ID',
+  `name` varchar(32) NOT NULL COMMENT '姓名',
+  `sex` varchar(2) DEFAULT NULL COMMENT '性别(男,女)',
+  `birthday` datetime DEFAULT NULL COMMENT '出生日期',
+  `file_code` varchar(16) DEFAULT NULL COMMENT '档案号',
+  `qc_type_id` bigint(20) DEFAULT '0' COMMENT '质控类型',
+  `ward_code` varchar(16) DEFAULT NULL COMMENT '病区编码',
+  `ward_name` varchar(32) DEFAULT NULL COMMENT '病区名称',
+  `beh_dept_id` varchar(16) NOT NULL COMMENT '住院科室ID',
+  `beh_dept_name` varchar(64) NOT NULL COMMENT '住院科室名称',
+  `bed_code` varchar(12) DEFAULT NULL COMMENT '床位号',
+  `bed_name` varchar(12) DEFAULT NULL COMMENT '床位名称',
+  `insurance_name` varchar(50) DEFAULT NULL COMMENT '医保类别',
+  `job_type` varchar(30) DEFAULT NULL COMMENT '职业',
+  `behospital_date` datetime DEFAULT NULL COMMENT '入院时间',
+  `leave_hospital_date` datetime DEFAULT NULL COMMENT '出院时间',
+  `diagnose_icd` varchar(50) DEFAULT NULL COMMENT '疾病ICD编码',
+  `diagnose` text COMMENT '疾病名称',
+  `doctor_id` varchar(16) DEFAULT '' COMMENT '主治医生ID',
+  `doctor_name` varchar(50) DEFAULT '' COMMENT '主治医生姓名',
+  `beh_doctor_id` varchar(16) DEFAULT '' COMMENT '住院医生ID',
+  `beh_doctor_name` varchar(50) DEFAULT '' COMMENT '住院医生姓名',
+  `director_doctor_id` varchar(16) DEFAULT '' COMMENT '主任医生ID',
+  `director_doctor_name` varchar(50) DEFAULT '' COMMENT '主任医生姓名',
+  `is_placefile` varchar(2) NOT NULL DEFAULT '0' COMMENT '是否归档(0:未归档,1:已归档)',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  PRIMARY KEY (`behospital_code`),
+  KEY `idx_hospital_id_behospital_code` (`hospital_id`,`behospital_code`) USING BTREE,
+  KEY `idx_leave_hospital_date` (`leave_hospital_date`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='标准住院病历信息';
+
+-- ----------------------------
+-- Table structure for std_qcresult_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `std_qcresult_detail`;
+CREATE TABLE `std_qcresult_detail` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `hospital_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '医院ID',
+  `behospital_code` varchar(255) NOT NULL DEFAULT '' COMMENT '病人住院ID',
+  `cases_id` bigint(20) DEFAULT NULL COMMENT '模块id',
+  `cases_score` decimal(5,1) DEFAULT NULL COMMENT '模块总分',
+  `cases_entry_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '条目ID',
+  `score` decimal(5,1) DEFAULT NULL COMMENT '人工修改分值',
+  `msg` varchar(255) DEFAULT NULL COMMENT '提示信息',
+  `info` varchar(500) DEFAULT '' COMMENT '质控返回提示信息',
+  `is_reject` int(3) DEFAULT '0' COMMENT '单项否决(1-单项否决 0-非)',
+  `grade_type` tinyint(4) DEFAULT '1' COMMENT '初始类型(1:机器,2:人工)',
+  `opt_type` tinyint(4) DEFAULT '1' COMMENT '操作类型(1:新增,2:删除,3:修改)',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+  `satisfy` int(10) DEFAULT NULL COMMENT '是否满足',
+  PRIMARY KEY (`id`),
+  KEY `idx_hospital_id` (`hospital_id`) USING BTREE,
+  KEY `idx_behospital_code` (`behospital_code`) USING BTREE,
+  KEY `idx_hospital_id_behospital_code` (`hospital_id`,`behospital_code`) USING BTREE,
+  KEY `idx_is_deleted` (`is_deleted`) USING BTREE,
+  KEY `idx_msg` (`msg`) USING BTREE,
+  KEY `idx_mix` (`hospital_id`,`behospital_code`,`is_deleted`) USING BTREE,
+  KEY `idx_cases_entry_id` (`cases_entry_id`) USING BTREE,
+  KEY `idx_cases_id` (`cases_id`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='标准质控评分明细信息';
+
+DROP TABLE IF EXISTS `std_mission_info`;
+CREATE TABLE `std_mission_info` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `mission_name` varchar(20) DEFAULT NULL,
+  `status` int(11) DEFAULT '0',
+  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='任务信息表';
+
+DROP TABLE IF EXISTS `std_mission_detail`;
+CREATE TABLE `std_mission_detail` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `mission_id` bigint(20) DEFAULT NULL,
+  `hospital_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '医院ID',
+  `cases_id` bigint(20) DEFAULT NULL COMMENT '模块id',
+  `cases_name` varchar(255) DEFAULT NULL,
+  `entry_code` varchar(255) NOT NULL DEFAULT '0' COMMENT '条目code',
+  `entry_name` varchar(255) DEFAULT NULL COMMENT '提示信息',
+  `amount` int(11) DEFAULT NULL,
+  `behospitalCodeStr` varchar(255) DEFAULT NULL,
+  `status` int(11) DEFAULT '0',
+  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='任务信息详情表';

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1064 - 0
docs/036.20200609标准病例初始化脚本/sys_user_menu.sql


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1062 - 0
docs/037.20200615病历条目和质控类型关心映射/qc_init.sql


+ 11 - 0
docs/037.20200615病历条目和质控类型关心映射/qc_initv1.3.4.sql

@@ -0,0 +1,11 @@
+use `qc`;
+
+ALTER TABLE `qc_cases_entry` ADD `dev_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '开发状态标识: 0-未开发  1-已开发' AFTER `rule_type`;
+ALTER TABLE `qc_cases_entry` ADD `accuracy_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '准确率类型:0-极高,1-高,2-中,3-低' AFTER `dev_type`;
+
+INSERT INTO `qc`.`sys_dictionary_info` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `group_type`, `name`, `val`, `return_type`, `order_no`, `remark`) VALUES ('291', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '15', '未开发', '0', '1', '0', '开发状态标识');
+INSERT INTO `qc`.`sys_dictionary_info` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `group_type`, `name`, `val`, `return_type`, `order_no`, `remark`) VALUES ('292', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '15', '已开发', '1', '1', '1', '开发状态标识');
+INSERT INTO `qc`.`sys_dictionary_info` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `group_type`, `name`, `val`, `return_type`, `order_no`, `remark`) VALUES ('293', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '16', '极高', '0', '1', '0', '准确率类型');
+INSERT INTO `qc`.`sys_dictionary_info` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `group_type`, `name`, `val`, `return_type`, `order_no`, `remark`) VALUES ('294', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '16', '高', '1', '1', '1', '准确率类型');
+INSERT INTO `qc`.`sys_dictionary_info` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `group_type`, `name`, `val`, `return_type`, `order_no`, `remark`) VALUES ('295', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '16', '中', '2', '1', '2', '准确率类型');
+INSERT INTO `qc`.`sys_dictionary_info` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `group_type`, `name`, `val`, `return_type`, `order_no`, `remark`) VALUES ('296', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '16', '低', '3', '1', '3', '准确率类型');

+ 3 - 1
ltkg-service/src/main/java/com/diagbot/facade/KgFacade.java

@@ -119,7 +119,9 @@ public class KgFacade extends KgServiceImpl {
                 && (kgTreeVO.getSubType() == 1 || kgTreeVO.getSubType() == 2 || kgTreeVO.getSubType() == 3))
                 && (kgTreeVO.getSubType() == 1 || kgTreeVO.getSubType() == 2 || kgTreeVO.getSubType() == 3))
                 || (kgTreeVO.getType() == 2 && (kgTreeVO.getSubType() == 0))
                 || (kgTreeVO.getType() == 2 && (kgTreeVO.getSubType() == 0))
                 || (kgTreeVO.getType() == 3 && (kgTreeVO.getSubType() == 0))
                 || (kgTreeVO.getType() == 3 && (kgTreeVO.getSubType() == 0))
-                || (kgTreeVO.getType() == 4 && (kgTreeVO.getSubType() == 0))) {
+                || (kgTreeVO.getType() == 4 && (kgTreeVO.getSubType() == 0))
+                || (kgTreeVO.getType() == 5 && (kgTreeVO.getSubType() == 0))
+                || (kgTreeVO.getType() == 6 && (kgTreeVO.getSubType() == 0))) {
             // KgQueryVO kgQueryVO = new KgQueryVO();
             // KgQueryVO kgQueryVO = new KgQueryVO();
             // kgQueryVO.setLabelName("诊断依据");
             // kgQueryVO.setLabelName("诊断依据");
             // kgQueryVO.setInputStr("诊断依据");
             // kgQueryVO.setInputStr("诊断依据");

+ 7 - 2
ltkg-service/src/main/java/com/diagbot/web/KgController.java

@@ -57,8 +57,13 @@ public class KgController {
     }
     }
 
 
     @ApiOperation(value = "获取树形分类",
     @ApiOperation(value = "获取树形分类",
-            notes = "获取树形分类(疾病ICD10:t:1,st:1)" +
-                    "(疾病科室:t:1,st:2)")
+            notes = "获取树形分类(疾病ICD10:t:1,st:1)<br>" +
+                    "(疾病科室:t:1,st:2)<br>" +
+                    "(药品:t:2,st:0)<br>" +
+                    "(症状:t:3,st:0)<br>" +
+                    "(手术和操作:t:4,st:0)<br>" +
+                    "(实验室检查:t:5,st:0)<br>" +
+                    "(辅助检查:t:6,st:0)<br>")
     @PostMapping("/getTree")
     @PostMapping("/getTree")
     @SysLogger("getTree")
     @SysLogger("getTree")
     @Cacheable(value = KGTREECACHE, key = "'kgtree:t_' + #kgTreeVO.type + '_st_' + #kgTreeVO.subType")
     @Cacheable(value = KGTREECACHE, key = "'kgtree:t_' + #kgTreeVO.type + '_st_' + #kgTreeVO.subType")

+ 1 - 1
ltkg-service/src/main/resources/mapper/KgMapper.xml

@@ -38,7 +38,7 @@
     <select id="getGraph" parameterType='com.diagbot.vo.KgQueryVO' resultMap="GraphResultMap">
     <select id="getGraph" parameterType='com.diagbot.vo.KgQueryVO' resultMap="GraphResultMap">
         MATCH (n:${labelName})-[r]->(m)
         MATCH (n:${labelName})-[r]->(m)
         where n.name = #{inputStr}
         where n.name = #{inputStr}
-        OPTIONAL MATCH p=(m)-[]->(o) where head(Labels(m)) in ["疾病","症状","药品通用名"]
+        OPTIONAL MATCH p=(m)-[]->(o) where head(Labels(m)) in ["疾病","症状","药品通用名","手术和操作","实验室检查","辅助检查"]
         RETURN head(Labels(n)) as sLabel,n.name as sName,Type (r) as rType, head(Labels(m)) as eLabel,m.name as eName, count(p) as pCount
         RETURN head(Labels(n)) as sLabel,n.name as sName,Type (r) as rType, head(Labels(m)) as eLabel,m.name as eName, count(p) as pCount
         ORDER BY rType
         ORDER BY rType
         LIMIT 100
         LIMIT 100

+ 21 - 0
mrman-service/src/main/java/com/diagbot/client/BehospitalInfoHystrixClient.java

@@ -0,0 +1,21 @@
+package com.diagbot.client;
+
+import com.diagbot.client.hystrix.BehospitalInfoHystrix;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.vo.AnalyzeApiVO;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import java.util.Map;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-11 16:04
+ */
+@FeignClient(name = "qc", url = "${qc.address}",fallback = BehospitalInfoHystrix.class)
+public interface BehospitalInfoHystrixClient {
+    @PostMapping(value = "/qc/behospitalInfo/analyze_api")
+    RespDTO<Map<String, Object>> analyzeApi(@RequestBody AnalyzeApiVO analyzeApiVO);
+}

+ 24 - 0
mrman-service/src/main/java/com/diagbot/client/hystrix/BehospitalInfoHystrix.java

@@ -0,0 +1,24 @@
+package com.diagbot.client.hystrix;
+
+import com.diagbot.client.BehospitalInfoHystrixClient;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.vo.AnalyzeApiVO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-11 15:58
+ */
+@Component
+@Slf4j
+public class BehospitalInfoHystrix implements BehospitalInfoHystrixClient {
+    @Override
+    public RespDTO<Map<String, Object>> analyzeApi(AnalyzeApiVO analyzeApiVO) {
+        log.error("【hystrix】调用{}异常", "analyzeApi");
+        return null;
+    }
+}

+ 17 - 0
mrman-service/src/main/java/com/diagbot/dto/AnalyzeMessageDTO.java

@@ -0,0 +1,17 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-19 10:47
+ */
+@Setter
+@Getter
+public class AnalyzeMessageDTO {
+    private List<String> messages;
+}

+ 2 - 0
mrman-service/src/main/java/com/diagbot/dto/GetModuleInfoOneDTO.java

@@ -24,6 +24,8 @@ public class GetModuleInfoOneDTO {
     private Long modeId;
     private Long modeId;
     //模板明细
     //模板明细
     private Map<Integer, List<QcModuleDetailDTO>> moduleDetail;
     private Map<Integer, List<QcModuleDetailDTO>> moduleDetail;
+    // 已选择的文书
+    private List<MedRecordAnalyzeDTO> recordAnalyzeList;
     //备注
     //备注
     private String remark;
     private String remark;
 }
 }

+ 1 - 0
mrman-service/src/main/java/com/diagbot/dto/GetUpdateInfoDetialDTO.java

@@ -16,5 +16,6 @@ public class GetUpdateInfoDetialDTO {
     private String hospitalName;
     private String hospitalName;
     private BigDecimal score;
     private BigDecimal score;
     private Integer isUsed;
     private Integer isUsed;
+    private Integer isReject;
     private String msg;
     private String msg;
 }
 }

+ 16 - 0
mrman-service/src/main/java/com/diagbot/dto/MedBehospitalDeptDTO.java

@@ -0,0 +1,16 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-12 10:00
+ */
+@Setter
+@Getter
+public class MedBehospitalDeptDTO {
+    private String deptId;
+    private String deptName;
+}

+ 75 - 0
mrman-service/src/main/java/com/diagbot/dto/MedQcresultDetailAllDTO.java

@@ -0,0 +1,75 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-10 16:09
+ */
+@Setter
+@Getter
+public class MedQcresultDetailAllDTO {
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 模块id
+     */
+    private Long casesId;
+
+    /**
+     * 模块总分
+     */
+    private BigDecimal casesScore;
+
+    /**
+     * 条目ID
+     */
+    private Long casesEntryId;
+
+    /**
+     * 人工修改分值
+     */
+    private BigDecimal score;
+
+    /**
+     * 提示信息
+     */
+    private String msg;
+
+    /**
+     * 质控返回提示信息
+     */
+    private String info;
+
+    /**
+     * 单项否决(1-单项否决 0-非)
+     */
+    private Integer isReject;
+
+    /**
+     * 初始类型(1:机器,2:人工)
+     */
+    private Integer gradeType;
+
+    /**
+     * 操作类型(1:新增,2:删除,3:修改)
+     */
+    private Integer optType;
+
+    /**
+     * 是否满足
+     */
+    private Integer satisfy;
+}

+ 31 - 0
mrman-service/src/main/java/com/diagbot/dto/MedRecordAnalyzeDTO.java

@@ -0,0 +1,31 @@
+package com.diagbot.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 医院病历文书类型细分类主表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-26
+ */
+@Data
+public class MedRecordAnalyzeDTO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private Long id;
+
+    /**
+     * 医院病历文书类型细分类名称
+     */
+    private String name;
+
+    /**
+     * 病历号示例
+     */
+    private String behospitalCodes;
+}

+ 15 - 1
mrman-service/src/main/java/com/diagbot/dto/QcCasesEntryAllDTO.java

@@ -2,7 +2,6 @@ package com.diagbot.dto;
 
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
-import com.diagbot.entity.QcCasesEntry;
 import lombok.Getter;
 import lombok.Getter;
 import lombok.Setter;
 import lombok.Setter;
 
 
@@ -41,6 +40,21 @@ public class QcCasesEntryAllDTO {
      */
      */
     private String name;
     private String name;
 
 
+    /**
+     * 规则类型(0:无,1:空项,2:错误)
+     */
+    private Integer ruleType;
+
+    /**
+     * 开发状态标识: 0-未开发  1-已开发
+     */
+    private Integer devType;
+
+    /**
+     * 准确率类型:0-极高,1-高,2-中,3-低
+     */
+    private Integer accuracyType;
+
     private String precond;
     private String precond;
 
 
     /**
     /**

+ 28 - 0
mrman-service/src/main/java/com/diagbot/dto/QcEntryTypeDTO.java

@@ -0,0 +1,28 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: zhoutg
+ * @time: 2020/3/30 16:54
+ */
+@Getter
+@Setter
+public class QcEntryTypeDTO {
+    // 医院id
+    private Long hospitalId;
+    // 条目id
+    private Long entryId;
+    // 条目名称
+    private String entryName;
+    // 质控类型集
+    private String typeStr;
+    // 条目编码
+    private String code;
+    // 所属模块
+    private String casesName;
+    // 所属模块
+    private String casesId;
+}

+ 27 - 0
mrman-service/src/main/java/com/diagbot/dto/QcEntryTypeDetailDTO.java

@@ -0,0 +1,27 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: zhoutg
+ * @time: 2020/3/30 16:54
+ */
+@Getter
+@Setter
+public class QcEntryTypeDetailDTO {
+    // 医院id
+    private Long hospitalId;
+    // 条目id
+    private Long entryId;
+    // 模块名称
+    private String casesName;
+    // 条目名称
+    private String entryName;
+    // 已选择质控类型列表
+    private List<QcTypeSimpDTO> qcTypeSimpDTOList = new ArrayList<>();
+}

+ 26 - 0
mrman-service/src/main/java/com/diagbot/dto/QcTypeByEntryDTO.java

@@ -0,0 +1,26 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: zhoutg
+ * @time: 2020/3/30 16:54
+ */
+@Getter
+@Setter
+public class QcTypeByEntryDTO {
+    // 医院id
+    private Long hospitalId;
+    // 条目id
+    private Long entryId;
+    // 条目名称
+    private String entryName;
+    // 条目名称
+    private String casesName;
+    // 质控类型名称
+    private String typeName;
+    // 质控类型id
+    private Long typeId;
+}

+ 18 - 0
mrman-service/src/main/java/com/diagbot/dto/QcTypeSimpDTO.java

@@ -0,0 +1,18 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author: ztg
+ * @Date: 2018/10/24 16:11
+ */
+@Getter
+@Setter
+public class QcTypeSimpDTO {
+    // 质控id
+    private Long id;
+    // 质控类型名称
+    private String name;
+}

+ 43 - 0
mrman-service/src/main/java/com/diagbot/dto/StdMissionDetailPageDTO.java

@@ -0,0 +1,43 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-11 14:30
+ */
+@Setter
+@Getter
+public class StdMissionDetailPageDTO {
+    private Long id;
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /*    private String hospitalName;*/
+    /**
+     * 模块id
+     */
+    private Long casesId;
+
+    private String casesName;
+
+    private String entryCode;
+    private String entryName;
+
+    /*private String msg;*/
+
+    private Integer amount;
+
+    private String behospitalCodeStr;
+
+    private Integer status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 16 - 0
mrman-service/src/main/java/com/diagbot/dto/StdMissionInfoPageDTO.java

@@ -0,0 +1,16 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-15 9:42
+ */
+@Setter
+@Getter
+public class StdMissionInfoPageDTO {
+    private Long id;
+    private String missionName;
+}

+ 18 - 0
mrman-service/src/main/java/com/diagbot/dto/SthospitalInfoFindDTO.java

@@ -0,0 +1,18 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-10 19:43
+ */
+@Setter
+@Getter
+public class SthospitalInfoFindDTO extends SthospitalInfoPageDTO{
+    /**
+     * 0存在,1不存在
+     */
+    private  Integer status;
+}

+ 65 - 0
mrman-service/src/main/java/com/diagbot/dto/SthospitalInfoPageDTO.java

@@ -0,0 +1,65 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-10 10:58
+ */
+@Setter
+@Getter
+public class SthospitalInfoPageDTO  {
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    private String hospitalName;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 性别(男,女)
+     */
+    private String sex;
+
+
+    /**
+     * 住院科室ID
+     */
+    private String deptId;
+
+    /**
+     * 住院科室名称
+     */
+    private String deptName;
+
+    /**
+     * 入院时间
+     */
+    private Date behospitalDate;
+
+    /**
+     * 出院时间
+     */
+    private Date leaveHospitalDate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+
+}

+ 35 - 0
mrman-service/src/main/java/com/diagbot/dto/SthospitalInfoStatiDTO.java

@@ -0,0 +1,35 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-11 10:49
+ */
+@Setter
+@Getter
+public class SthospitalInfoStatiDTO {
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+/*    private String hospitalName;*/
+    /**
+     * 模块id
+     */
+    private Long casesId;
+
+    private String casesName;
+
+    private String entryCode;
+    private String entryName;
+
+    private String msg;
+
+    private Integer amount;
+
+    private String behospitalCodeStr;
+}

+ 428 - 0
mrman-service/src/main/java/com/diagbot/entity/MedBehospitalInfo.java

@@ -0,0 +1,428 @@
+package com.diagbot.entity;
+
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 住院病历信息
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public class MedBehospitalInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 性别(男,女)
+     */
+    private String sex;
+
+    /**
+     * 出生日期
+     */
+    private Date birthday;
+
+    /**
+     * 档案号
+     */
+    private String fileCode;
+
+    /**
+     * 质控类型
+     */
+    private Long qcTypeId;
+
+    /**
+     * 病区编码
+     */
+    private String wardCode;
+
+    /**
+     * 病区名称
+     */
+    private String wardName;
+
+    /**
+     * 住院科室ID
+     */
+    private String behDeptId;
+
+    /**
+     * 住院科室名称
+     */
+    private String behDeptName;
+
+    /**
+     * 床位号
+     */
+    private String bedCode;
+
+    /**
+     * 床位名称
+     */
+    private String bedName;
+
+    /**
+     * 医保类别
+     */
+    private String insuranceName;
+
+    /**
+     * 职业
+     */
+    private String jobType;
+
+    /**
+     * 入院时间
+     */
+    private Date behospitalDate;
+
+    /**
+     * 出院时间
+     */
+    private Date leaveHospitalDate;
+
+    /**
+     * 疾病ICD编码
+     */
+    private String diagnoseIcd;
+
+    /**
+     * 疾病名称
+     */
+    private String diagnose;
+
+    /**
+     * 主治医生ID
+     */
+    private String doctorId;
+
+    /**
+     * 主治医生姓名
+     */
+    private String doctorName;
+
+    /**
+     * 住院医生ID
+     */
+    private String behDoctorId;
+
+    /**
+     * 住院医生姓名
+     */
+    private String behDoctorName;
+
+    /**
+     * 主任医生ID
+     */
+    private String directorDoctorId;
+
+    /**
+     * 主任医生姓名
+     */
+    private String directorDoctorName;
+
+    /**
+     * 是否归档(0:未归档,1:已归档)
+     */
+    private String isPlacefile;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    public String getBehospitalCode() {
+        return behospitalCode;
+    }
+
+    public void setBehospitalCode(String behospitalCode) {
+        this.behospitalCode = behospitalCode;
+    }
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    public String getSex() {
+        return sex;
+    }
+
+    public void setSex(String sex) {
+        this.sex = sex;
+    }
+    public Date getBirthday() {
+        return birthday;
+    }
+
+    public void setBirthday(Date birthday) {
+        this.birthday = birthday;
+    }
+    public String getFileCode() {
+        return fileCode;
+    }
+
+    public void setFileCode(String fileCode) {
+        this.fileCode = fileCode;
+    }
+    public Long getQcTypeId() {
+        return qcTypeId;
+    }
+
+    public void setQcTypeId(Long qcTypeId) {
+        this.qcTypeId = qcTypeId;
+    }
+    public String getWardCode() {
+        return wardCode;
+    }
+
+    public void setWardCode(String wardCode) {
+        this.wardCode = wardCode;
+    }
+    public String getWardName() {
+        return wardName;
+    }
+
+    public void setWardName(String wardName) {
+        this.wardName = wardName;
+    }
+    public String getBehDeptId() {
+        return behDeptId;
+    }
+
+    public void setBehDeptId(String behDeptId) {
+        this.behDeptId = behDeptId;
+    }
+    public String getBehDeptName() {
+        return behDeptName;
+    }
+
+    public void setBehDeptName(String behDeptName) {
+        this.behDeptName = behDeptName;
+    }
+    public String getBedCode() {
+        return bedCode;
+    }
+
+    public void setBedCode(String bedCode) {
+        this.bedCode = bedCode;
+    }
+    public String getBedName() {
+        return bedName;
+    }
+
+    public void setBedName(String bedName) {
+        this.bedName = bedName;
+    }
+    public String getInsuranceName() {
+        return insuranceName;
+    }
+
+    public void setInsuranceName(String insuranceName) {
+        this.insuranceName = insuranceName;
+    }
+    public String getJobType() {
+        return jobType;
+    }
+
+    public void setJobType(String jobType) {
+        this.jobType = jobType;
+    }
+    public Date getBehospitalDate() {
+        return behospitalDate;
+    }
+
+    public void setBehospitalDate(Date behospitalDate) {
+        this.behospitalDate = behospitalDate;
+    }
+    public Date getLeaveHospitalDate() {
+        return leaveHospitalDate;
+    }
+
+    public void setLeaveHospitalDate(Date leaveHospitalDate) {
+        this.leaveHospitalDate = leaveHospitalDate;
+    }
+    public String getDiagnoseIcd() {
+        return diagnoseIcd;
+    }
+
+    public void setDiagnoseIcd(String diagnoseIcd) {
+        this.diagnoseIcd = diagnoseIcd;
+    }
+    public String getDiagnose() {
+        return diagnose;
+    }
+
+    public void setDiagnose(String diagnose) {
+        this.diagnose = diagnose;
+    }
+    public String getDoctorId() {
+        return doctorId;
+    }
+
+    public void setDoctorId(String doctorId) {
+        this.doctorId = doctorId;
+    }
+    public String getDoctorName() {
+        return doctorName;
+    }
+
+    public void setDoctorName(String doctorName) {
+        this.doctorName = doctorName;
+    }
+    public String getBehDoctorId() {
+        return behDoctorId;
+    }
+
+    public void setBehDoctorId(String behDoctorId) {
+        this.behDoctorId = behDoctorId;
+    }
+    public String getBehDoctorName() {
+        return behDoctorName;
+    }
+
+    public void setBehDoctorName(String behDoctorName) {
+        this.behDoctorName = behDoctorName;
+    }
+    public String getDirectorDoctorId() {
+        return directorDoctorId;
+    }
+
+    public void setDirectorDoctorId(String directorDoctorId) {
+        this.directorDoctorId = directorDoctorId;
+    }
+    public String getDirectorDoctorName() {
+        return directorDoctorName;
+    }
+
+    public void setDirectorDoctorName(String directorDoctorName) {
+        this.directorDoctorName = directorDoctorName;
+    }
+    public String getIsPlacefile() {
+        return isPlacefile;
+    }
+
+    public void setIsPlacefile(String isPlacefile) {
+        this.isPlacefile = isPlacefile;
+    }
+    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;
+    }
+
+    @Override
+    public String toString() {
+        return "MedBehospitalInfo{" +
+            "behospitalCode=" + behospitalCode +
+            ", hospitalId=" + hospitalId +
+            ", name=" + name +
+            ", sex=" + sex +
+            ", birthday=" + birthday +
+            ", fileCode=" + fileCode +
+            ", qcTypeId=" + qcTypeId +
+            ", wardCode=" + wardCode +
+            ", wardName=" + wardName +
+            ", behDeptId=" + behDeptId +
+            ", behDeptName=" + behDeptName +
+            ", bedCode=" + bedCode +
+            ", bedName=" + bedName +
+            ", insuranceName=" + insuranceName +
+            ", jobType=" + jobType +
+            ", behospitalDate=" + behospitalDate +
+            ", leaveHospitalDate=" + leaveHospitalDate +
+            ", diagnoseIcd=" + diagnoseIcd +
+            ", diagnose=" + diagnose +
+            ", doctorId=" + doctorId +
+            ", doctorName=" + doctorName +
+            ", behDoctorId=" + behDoctorId +
+            ", behDoctorName=" + behDoctorName +
+            ", directorDoctorId=" + directorDoctorId +
+            ", directorDoctorName=" + directorDoctorName +
+            ", isPlacefile=" + isPlacefile +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+        "}";
+    }
+}

+ 73 - 0
mrman-service/src/main/java/com/diagbot/entity/MedModuleMapping.java

@@ -0,0 +1,73 @@
+package com.diagbot.entity;
+
+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 2020-05-26
+ */
+@Data
+public class MedModuleMapping 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 moduleId;
+
+    /**
+     * 文书id
+     */
+    private Long recordId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 261 - 0
mrman-service/src/main/java/com/diagbot/entity/MedQcresultDetail.java

@@ -0,0 +1,261 @@
+package com.diagbot.entity;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 质控评分明细信息
+每次评分增加一条信息,前面所有评分is_deleted全部设置为Y
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public class MedQcresultDetail implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 模块id
+     */
+    private Long casesId;
+
+    /**
+     * 模块总分
+     */
+    private BigDecimal casesScore;
+
+    /**
+     * 条目ID
+     */
+    private Long casesEntryId;
+
+    /**
+     * 人工修改分值
+     */
+    private BigDecimal score;
+
+    /**
+     * 提示信息
+     */
+    private String msg;
+
+    /**
+     * 质控返回提示信息
+     */
+    private String info;
+
+    /**
+     * 单项否决(1-单项否决 0-非)
+     */
+    private Integer isReject;
+
+    /**
+     * 初始类型(1:机器,2:人工)
+     */
+    private Integer gradeType;
+
+    /**
+     * 操作类型(1:新增,2:删除,3:修改)
+     */
+    private Integer optType;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    public String getBehospitalCode() {
+        return behospitalCode;
+    }
+
+    public void setBehospitalCode(String behospitalCode) {
+        this.behospitalCode = behospitalCode;
+    }
+    public Long getCasesId() {
+        return casesId;
+    }
+
+    public void setCasesId(Long casesId) {
+        this.casesId = casesId;
+    }
+    public BigDecimal getCasesScore() {
+        return casesScore;
+    }
+
+    public void setCasesScore(BigDecimal casesScore) {
+        this.casesScore = casesScore;
+    }
+    public Long getCasesEntryId() {
+        return casesEntryId;
+    }
+
+    public void setCasesEntryId(Long casesEntryId) {
+        this.casesEntryId = casesEntryId;
+    }
+    public BigDecimal getScore() {
+        return score;
+    }
+
+    public void setScore(BigDecimal score) {
+        this.score = score;
+    }
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+    public String getInfo() {
+        return info;
+    }
+
+    public void setInfo(String info) {
+        this.info = info;
+    }
+    public Integer getIsReject() {
+        return isReject;
+    }
+
+    public void setIsReject(Integer isReject) {
+        this.isReject = isReject;
+    }
+    public Integer getGradeType() {
+        return gradeType;
+    }
+
+    public void setGradeType(Integer gradeType) {
+        this.gradeType = gradeType;
+    }
+    public Integer getOptType() {
+        return optType;
+    }
+
+    public void setOptType(Integer optType) {
+        this.optType = optType;
+    }
+    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 getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "MedQcresultDetail{" +
+            "id=" + id +
+            ", hospitalId=" + hospitalId +
+            ", behospitalCode=" + behospitalCode +
+            ", casesId=" + casesId +
+            ", casesScore=" + casesScore +
+            ", casesEntryId=" + casesEntryId +
+            ", score=" + score +
+            ", msg=" + msg +
+            ", info=" + info +
+            ", isReject=" + isReject +
+            ", gradeType=" + gradeType +
+            ", optType=" + optType +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 95 - 0
mrman-service/src/main/java/com/diagbot/entity/MedRecordAnalyze.java

@@ -0,0 +1,95 @@
+package com.diagbot.entity;
+
+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 2020-05-26
+ */
+@Data
+public class MedRecordAnalyze implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院病历文书类型细分类名称
+     */
+    private String name;
+
+    /**
+     * 数据模块ID
+     */
+    private Long modeId;
+
+    /**
+     * 数据模块名称
+     */
+    private String modeName;
+
+    /**
+     * 医院病历文书类型
+     */
+    private String recType;
+
+    /**
+     * 病历号示例
+     */
+    private String behospitalCodes;
+
+    /**
+     * 医院病历文书类型细分类
+     */
+    private String mapType;
+
+    /**
+     * key集合,用英文逗号隔开
+     */
+    private String mapKeys;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 18 - 120
mrman-service/src/main/java/com/diagbot/entity/QcCasesEntry.java

@@ -2,7 +2,8 @@ package com.diagbot.entity;
 
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
-import java.time.LocalDateTime;
+import lombok.Data;
+
 import java.io.Serializable;
 import java.io.Serializable;
 import java.util.Date;
 import java.util.Date;
 
 
@@ -14,6 +15,7 @@ import java.util.Date;
  * @author wangfeng
  * @author wangfeng
  * @since 2020-04-27
  * @since 2020-04-27
  */
  */
+@Data
 public class QcCasesEntry implements Serializable {
 public class QcCasesEntry implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
@@ -43,6 +45,21 @@ public class QcCasesEntry implements Serializable {
      */
      */
     private String name;
     private String name;
 
 
+    /**
+     * 规则类型(0:无,1:空项,2:错误)
+     */
+    private Integer ruleType;
+
+    /**
+     * 开发状态标识: 0-未开发  1-已开发
+     */
+    private Integer devType;
+
+    /**
+     * 准确率类型:0-极高,1-高,2-中,3-低
+     */
+    private Integer accuracyType;
+
     private String precond;
     private String precond;
 
 
     /**
     /**
@@ -79,123 +96,4 @@ public class QcCasesEntry implements Serializable {
      * 修改人,如果为0则表示纪录未修改
      * 修改人,如果为0则表示纪录未修改
      */
      */
     private String modifier;
     private String modifier;
-
-    public Long getId() {
-        return id;
-    }
-
-    public void setId(Long id) {
-        this.id = id;
-    }
-    public Long getCasesId() {
-        return casesId;
-    }
-
-    public void setCasesId(Long casesId) {
-        this.casesId = casesId;
-    }
-    public String getCasesName() {
-        return casesName;
-    }
-
-    public void setCasesName(String casesName) {
-        this.casesName = casesName;
-    }
-    public Long getModeId() {
-        return modeId;
-    }
-
-    public void setModeId(Long modeId) {
-        this.modeId = modeId;
-    }
-    public String getCode() {
-        return code;
-    }
-
-    public void setCode(String code) {
-        this.code = code;
-    }
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-    public String getPrecond() {
-        return precond;
-    }
-
-    public void setPrecond(String precond) {
-        this.precond = precond;
-    }
-    public Integer getOrderNo() {
-        return orderNo;
-    }
-
-    public void setOrderNo(Integer orderNo) {
-        this.orderNo = orderNo;
-    }
-    public String getRemark() {
-        return remark;
-    }
-
-    public void setRemark(String remark) {
-        this.remark = remark;
-    }
-    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;
-    }
-
-    @Override
-    public String toString() {
-        return "QcCasesEntry{" +
-                "id=" + id +
-                ", casesId=" + casesId +
-                ", casesName=" + casesName +
-                ", modeId=" + modeId +
-                ", code=" + code +
-                ", name=" + name +
-                ", precond=" + precond +
-                ", orderNo=" + orderNo +
-                ", remark=" + remark +
-                ", isDeleted=" + isDeleted +
-                ", gmtCreate=" + gmtCreate +
-                ", gmtModified=" + gmtModified +
-                ", creator=" + creator +
-                ", modifier=" + modifier +
-                "}";
-    }
 }
 }

+ 428 - 0
mrman-service/src/main/java/com/diagbot/entity/StdBehospitalInfo.java

@@ -0,0 +1,428 @@
+package com.diagbot.entity;
+
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 标准住院病历信息
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public class StdBehospitalInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 性别(男,女)
+     */
+    private String sex;
+
+    /**
+     * 出生日期
+     */
+    private Date birthday;
+
+    /**
+     * 档案号
+     */
+    private String fileCode;
+
+    /**
+     * 质控类型
+     */
+    private Long qcTypeId;
+
+    /**
+     * 病区编码
+     */
+    private String wardCode;
+
+    /**
+     * 病区名称
+     */
+    private String wardName;
+
+    /**
+     * 住院科室ID
+     */
+    private String behDeptId;
+
+    /**
+     * 住院科室名称
+     */
+    private String behDeptName;
+
+    /**
+     * 床位号
+     */
+    private String bedCode;
+
+    /**
+     * 床位名称
+     */
+    private String bedName;
+
+    /**
+     * 医保类别
+     */
+    private String insuranceName;
+
+    /**
+     * 职业
+     */
+    private String jobType;
+
+    /**
+     * 入院时间
+     */
+    private Date behospitalDate;
+
+    /**
+     * 出院时间
+     */
+    private Date leaveHospitalDate;
+
+    /**
+     * 疾病ICD编码
+     */
+    private String diagnoseIcd;
+
+    /**
+     * 疾病名称
+     */
+    private String diagnose;
+
+    /**
+     * 主治医生ID
+     */
+    private String doctorId;
+
+    /**
+     * 主治医生姓名
+     */
+    private String doctorName;
+
+    /**
+     * 住院医生ID
+     */
+    private String behDoctorId;
+
+    /**
+     * 住院医生姓名
+     */
+    private String behDoctorName;
+
+    /**
+     * 主任医生ID
+     */
+    private String directorDoctorId;
+
+    /**
+     * 主任医生姓名
+     */
+    private String directorDoctorName;
+
+    /**
+     * 是否归档(0:未归档,1:已归档)
+     */
+    private String isPlacefile;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    public String getBehospitalCode() {
+        return behospitalCode;
+    }
+
+    public void setBehospitalCode(String behospitalCode) {
+        this.behospitalCode = behospitalCode;
+    }
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    public String getSex() {
+        return sex;
+    }
+
+    public void setSex(String sex) {
+        this.sex = sex;
+    }
+    public Date getBirthday() {
+        return birthday;
+    }
+
+    public void setBirthday(Date birthday) {
+        this.birthday = birthday;
+    }
+    public String getFileCode() {
+        return fileCode;
+    }
+
+    public void setFileCode(String fileCode) {
+        this.fileCode = fileCode;
+    }
+    public Long getQcTypeId() {
+        return qcTypeId;
+    }
+
+    public void setQcTypeId(Long qcTypeId) {
+        this.qcTypeId = qcTypeId;
+    }
+    public String getWardCode() {
+        return wardCode;
+    }
+
+    public void setWardCode(String wardCode) {
+        this.wardCode = wardCode;
+    }
+    public String getWardName() {
+        return wardName;
+    }
+
+    public void setWardName(String wardName) {
+        this.wardName = wardName;
+    }
+    public String getBehDeptId() {
+        return behDeptId;
+    }
+
+    public void setBehDeptId(String behDeptId) {
+        this.behDeptId = behDeptId;
+    }
+    public String getBehDeptName() {
+        return behDeptName;
+    }
+
+    public void setBehDeptName(String behDeptName) {
+        this.behDeptName = behDeptName;
+    }
+    public String getBedCode() {
+        return bedCode;
+    }
+
+    public void setBedCode(String bedCode) {
+        this.bedCode = bedCode;
+    }
+    public String getBedName() {
+        return bedName;
+    }
+
+    public void setBedName(String bedName) {
+        this.bedName = bedName;
+    }
+    public String getInsuranceName() {
+        return insuranceName;
+    }
+
+    public void setInsuranceName(String insuranceName) {
+        this.insuranceName = insuranceName;
+    }
+    public String getJobType() {
+        return jobType;
+    }
+
+    public void setJobType(String jobType) {
+        this.jobType = jobType;
+    }
+    public Date getBehospitalDate() {
+        return behospitalDate;
+    }
+
+    public void setBehospitalDate(Date behospitalDate) {
+        this.behospitalDate = behospitalDate;
+    }
+    public Date getLeaveHospitalDate() {
+        return leaveHospitalDate;
+    }
+
+    public void setLeaveHospitalDate(Date leaveHospitalDate) {
+        this.leaveHospitalDate = leaveHospitalDate;
+    }
+    public String getDiagnoseIcd() {
+        return diagnoseIcd;
+    }
+
+    public void setDiagnoseIcd(String diagnoseIcd) {
+        this.diagnoseIcd = diagnoseIcd;
+    }
+    public String getDiagnose() {
+        return diagnose;
+    }
+
+    public void setDiagnose(String diagnose) {
+        this.diagnose = diagnose;
+    }
+    public String getDoctorId() {
+        return doctorId;
+    }
+
+    public void setDoctorId(String doctorId) {
+        this.doctorId = doctorId;
+    }
+    public String getDoctorName() {
+        return doctorName;
+    }
+
+    public void setDoctorName(String doctorName) {
+        this.doctorName = doctorName;
+    }
+    public String getBehDoctorId() {
+        return behDoctorId;
+    }
+
+    public void setBehDoctorId(String behDoctorId) {
+        this.behDoctorId = behDoctorId;
+    }
+    public String getBehDoctorName() {
+        return behDoctorName;
+    }
+
+    public void setBehDoctorName(String behDoctorName) {
+        this.behDoctorName = behDoctorName;
+    }
+    public String getDirectorDoctorId() {
+        return directorDoctorId;
+    }
+
+    public void setDirectorDoctorId(String directorDoctorId) {
+        this.directorDoctorId = directorDoctorId;
+    }
+    public String getDirectorDoctorName() {
+        return directorDoctorName;
+    }
+
+    public void setDirectorDoctorName(String directorDoctorName) {
+        this.directorDoctorName = directorDoctorName;
+    }
+    public String getIsPlacefile() {
+        return isPlacefile;
+    }
+
+    public void setIsPlacefile(String isPlacefile) {
+        this.isPlacefile = isPlacefile;
+    }
+    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;
+    }
+
+    @Override
+    public String toString() {
+        return "StdBehospitalInfo{" +
+            "behospitalCode=" + behospitalCode +
+            ", hospitalId=" + hospitalId +
+            ", name=" + name +
+            ", sex=" + sex +
+            ", birthday=" + birthday +
+            ", fileCode=" + fileCode +
+            ", qcTypeId=" + qcTypeId +
+            ", wardCode=" + wardCode +
+            ", wardName=" + wardName +
+            ", behDeptId=" + behDeptId +
+            ", behDeptName=" + behDeptName +
+            ", bedCode=" + bedCode +
+            ", bedName=" + bedName +
+            ", insuranceName=" + insuranceName +
+            ", jobType=" + jobType +
+            ", behospitalDate=" + behospitalDate +
+            ", leaveHospitalDate=" + leaveHospitalDate +
+            ", diagnoseIcd=" + diagnoseIcd +
+            ", diagnose=" + diagnose +
+            ", doctorId=" + doctorId +
+            ", doctorName=" + doctorName +
+            ", behDoctorId=" + behDoctorId +
+            ", behDoctorName=" + behDoctorName +
+            ", directorDoctorId=" + directorDoctorId +
+            ", directorDoctorName=" + directorDoctorName +
+            ", isPlacefile=" + isPlacefile +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+        "}";
+    }
+}

+ 223 - 0
mrman-service/src/main/java/com/diagbot/entity/StdMissionDetail.java

@@ -0,0 +1,223 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-12
+ */
+public class StdMissionDetail 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 missionId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 模块id
+     */
+    private Long casesId;
+
+    private String casesName;
+
+    /**
+     * 条目code
+     */
+    private String entryCode;
+
+    /**
+     * 提示信息
+     */
+    private String entryName;
+
+    private Integer amount;
+
+    @TableField("behospitalCodeStr")
+    private String behospitalCodeStr;
+
+    private Integer status;
+
+    /**
+     * 备注
+     */
+    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 getMissionId() {
+        return missionId;
+    }
+
+    public void setMissionId(Long missionId) {
+        this.missionId = missionId;
+    }
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    public Long getCasesId() {
+        return casesId;
+    }
+
+    public void setCasesId(Long casesId) {
+        this.casesId = casesId;
+    }
+    public String getCasesName() {
+        return casesName;
+    }
+
+    public void setCasesName(String casesName) {
+        this.casesName = casesName;
+    }
+    public String getEntryCode() {
+        return entryCode;
+    }
+
+    public void setEntryCode(String entryCode) {
+        this.entryCode = entryCode;
+    }
+    public String getEntryName() {
+        return entryName;
+    }
+
+    public void setEntryName(String entryName) {
+        this.entryName = entryName;
+    }
+    public Integer getAmount() {
+        return amount;
+    }
+
+    public void setAmount(Integer amount) {
+        this.amount = amount;
+    }
+    public String getBehospitalCodeStr() {
+        return behospitalCodeStr;
+    }
+
+    public void setBehospitalCodeStr(String behospitalCodeStr) {
+        this.behospitalCodeStr = behospitalCodeStr;
+    }
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "StdMissionDetail{" +
+            "id=" + id +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", missionId=" + missionId +
+            ", hospitalId=" + hospitalId +
+            ", casesId=" + casesId +
+            ", casesName=" + casesName +
+            ", entryCode=" + entryCode +
+            ", entryName=" + entryName +
+            ", amount=" + amount +
+            ", behospitalCodeStr=" + behospitalCodeStr +
+            ", status=" + status +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 139 - 0
mrman-service/src/main/java/com/diagbot/entity/StdMissionInfo.java

@@ -0,0 +1,139 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-12
+ */
+public class StdMissionInfo 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 missionName;
+
+    private Integer status;
+
+    /**
+     * 备注
+     */
+    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 getMissionName() {
+        return missionName;
+    }
+
+    public void setMissionName(String missionName) {
+        this.missionName = missionName;
+    }
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "StdMissionInfo{" +
+            "id=" + id +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", missionName=" + missionName +
+            ", status=" + status +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 276 - 0
mrman-service/src/main/java/com/diagbot/entity/StdQcresultDetail.java

@@ -0,0 +1,276 @@
+package com.diagbot.entity;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 标准质控评分明细信息
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public class StdQcresultDetail implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 模块id
+     */
+    private Long casesId;
+
+    /**
+     * 模块总分
+     */
+    private BigDecimal casesScore;
+
+    /**
+     * 条目ID
+     */
+    private Long casesEntryId;
+
+    /**
+     * 人工修改分值
+     */
+    private BigDecimal score;
+
+    /**
+     * 提示信息
+     */
+    private String msg;
+
+    /**
+     * 质控返回提示信息
+     */
+    private String info;
+
+    /**
+     * 单项否决(1-单项否决 0-非)
+     */
+    private Integer isReject;
+
+    /**
+     * 初始类型(1:机器,2:人工)
+     */
+    private Integer gradeType;
+
+    /**
+     * 操作类型(1:新增,2:删除,3:修改)
+     */
+    private Integer optType;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 是否满足
+     */
+    private Integer satisfy;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    public String getBehospitalCode() {
+        return behospitalCode;
+    }
+
+    public void setBehospitalCode(String behospitalCode) {
+        this.behospitalCode = behospitalCode;
+    }
+    public Long getCasesId() {
+        return casesId;
+    }
+
+    public void setCasesId(Long casesId) {
+        this.casesId = casesId;
+    }
+    public BigDecimal getCasesScore() {
+        return casesScore;
+    }
+
+    public void setCasesScore(BigDecimal casesScore) {
+        this.casesScore = casesScore;
+    }
+    public Long getCasesEntryId() {
+        return casesEntryId;
+    }
+
+    public void setCasesEntryId(Long casesEntryId) {
+        this.casesEntryId = casesEntryId;
+    }
+    public BigDecimal getScore() {
+        return score;
+    }
+
+    public void setScore(BigDecimal score) {
+        this.score = score;
+    }
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+    public String getInfo() {
+        return info;
+    }
+
+    public void setInfo(String info) {
+        this.info = info;
+    }
+    public Integer getIsReject() {
+        return isReject;
+    }
+
+    public void setIsReject(Integer isReject) {
+        this.isReject = isReject;
+    }
+    public Integer getGradeType() {
+        return gradeType;
+    }
+
+    public void setGradeType(Integer gradeType) {
+        this.gradeType = gradeType;
+    }
+    public Integer getOptType() {
+        return optType;
+    }
+
+    public void setOptType(Integer optType) {
+        this.optType = optType;
+    }
+    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 getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+    public Integer getSatisfy() {
+        return satisfy;
+    }
+
+    public void setSatisfy(Integer satisfy) {
+        this.satisfy = satisfy;
+    }
+
+    @Override
+    public String toString() {
+        return "StdQcresultDetail{" +
+            "id=" + id +
+            ", hospitalId=" + hospitalId +
+            ", behospitalCode=" + behospitalCode +
+            ", casesId=" + casesId +
+            ", casesScore=" + casesScore +
+            ", casesEntryId=" + casesEntryId +
+            ", score=" + score +
+            ", msg=" + msg +
+            ", info=" + info +
+            ", isReject=" + isReject +
+            ", gradeType=" + gradeType +
+            ", optType=" + optType +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", remark=" + remark +
+            ", satisfy=" + satisfy +
+        "}";
+    }
+}

+ 17 - 15
mrman-service/src/main/java/com/diagbot/facade/CasesEntryHospitalFacade.java

@@ -11,12 +11,10 @@ import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.exception.CommonException;
-import com.diagbot.service.CasesEntryHospitalService;
 import com.diagbot.service.impl.CasesEntryHospitalServiceImpl;
 import com.diagbot.service.impl.CasesEntryHospitalServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.ListUtil;
-import com.diagbot.util.SqlExecuteUtil;
 import com.diagbot.vo.GetAllByHospitalVO;
 import com.diagbot.vo.GetAllByHospitalVO;
 import com.diagbot.vo.InsertByHospitalVO;
 import com.diagbot.vo.InsertByHospitalVO;
 import com.diagbot.vo.UpdateByHospitalVO;
 import com.diagbot.vo.UpdateByHospitalVO;
@@ -90,6 +88,7 @@ public class CasesEntryHospitalFacade extends CasesEntryHospitalServiceImpl {
                     getAllByHospitalDetialDTO.setModeName(qcCasesEntry.getModeName());
                     getAllByHospitalDetialDTO.setModeName(qcCasesEntry.getModeName());
                     getAllByHospitalDetialDTO.setMsg(casesEntryHospitalMap.get(qcCasesEntry.getId()).getMsg());
                     getAllByHospitalDetialDTO.setMsg(casesEntryHospitalMap.get(qcCasesEntry.getId()).getMsg());
                     getAllByHospitalDetialDTO.setIsUsed(casesEntryHospitalMap.get(qcCasesEntry.getId()).getIsUsed());
                     getAllByHospitalDetialDTO.setIsUsed(casesEntryHospitalMap.get(qcCasesEntry.getId()).getIsUsed());
+                    getAllByHospitalDetialDTO.setIsReject(casesEntryHospitalMap.get(qcCasesEntry.getId()).getIsReject());
                     getAllByHospitalDetialDTO.setScore(casesEntryHospitalMap.get(qcCasesEntry.getId()).getScore());
                     getAllByHospitalDetialDTO.setScore(casesEntryHospitalMap.get(qcCasesEntry.getId()).getScore());
                     getAllByHospitalDetialDTO.setPrecond(qcCasesEntry.getPrecond());
                     getAllByHospitalDetialDTO.setPrecond(qcCasesEntry.getPrecond());
                     getAllByHospitalDetialDTO.setName(qcCasesEntry.getName());
                     getAllByHospitalDetialDTO.setName(qcCasesEntry.getName());
@@ -116,11 +115,14 @@ public class CasesEntryHospitalFacade extends CasesEntryHospitalServiceImpl {
         casesEntryHospitalQueryWrapper
         casesEntryHospitalQueryWrapper
                 .eq("is_deleted",IsDeleteEnum.N.getKey())
                 .eq("is_deleted",IsDeleteEnum.N.getKey())
                 .in("hospital_id",updateByHospitalVO.getHospitalIds());
                 .in("hospital_id",updateByHospitalVO.getHospitalIds());
-        this.remove(casesEntryHospitalQueryWrapper);
+
+        boolean res = this.remove(casesEntryHospitalQueryWrapper);
         //添加新的
         //添加新的
-        casesEntryHospitalService.saveBatch(updateByHospitalVO.getCasesEntryHospitals());
+        if(res){
+           res = casesEntryHospitalService.saveAll(updateByHospitalVO.getCasesEntryHospitals());
+        }
 
 
-        return true;
+        return res;
     }
     }
 
 
     /**
     /**
@@ -131,15 +133,15 @@ public class CasesEntryHospitalFacade extends CasesEntryHospitalServiceImpl {
      */
      */
     public Boolean insertByHospital(InsertByHospitalVO insertByHospitalVO){
     public Boolean insertByHospital(InsertByHospitalVO insertByHospitalVO){
 
 
-            QueryWrapper<QcCasesEntry> qcCasesEntryWrapper = new QueryWrapper<>();
-            qcCasesEntryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey())
-                    .ne("id",insertByHospitalVO.getId()==null? -1:insertByHospitalVO.getId())
-                    .eq("name",insertByHospitalVO.getName())
-                    .eq("cases_id",insertByHospitalVO.getCasesId());
-            int sum = qcCacesEntryFacade.count(qcCasesEntryWrapper);
-            if (sum != 0) {
-                throw new CommonException(CommonErrorCode.NOT_EXISTS, "该条目名称存在");
-            }
+        QueryWrapper<QcCasesEntry> qcCasesEntryWrapper = new QueryWrapper<>();
+        qcCasesEntryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey())
+                .ne("id",insertByHospitalVO.getId()==null? -1:insertByHospitalVO.getId())
+                .eq("name",insertByHospitalVO.getName())
+                .eq("cases_id",insertByHospitalVO.getCasesId());
+        int sum = qcCacesEntryFacade.count(qcCasesEntryWrapper);
+        if (sum != 0) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该条目名称存在");
+        }
         QueryWrapper<QcCasesEntry> qcCasesEntryQueryWrapper = new QueryWrapper<>();
         QueryWrapper<QcCasesEntry> qcCasesEntryQueryWrapper = new QueryWrapper<>();
         qcCasesEntryQueryWrapper.eq("id",insertByHospitalVO.getId());
         qcCasesEntryQueryWrapper.eq("id",insertByHospitalVO.getId());
         List<QcCasesEntry> qcCasesEntries = qcCacesEntryFacade.list(qcCasesEntryQueryWrapper);
         List<QcCasesEntry> qcCasesEntries = qcCacesEntryFacade.list(qcCasesEntryQueryWrapper);
@@ -167,7 +169,7 @@ public class CasesEntryHospitalFacade extends CasesEntryHospitalServiceImpl {
             qcCasesEntry.setGmtCreate(date);
             qcCasesEntry.setGmtCreate(date);
             qcCasesEntry.setGmtModified(date);
             qcCasesEntry.setGmtModified(date);
             boolean res= qcCacesEntryFacade.save(qcCasesEntry);
             boolean res= qcCacesEntryFacade.save(qcCasesEntry);
-            //先保存, 在更新Coed
+            //先保存, 在更新Code
             if(res){
             if(res){
                 Long id = qcCasesEntry.getId();
                 Long id = qcCasesEntry.getId();
                 String code = qcCasesEntry.getCode()+id;
                 String code = qcCasesEntry.getCode()+id;

+ 27 - 0
mrman-service/src/main/java/com/diagbot/facade/MedBehospitalInfoFacade.java

@@ -0,0 +1,27 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.MedBehospitalDeptDTO;
+import com.diagbot.service.MedBehospitalInfoService;
+import com.diagbot.service.impl.MedBehospitalInfoServiceImpl;
+import com.diagbot.vo.MedBehospitalDeptVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-10 10:23
+ */
+@Component
+public class MedBehospitalInfoFacade extends MedBehospitalInfoServiceImpl {
+    @Autowired
+    MedBehospitalInfoService medBehospitalInfoService;
+
+    public List<MedBehospitalDeptDTO> findhospitalDepts(MedBehospitalDeptVO medBehospitalDeptVO) {
+
+        return medBehospitalInfoService.findhospitalDept(medBehospitalDeptVO);
+
+    }
+}

+ 14 - 0
mrman-service/src/main/java/com/diagbot/facade/MedModuleMappingFacade.java

@@ -0,0 +1,14 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.MedModuleMappingServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author zhoutg
+ * @Description:
+ * @date 2020-04-26 17:24
+ */
+@Component
+public class MedModuleMappingFacade extends MedModuleMappingServiceImpl {
+
+}

+ 27 - 0
mrman-service/src/main/java/com/diagbot/facade/MedQcresultDetailFacade.java

@@ -0,0 +1,27 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.MedQcresultDetailAllDTO;
+import com.diagbot.service.MedQcresultDetailService;
+import com.diagbot.service.impl.MedQcresultDetailServiceImpl;
+import com.diagbot.vo.MedQcresultDetailAllVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-10 10:51
+ */
+@Component
+public class MedQcresultDetailFacade extends MedQcresultDetailServiceImpl {
+    @Autowired
+    MedQcresultDetailService medQcresultDetailService;
+
+
+    public List<MedQcresultDetailAllDTO> getMedQcresultDetail(MedQcresultDetailAllVO medQcresultDetailAllVO) {
+        List<MedQcresultDetailAllDTO> data = medQcresultDetailService.getMedDetail(medQcresultDetailAllVO);
+        return  data;
+    }
+}

+ 25 - 0
mrman-service/src/main/java/com/diagbot/facade/MedRecordAnalyzeFacade.java

@@ -0,0 +1,25 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.MedRecordAnalyzeDTO;
+import com.diagbot.service.impl.MedRecordAnalyzeServiceImpl;
+import com.diagbot.vo.ModuleIndexVO;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author zhoutg
+ * @Description:
+ * @date 2020-04-26 17:24
+ */
+@Component
+public class MedRecordAnalyzeFacade extends MedRecordAnalyzeServiceImpl {
+
+    public List<MedRecordAnalyzeDTO> getByModuleIdFac(Long id) {
+        return this.getByModuleId(id);
+    }
+
+    public List<MedRecordAnalyzeDTO> indexFac(ModuleIndexVO moduleIndexVO) {
+        return this.index(moduleIndexVO);
+    }
+}

+ 134 - 15
mrman-service/src/main/java/com/diagbot/facade/QcCacesEntryFacade.java

@@ -7,22 +7,39 @@ import com.diagbot.dto.GetUpdateInfoDTO;
 import com.diagbot.dto.GetUpdateInfoDetialDTO;
 import com.diagbot.dto.GetUpdateInfoDetialDTO;
 import com.diagbot.dto.QcCasesEntryAllDTO;
 import com.diagbot.dto.QcCasesEntryAllDTO;
 import com.diagbot.dto.QcCasesEntrySimpleDTO;
 import com.diagbot.dto.QcCasesEntrySimpleDTO;
+import com.diagbot.dto.QcEntryTypeDTO;
+import com.diagbot.dto.QcEntryTypeDetailDTO;
 import com.diagbot.dto.QcHospitalInfoAllDTO;
 import com.diagbot.dto.QcHospitalInfoAllDTO;
+import com.diagbot.dto.QcTypeByEntryDTO;
+import com.diagbot.dto.QcTypeSimpDTO;
 import com.diagbot.entity.CasesEntryHospital;
 import com.diagbot.entity.CasesEntryHospital;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.entity.QcQuestionEntry;
 import com.diagbot.entity.QcQuestionEntry;
 import com.diagbot.entity.QcTypeCasesEntry;
 import com.diagbot.entity.QcTypeCasesEntry;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.QcTypeCasesEntryService;
 import com.diagbot.service.impl.QcCasesEntryServiceImpl;
 import com.diagbot.service.impl.QcCasesEntryServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.util.UserUtils;
 import com.diagbot.vo.GetUpdateInfoVO;
 import com.diagbot.vo.GetUpdateInfoVO;
 import com.diagbot.vo.QcCasesEntryAllVO;
 import com.diagbot.vo.QcCasesEntryAllVO;
 import com.diagbot.vo.QcCasesEntryIndexVO;
 import com.diagbot.vo.QcCasesEntryIndexVO;
 import com.diagbot.vo.QcEntryHospitalVO;
 import com.diagbot.vo.QcEntryHospitalVO;
+import com.diagbot.vo.QcEntryTypeIndexVO;
+import com.diagbot.vo.QcEntryTypePageVO;
+import com.diagbot.vo.QcEntryTypeSaveVO;
+import com.diagbot.vo.QcEntryTypeVO;
+import com.diagbot.vo.QcTypeHospitalVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
 import java.util.ArrayList;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
@@ -44,6 +61,11 @@ public class QcCacesEntryFacade extends QcCasesEntryServiceImpl {
     QcQuestionEntryFacade qcQuestionEntryFacade;
     QcQuestionEntryFacade qcQuestionEntryFacade;
     @Autowired
     @Autowired
     QcTypeCasesEntryFacade qcTypeCasesEntryFacade;
     QcTypeCasesEntryFacade qcTypeCasesEntryFacade;
+    @Autowired
+    @Qualifier("qcTypeCasesEntryServiceImpl")
+    QcTypeCasesEntryService qcTypeCasesEntryService;
+    @Autowired
+    QcTypeFacade qcTypeFacade;
 
 
     /**
     /**
      * 分页获取病例条目
      * 分页获取病例条目
@@ -51,7 +73,7 @@ public class QcCacesEntryFacade extends QcCasesEntryServiceImpl {
      * @param qcCasesEntryAllVO
      * @param qcCasesEntryAllVO
      * @return
      * @return
      */
      */
-    public IPage<QcCasesEntryAllDTO> getAll(QcCasesEntryAllVO qcCasesEntryAllVO){
+    public IPage<QcCasesEntryAllDTO> getAll(QcCasesEntryAllVO qcCasesEntryAllVO) {
         return this.getAllQcCasesEntry(qcCasesEntryAllVO);
         return this.getAllQcCasesEntry(qcCasesEntryAllVO);
     }
     }
 
 
@@ -61,7 +83,7 @@ public class QcCacesEntryFacade extends QcCasesEntryServiceImpl {
      * @param qcCasesEntryIndexVO
      * @param qcCasesEntryIndexVO
      * @return
      * @return
      */
      */
-    public IPage<QcCasesEntryAllDTO> getAllQcCasesEntryIndexFac(QcCasesEntryIndexVO qcCasesEntryIndexVO){
+    public IPage<QcCasesEntryAllDTO> getAllQcCasesEntryIndexFac(QcCasesEntryIndexVO qcCasesEntryIndexVO) {
         return this.getAllQcCasesEntryIndex(qcCasesEntryIndexVO);
         return this.getAllQcCasesEntryIndex(qcCasesEntryIndexVO);
     }
     }
 
 
@@ -71,29 +93,30 @@ public class QcCacesEntryFacade extends QcCasesEntryServiceImpl {
      * @param getUpdateInfoVO
      * @param getUpdateInfoVO
      * @return
      * @return
      */
      */
-    public List<GetUpdateInfoDTO>  getUpdateInfo(GetUpdateInfoVO getUpdateInfoVO){
+    public List<GetUpdateInfoDTO> getUpdateInfo(GetUpdateInfoVO getUpdateInfoVO) {
         QueryWrapper<QcCasesEntry> qcCasesEntryQueryWrapper = new QueryWrapper<>();
         QueryWrapper<QcCasesEntry> qcCasesEntryQueryWrapper = new QueryWrapper<>();
         qcCasesEntryQueryWrapper
         qcCasesEntryQueryWrapper
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
-                .eq("id",getUpdateInfoVO.getId());
+                .eq("id", getUpdateInfoVO.getId());
         QcCasesEntry qcCasesEntry = qcCacesEntryFacade.getOne(qcCasesEntryQueryWrapper);
         QcCasesEntry qcCasesEntry = qcCacesEntryFacade.getOne(qcCasesEntryQueryWrapper);
         QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
         QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
         casesEntryHospitalQueryWrapper
         casesEntryHospitalQueryWrapper
-                .eq("is_deleted",IsDeleteEnum.N.getKey())
-                .eq("cases_entry_id",qcCasesEntry.getId())
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("cases_entry_id", qcCasesEntry.getId())
                 .groupBy("hospital_id");
                 .groupBy("hospital_id");
         List<CasesEntryHospital> casesEntryHospitals = casesEntryHospitalFacade.list(casesEntryHospitalQueryWrapper);
         List<CasesEntryHospital> casesEntryHospitals = casesEntryHospitalFacade.list(casesEntryHospitalQueryWrapper);
         List<GetUpdateInfoDTO> getUpdateInfoDTOS = new ArrayList<>();
         List<GetUpdateInfoDTO> getUpdateInfoDTOS = new ArrayList<>();
         GetUpdateInfoDTO getUpdateInfoDTO = new GetUpdateInfoDTO();
         GetUpdateInfoDTO getUpdateInfoDTO = new GetUpdateInfoDTO();
         List<GetUpdateInfoDetialDTO> getUpdateInfoDetialDTOS = new ArrayList<>();
         List<GetUpdateInfoDetialDTO> getUpdateInfoDetialDTOS = new ArrayList<>();
         GetUpdateInfoDetialDTO getUpdateInfoDetialDTO = new GetUpdateInfoDetialDTO();
         GetUpdateInfoDetialDTO getUpdateInfoDetialDTO = new GetUpdateInfoDetialDTO();
-        BeanUtil.copyProperties(qcCasesEntry,getUpdateInfoDTO);
-        Map<Long,String> hospitalNameMap = qcHospitalInfoFacade.getHospitalInfoAll().stream().collect(Collectors.toMap(QcHospitalInfoAllDTO::getId,qcHospitalInfoAllDTO -> qcHospitalInfoAllDTO.getName()));
-        for (CasesEntryHospital casesEntryHospital: casesEntryHospitals) {
+        BeanUtil.copyProperties(qcCasesEntry, getUpdateInfoDTO);
+        Map<Long, String> hospitalNameMap = qcHospitalInfoFacade.getHospitalInfoAll().stream().collect(Collectors.toMap(QcHospitalInfoAllDTO::getId, qcHospitalInfoAllDTO -> qcHospitalInfoAllDTO.getName()));
+        for (CasesEntryHospital casesEntryHospital : casesEntryHospitals) {
             getUpdateInfoDetialDTO = new GetUpdateInfoDetialDTO();
             getUpdateInfoDetialDTO = new GetUpdateInfoDetialDTO();
             getUpdateInfoDetialDTO.setHospitalName(hospitalNameMap.get(casesEntryHospital.getHospitalId()));
             getUpdateInfoDetialDTO.setHospitalName(hospitalNameMap.get(casesEntryHospital.getHospitalId()));
             getUpdateInfoDetialDTO.setMsg(casesEntryHospital.getMsg());
             getUpdateInfoDetialDTO.setMsg(casesEntryHospital.getMsg());
             getUpdateInfoDetialDTO.setIsUsed(casesEntryHospital.getIsUsed());
             getUpdateInfoDetialDTO.setIsUsed(casesEntryHospital.getIsUsed());
+            getUpdateInfoDetialDTO.setIsReject(casesEntryHospital.getIsReject());
             getUpdateInfoDetialDTO.setScore(casesEntryHospital.getScore());
             getUpdateInfoDetialDTO.setScore(casesEntryHospital.getScore());
             getUpdateInfoDetialDTOS.add(getUpdateInfoDetialDTO);
             getUpdateInfoDetialDTOS.add(getUpdateInfoDetialDTO);
             getUpdateInfoDTO.setGetUpdateInfoDetialDTOS(getUpdateInfoDetialDTOS);
             getUpdateInfoDTO.setGetUpdateInfoDetialDTOS(getUpdateInfoDetialDTOS);
@@ -108,24 +131,24 @@ public class QcCacesEntryFacade extends QcCasesEntryServiceImpl {
      * @param getUpdateInfoVO
      * @param getUpdateInfoVO
      * @return
      * @return
      */
      */
-    public Boolean deleteQcCasesEntry(GetUpdateInfoVO getUpdateInfoVO){
-       //删除条目
+    public Boolean deleteQcCasesEntry(GetUpdateInfoVO getUpdateInfoVO) {
+        //删除条目
         QueryWrapper<QcCasesEntry> qcCasesEntryQueryWrapper = new QueryWrapper<>();
         QueryWrapper<QcCasesEntry> qcCasesEntryQueryWrapper = new QueryWrapper<>();
-        qcCasesEntryQueryWrapper.eq("id",getUpdateInfoVO.getId());
+        qcCasesEntryQueryWrapper.eq("id", getUpdateInfoVO.getId());
         boolean res = this.remove(qcCasesEntryQueryWrapper);
         boolean res = this.remove(qcCasesEntryQueryWrapper);
         //删除明细
         //删除明细
         QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
         QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
-        casesEntryHospitalQueryWrapper.eq("cases_entry_id",getUpdateInfoVO.getId());
+        casesEntryHospitalQueryWrapper.eq("cases_entry_id", getUpdateInfoVO.getId());
         casesEntryHospitalFacade.remove(casesEntryHospitalQueryWrapper);
         casesEntryHospitalFacade.remove(casesEntryHospitalQueryWrapper);
         //删除模块
         //删除模块
         UpdateWrapper<QcQuestionEntry> qcQuescQuestionInfoUpdate = new UpdateWrapper<>();
         UpdateWrapper<QcQuestionEntry> qcQuescQuestionInfoUpdate = new UpdateWrapper<>();
         qcQuescQuestionInfoUpdate
         qcQuescQuestionInfoUpdate
-                .eq("cases_entry_id",getUpdateInfoVO.getId());
+                .eq("cases_entry_id", getUpdateInfoVO.getId());
         qcQuestionEntryFacade.remove(qcQuescQuestionInfoUpdate);
         qcQuestionEntryFacade.remove(qcQuescQuestionInfoUpdate);
         //删除质控类型
         //删除质控类型
         UpdateWrapper<QcTypeCasesEntry> qcTypeCasesEntryUpdateWrapper = new UpdateWrapper<>();
         UpdateWrapper<QcTypeCasesEntry> qcTypeCasesEntryUpdateWrapper = new UpdateWrapper<>();
         qcTypeCasesEntryUpdateWrapper
         qcTypeCasesEntryUpdateWrapper
-                .eq("case_entry_id",getUpdateInfoVO.getId());
+                .eq("case_entry_id", getUpdateInfoVO.getId());
         qcTypeCasesEntryFacade.remove(qcTypeCasesEntryUpdateWrapper);
         qcTypeCasesEntryFacade.remove(qcTypeCasesEntryUpdateWrapper);
         return res;
         return res;
 
 
@@ -134,4 +157,100 @@ public class QcCacesEntryFacade extends QcCasesEntryServiceImpl {
     public List<QcCasesEntrySimpleDTO> getEntryByHospitalFac(QcEntryHospitalVO qcEntryHospitalVO) {
     public List<QcCasesEntrySimpleDTO> getEntryByHospitalFac(QcEntryHospitalVO qcEntryHospitalVO) {
         return this.getEntryByHospital(qcEntryHospitalVO);
         return this.getEntryByHospital(qcEntryHospitalVO);
     }
     }
+
+
+    /********************************质控条目和质控类型关系映射开始******************************************/
+    /**
+     * 质控条目和质控类型关系映射【分页】
+     *
+     * @param qcEntryTypePageVO
+     * @returnFac
+     */
+    public IPage<QcEntryTypeDTO> entryTypePageFac(QcEntryTypePageVO qcEntryTypePageVO) {
+        return this.entryTypePage(qcEntryTypePageVO);
+    }
+
+    /**
+     * 质控条目和质控类型关系映射【明细】
+     *
+     * @param qcEntryTypeVO
+     * @returnFac
+     */
+    public QcEntryTypeDetailDTO getByIdFac(QcEntryTypeVO qcEntryTypeVO) {
+        QcEntryTypeDetailDTO res = new QcEntryTypeDetailDTO();
+        List<QcTypeByEntryDTO> qcEntryTypeDTOList = entryTypeDetail(qcEntryTypeVO);
+        if (ListUtil.isNotEmpty(qcEntryTypeDTOList)) {
+            BeanUtil.copyProperties(qcEntryTypeDTOList.get(0), res);
+            List<QcTypeSimpDTO> qcTypeSimpDTOList = new ArrayList<>();
+            qcEntryTypeDTOList.forEach(r -> {
+                QcTypeSimpDTO qcTypeSimpDTO = new QcTypeSimpDTO();
+                qcTypeSimpDTO.setId(r.getTypeId());
+                qcTypeSimpDTO.setName(r.getTypeName());
+                qcTypeSimpDTOList.add(qcTypeSimpDTO);
+            });
+            res.setQcTypeSimpDTOList(qcTypeSimpDTOList);
+        } else {
+            QcCasesEntry qcCasesEntry = this.getOne(new QueryWrapper<QcCasesEntry>()
+                    .eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .eq("id", qcEntryTypeVO.getEntryId())
+            );
+            if (qcCasesEntry == null) {
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "当前质控条目不存在");
+            }
+            res.setEntryName(qcCasesEntry.getName());
+            res.setHospitalId(qcEntryTypeVO.getHospitalId());
+            res.setEntryId(qcEntryTypeVO.getEntryId());
+            res.setCasesName(qcCasesEntry.getCasesName());
+        }
+        return res;
+    }
+
+    /**
+     * 根据医院和条目检索未被选择的质控类型
+     *
+     * @param qcEntryTypeIndexVO
+     * @return
+     */
+    public List<QcTypeSimpDTO> indexFac(QcEntryTypeIndexVO qcEntryTypeIndexVO){
+        return indexQcType(qcEntryTypeIndexVO);
+    }
+
+    /**
+     * 保存
+     * @param qcEntryTypeSaveVO
+     * @return
+     */
+    public Boolean saveOrUpdate(QcEntryTypeSaveVO qcEntryTypeSaveVO) {
+        // 删除映射关系
+        this.deleteQcTypeEntry(qcEntryTypeSaveVO);
+        // 新增映射关系
+        if (ListUtil.isNotEmpty(qcEntryTypeSaveVO.getTypeIdList())) {
+            List<QcTypeCasesEntry> list = new ArrayList<>();
+            Date now = DateUtil.now();
+            String person = UserUtils.getCurrentPrincipleID();
+            for (Long id : qcEntryTypeSaveVO.getTypeIdList()) {
+                QcTypeCasesEntry qcTypeCasesEntry = new QcTypeCasesEntry();
+                qcTypeCasesEntry.setTypeId(id);
+                qcTypeCasesEntry.setCaseEntryId(qcEntryTypeSaveVO.getEntryId());
+                qcTypeCasesEntry.setGmtCreate(now);
+                qcTypeCasesEntry.setGmtModified(now);
+                qcTypeCasesEntry.setCreator(person);
+                qcTypeCasesEntry.setModifier(person);
+                list.add(qcTypeCasesEntry);
+            }
+            qcTypeCasesEntryService.saveBatch(list);
+        }
+        return true;
+    }
+
+    /**
+     * 根据医院获取质控类型列表
+     *
+     * @param qcTypeHospitalVO
+     * @return
+     */
+    public List<QcTypeSimpDTO> getTypeByHospitalFac(QcTypeHospitalVO qcTypeHospitalVO) {
+        return this.getTypeByHospital(qcTypeHospitalVO);
+    }
+    /********************************质控条目和质控类型关系映射结束******************************************/
 }
 }

+ 37 - 11
mrman-service/src/main/java/com/diagbot/facade/QcModuleDetailFacade.java

@@ -1,12 +1,15 @@
 package com.diagbot.facade;
 package com.diagbot.facade;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.diagbot.entity.MedModuleMapping;
 import com.diagbot.entity.QcModuleDetail;
 import com.diagbot.entity.QcModuleDetail;
-import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.MedModuleMappingService;
 import com.diagbot.service.QcModuleDetailService;
 import com.diagbot.service.QcModuleDetailService;
 import com.diagbot.service.impl.QcModuleDetailServiceImpl;
 import com.diagbot.service.impl.QcModuleDetailServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.DateUtil;
+import com.diagbot.util.ListUtil;
 import com.diagbot.util.UserUtils;
 import com.diagbot.util.UserUtils;
 import com.diagbot.vo.AddModuleDetailVO;
 import com.diagbot.vo.AddModuleDetailVO;
 import com.diagbot.vo.AddModuleInfoVO;
 import com.diagbot.vo.AddModuleInfoVO;
@@ -28,10 +31,13 @@ import java.util.Map;
 public class QcModuleDetailFacade extends QcModuleDetailServiceImpl {
 public class QcModuleDetailFacade extends QcModuleDetailServiceImpl {
 
 
     @Autowired
     @Autowired
-    private QcModuleInfoFacade moduleInfoFacade;
+    QcModuleInfoFacade moduleInfoFacade;
     @Autowired
     @Autowired
     @Qualifier("qcModuleDetailServiceImpl")
     @Qualifier("qcModuleDetailServiceImpl")
-    private QcModuleDetailService qcModuleDetailService;
+    QcModuleDetailService qcModuleDetailService;
+    @Autowired
+    @Qualifier("medModuleMappingServiceImpl")
+    MedModuleMappingService medModuleMappingService;
 
 
     /**
     /**
      * 根据questionId删除明细
      * 根据questionId删除明细
@@ -63,14 +69,12 @@ public class QcModuleDetailFacade extends QcModuleDetailServiceImpl {
     public Boolean saveOrUpdateInfos(AddModuleInfoVO addModuleInfoVO, Long moduleId) {
     public Boolean saveOrUpdateInfos(AddModuleInfoVO addModuleInfoVO, Long moduleId) {
         String userId = UserUtils.getCurrentPrincipleID();
         String userId = UserUtils.getCurrentPrincipleID();
         Date now = DateUtil.now();
         Date now = DateUtil.now();
-      //如果该模板添加过明细,先删除
-        UpdateWrapper<QcModuleDetail> moduleDetailUpdateWrapper = new UpdateWrapper<>();
-        moduleDetailUpdateWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
-                .eq("module_id", moduleId)
-                .set("is_deleted", IsDeleteEnum.Y.getKey())
-                .set("modifier", userId)
-                .set("gmt_modified", now);
-        this.update(new QcModuleDetail(), moduleDetailUpdateWrapper);
+       //如果该模板添加过明细,先删除
+        if (moduleId != null) {
+            this.remove(new QueryWrapper<QcModuleDetail>()
+                    .eq("module_id", moduleId)
+            );
+        }
 
 
         List<QcModuleDetail> moduleDetailList = new ArrayList<>();
         List<QcModuleDetail> moduleDetailList = new ArrayList<>();
         int i = 1;
         int i = 1;
@@ -87,6 +91,28 @@ public class QcModuleDetailFacade extends QcModuleDetailServiceImpl {
         }
         }
         //添加模板明细
         //添加模板明细
         qcModuleDetailService.saveBatch(moduleDetailList);
         qcModuleDetailService.saveBatch(moduleDetailList);
+
+        // 删除模板与文书的映射关系
+        medModuleMappingService.remove(new UpdateWrapper<MedModuleMapping>()
+                .eq("module_id", moduleId)
+        );
+
+        // 添加模板与文书的映射关系
+        if (ListUtil.isNotEmpty(addModuleInfoVO.getRecordIdList())) {
+            List<MedModuleMapping> medModuleMappingList = new ArrayList<>();
+            for (Long recordId : addModuleInfoVO.getRecordIdList()) {
+                MedModuleMapping medModuleMapping = new MedModuleMapping();
+                medModuleMapping.setModuleId(moduleId);
+                medModuleMapping.setRecordId(recordId);
+                medModuleMapping.setHospitalId(addModuleInfoVO.getHospitalId());
+                medModuleMapping.setGmtCreate(now);
+                medModuleMapping.setGmtModified(now);
+                medModuleMapping.setCreator(userId);
+                medModuleMapping.setModifier(userId);
+                medModuleMappingList.add(medModuleMapping);
+            }
+            medModuleMappingService.saveBatch(medModuleMappingList);
+        }
         return true;
         return true;
     }
     }
 }
 }

+ 59 - 15
mrman-service/src/main/java/com/diagbot/facade/QcModuleInfoFacade.java

@@ -5,9 +5,11 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.client.UserServiceClient;
 import com.diagbot.client.UserServiceClient;
 import com.diagbot.dto.GetModuleInfoOneDTO;
 import com.diagbot.dto.GetModuleInfoOneDTO;
+import com.diagbot.dto.MedRecordAnalyzeDTO;
 import com.diagbot.dto.ModuleInfoListDTO;
 import com.diagbot.dto.ModuleInfoListDTO;
 import com.diagbot.dto.QcModuleDetailDTO;
 import com.diagbot.dto.QcModuleDetailDTO;
 import com.diagbot.dto.QuestionDTO;
 import com.diagbot.dto.QuestionDTO;
+import com.diagbot.entity.MedModuleMapping;
 import com.diagbot.entity.QcModuleDetail;
 import com.diagbot.entity.QcModuleDetail;
 import com.diagbot.entity.QcModuleInfo;
 import com.diagbot.entity.QcModuleInfo;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.IsDeleteEnum;
@@ -17,10 +19,12 @@ import com.diagbot.service.impl.QcModuleInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.EntityUtil;
+import com.diagbot.util.ListUtil;
 import com.diagbot.util.UserUtils;
 import com.diagbot.util.UserUtils;
 import com.diagbot.vo.AddModuleInfoVO;
 import com.diagbot.vo.AddModuleInfoVO;
 import com.diagbot.vo.GetModuleInfoOneVO;
 import com.diagbot.vo.GetModuleInfoOneVO;
 import com.diagbot.vo.GetModuleInfoVO;
 import com.diagbot.vo.GetModuleInfoVO;
+import com.diagbot.vo.ModuleIndexVO;
 import com.diagbot.vo.QuestionIdsVO;
 import com.diagbot.vo.QuestionIdsVO;
 import com.diagbot.vo.UpdateModuleInfoVO;
 import com.diagbot.vo.UpdateModuleInfoVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -50,6 +54,10 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
     @Autowired
     @Autowired
     QcQuestionFacade qcQuestionFacade;
     QcQuestionFacade qcQuestionFacade;
     @Autowired
     @Autowired
+    MedModuleMappingFacade medModuleMappingFacade;
+    @Autowired
+    MedRecordAnalyzeFacade medRecordAnalyzeFacade;
+    @Autowired
     CacheFacade cacheFacade;
     CacheFacade cacheFacade;
 
 
     /**
     /**
@@ -62,14 +70,25 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
         String userId = UserUtils.getCurrentPrincipleID();
         String userId = UserUtils.getCurrentPrincipleID();
         Date date = DateUtil.now();
         Date date = DateUtil.now();
         Map paramMap = new HashMap<>();
         Map paramMap = new HashMap<>();
+        List<String> idList = Arrays.asList(ids.split(","));
         paramMap.put("delete", IsDeleteEnum.Y.getKey());
         paramMap.put("delete", IsDeleteEnum.Y.getKey());
-        paramMap.put("ids", Arrays.asList(ids.split(",")));
+        paramMap.put("ids", idList);
         paramMap.put("gmtModified", date);
         paramMap.put("gmtModified", date);
         paramMap.put("modifier", userId);
         paramMap.put("modifier", userId);
-        //删除模板
+        // 删除模板
         this.deleteByIds(paramMap);
         this.deleteByIds(paramMap);
-        //删除明细表
-        qcModuleDetailFacade.deleteByModuleIdFac(paramMap);
+        // 删除明细表
+        if (ListUtil.isNotEmpty(idList)) {
+            qcModuleDetailFacade.remove(new QueryWrapper<QcModuleDetail>()
+                    .in("module_id", idList)
+            );
+        }
+        // 删除模板与文书的映射关系
+        if (ListUtil.isNotEmpty(idList)) {
+            medModuleMappingFacade.remove(new QueryWrapper<MedModuleMapping>()
+                    .in("module_id", idList)
+            );
+        }
         // 清除缓存
         // 清除缓存
         cacheFacade.clear();
         cacheFacade.clear();
         return true;
         return true;
@@ -94,15 +113,25 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
         }
         }
 
 
         // 同一文书类型下只有一份
         // 同一文书类型下只有一份
-         QcModuleInfo existBean = this.getOne(new QueryWrapper<QcModuleInfo>()
+        //  QcModuleInfo existBean = this.getOne(new QueryWrapper<QcModuleInfo>()
+        //         .eq("is_deleted", IsDeleteEnum.N.getKey())
+        //         .eq("mode_id", addModulInfoVO.getModeId())
+        //         .eq("hospital_id", addModulInfoVO.getHospitalId())
+        //         .eq("record_module_id", addModulInfoVO.getRecordModuleId())
+        //         .ne("id", addModulInfoVO.getId() == null ? -1 : addModulInfoVO.getId()));
+        // if (existBean != null) {
+        //     throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
+        //             "相同【医院】【模块】下,模块类型已存在,模板名称【" + existBean.getName() + "】" );
+        // }
+
+        // 校验当前文书是否已添加,多人同时操作
+        int countRecord = medModuleMappingFacade.count(new QueryWrapper<MedModuleMapping>()
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
-                .eq("mode_id", addModulInfoVO.getModeId())
-                .eq("hospital_id", addModulInfoVO.getHospitalId())
-                .eq("record_module_id", addModulInfoVO.getRecordModuleId())
-                .ne("id", addModulInfoVO.getId() == null ? -1 : addModulInfoVO.getId()));
-        if (existBean != null) {
-            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
-                    "相同【医院】【模块】下,模块类型已存在,模板名称【" + existBean.getName() + "】" );
+                .ne("module_id", addModulInfoVO.getId() == null ? -1 : addModulInfoVO.getId())
+                .in("record_id", addModulInfoVO.getRecordIdList())
+        );
+        if (countRecord > 0) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "模块类型已添加,请刷新后重新选择");
         }
         }
 
 
         Long moduleId = null;
         Long moduleId = null;
@@ -142,7 +171,7 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
                 .eq("id", updateModuleInfoVO.getId())
                 .eq("id", updateModuleInfoVO.getId())
                 .set("name", updateModuleInfoVO.getName())
                 .set("name", updateModuleInfoVO.getName())
                 .set("mode_id", updateModuleInfoVO.getModeId())
                 .set("mode_id", updateModuleInfoVO.getModeId())
-                .set("record_module_id", updateModuleInfoVO.getRecordModuleId())
+                // .set("record_module_id", updateModuleInfoVO.getRecordModuleId())
                 .set("modifier", userId)
                 .set("modifier", userId)
                 .set("gmt_modified", DateUtil.now())
                 .set("gmt_modified", DateUtil.now())
                 .set("remark", updateModuleInfoVO.getRemark());
                 .set("remark", updateModuleInfoVO.getRemark());
@@ -172,15 +201,16 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
      * @return
      * @return
      */
      */
     public GetModuleInfoOneDTO getById(GetModuleInfoOneVO getModuleInfoOneVO) {
     public GetModuleInfoOneDTO getById(GetModuleInfoOneVO getModuleInfoOneVO) {
+        Long moduleId = getModuleInfoOneVO.getModuleId();
         GetModuleInfoOneDTO getModuleInfoOneDTO = new GetModuleInfoOneDTO();
         GetModuleInfoOneDTO getModuleInfoOneDTO = new GetModuleInfoOneDTO();
         //获取模板信息
         //获取模板信息
         QueryWrapper<QcModuleInfo> moduleInfoQueryWrapper = new QueryWrapper<>();
         QueryWrapper<QcModuleInfo> moduleInfoQueryWrapper = new QueryWrapper<>();
         moduleInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
         moduleInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
-                .eq("id", getModuleInfoOneVO.getModuleId());
+                .eq("id", moduleId);
         QcModuleInfo moduleInfo = this.getOne(moduleInfoQueryWrapper, false);
         QcModuleInfo moduleInfo = this.getOne(moduleInfoQueryWrapper, false);
         if (null == moduleInfo) {
         if (null == moduleInfo) {
             throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
             throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
-                    "模板已删除【" + getModuleInfoOneVO.getModuleId() + "】");
+                    "模板已删除【" + moduleId + "】");
         }
         }
         BeanUtil.copyProperties(moduleInfo, getModuleInfoOneDTO);
         BeanUtil.copyProperties(moduleInfo, getModuleInfoOneDTO);
         List<QcModuleDetail> qcModuleDetailList = qcModuleDetailFacade.list(new QueryWrapper<QcModuleDetail>()
         List<QcModuleDetail> qcModuleDetailList = qcModuleDetailFacade.list(new QueryWrapper<QcModuleDetail>()
@@ -203,6 +233,10 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
         }
         }
         Map<Integer, List<QcModuleDetailDTO>> map = EntityUtil.makeEntityListMap(qcModuleDetailDTOList, "groupId");
         Map<Integer, List<QcModuleDetailDTO>> map = EntityUtil.makeEntityListMap(qcModuleDetailDTOList, "groupId");
         getModuleInfoOneDTO.setModuleDetail(map);
         getModuleInfoOneDTO.setModuleDetail(map);
+
+        // 返回模板和文书的映射关系
+        List<MedRecordAnalyzeDTO> recordAnalyzeList = medRecordAnalyzeFacade.getByModuleId(moduleId);
+        getModuleInfoOneDTO.setRecordAnalyzeList(recordAnalyzeList);
         return getModuleInfoOneDTO;
         return getModuleInfoOneDTO;
     }
     }
 
 
@@ -216,4 +250,14 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
     public List<QcModuleInfo> getModuleNameByQuestionIdFac(Map map) {
     public List<QcModuleInfo> getModuleNameByQuestionIdFac(Map map) {
         return this.getModuleNameByQuestionId(map);
         return this.getModuleNameByQuestionId(map);
     }
     }
+
+    /**
+     * 根据医院和模块获取文书信息
+     *
+     * @param moduleIndexVO
+     * @return
+     */
+    public List<MedRecordAnalyzeDTO> indexFac(ModuleIndexVO moduleIndexVO) {
+        return medRecordAnalyzeFacade.indexFac(moduleIndexVO);
+    }
 }
 }

+ 1 - 1
mrman-service/src/main/java/com/diagbot/facade/QcTypeFacade.java

@@ -133,6 +133,7 @@ public class QcTypeFacade extends QcTypeServiceImpl {
             if (qcType == null) { //校验
             if (qcType == null) { //校验
                 throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "当前质控类型不存在【id=" + id + "】");
                 throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "当前质控类型不存在【id=" + id + "】");
             }
             }
+            param.setInsertOrUpdate(InsertOrUpdateEnum.Update.getKey());
         }
         }
         BeanUtil.copyProperties(qcTypeSaveVO, qcType);
         BeanUtil.copyProperties(qcTypeSaveVO, qcType);
         List<QcType> qcTypeList = this.list(new QueryWrapper<QcType>()
         List<QcType> qcTypeList = this.list(new QueryWrapper<QcType>()
@@ -240,7 +241,6 @@ public class QcTypeFacade extends QcTypeServiceImpl {
         );
         );
 
 
         // 删除明细表
         // 删除明细表
-        qcTypeCasesEntryService.removeByIds(deleteQcTypeVO.getIds());
         if (ListUtil.isNotEmpty(deleteQcTypeVO.getIds())) {
         if (ListUtil.isNotEmpty(deleteQcTypeVO.getIds())) {
             qcTypeCasesEntryService.remove(new QueryWrapper<QcTypeCasesEntry>()
             qcTypeCasesEntryService.remove(new QueryWrapper<QcTypeCasesEntry>()
                     .in("type_id", deleteQcTypeVO.getIds())
                     .in("type_id", deleteQcTypeVO.getIds())

+ 207 - 0
mrman-service/src/main/java/com/diagbot/facade/StdBehospitalInfoFacade.java

@@ -0,0 +1,207 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.client.BehospitalInfoHystrixClient;
+import com.diagbot.dto.AnalyzeMessageDTO;
+import com.diagbot.dto.MedQcresultDetailAllDTO;
+import com.diagbot.dto.QcHospitalInfoAllDTO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.SthospitalInfoFindDTO;
+import com.diagbot.dto.SthospitalInfoPageDTO;
+import com.diagbot.dto.SthospitalInfoStatiDTO;
+import com.diagbot.entity.BasHospitalInfo;
+import com.diagbot.entity.MedBehospitalInfo;
+import com.diagbot.entity.StdBehospitalInfo;
+import com.diagbot.entity.StdQcresultDetail;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.StdBehospitalInfoService;
+import com.diagbot.service.impl.StdBehospitalInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.vo.AnalyzeApiVO;
+import com.diagbot.vo.MedQcresultDetailAllVO;
+import com.diagbot.vo.StdQcresultDetailVO;
+import com.diagbot.vo.SthospitalInfoClearVO;
+import com.diagbot.vo.SthospitalInfoFindVO;
+import com.diagbot.vo.SthospitalInfoPageVO;
+import com.diagbot.vo.SthospitalInfoStatiVO;
+import com.diagbot.vo.SthospitalInfoUpdataVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-10 10:49
+ */
+@Component
+public class StdBehospitalInfoFacade extends StdBehospitalInfoServiceImpl {
+    @Autowired
+    StdBehospitalInfoService stdBehospitalInfoService;
+    @Autowired
+    MedBehospitalInfoFacade medBehospitalInfoFacade;
+    @Autowired
+    MedQcresultDetailFacade medQcresultDetailFacade;
+    @Autowired
+    StdQcresultDetailFacade stdQcresultDetailFacade;
+    @Autowired
+    BehospitalInfoHystrixClient behospitalInfoHystrixClient;
+    @Autowired
+    BasHospitalInfoFacade qcHospitalInfoFacade;
+
+    public IPage<SthospitalInfoPageDTO> getSthospitalInfoPages(SthospitalInfoPageVO sthospitalInfoPageVO) {
+        if (null != sthospitalInfoPageVO && null != sthospitalInfoPageVO.getLeaveHosDateStart()) {
+            sthospitalInfoPageVO.setLeaveHosDateStart(DateUtil.getFirstTimeOfDay(sthospitalInfoPageVO.getLeaveHosDateStart()));
+        }
+        if (null != sthospitalInfoPageVO && null != sthospitalInfoPageVO.getLeaveHosDateEnd()) {
+            sthospitalInfoPageVO.setLeaveHosDateEnd(DateUtil.getFirstTimeOfDay(DateUtil.addDay(sthospitalInfoPageVO.getLeaveHosDateEnd(), 1)));
+        }
+        if (null != sthospitalInfoPageVO && null != sthospitalInfoPageVO.getLeaveHosDateStart() && null != sthospitalInfoPageVO.getLeaveHosDateEnd()) {
+            if (DateUtil.after(sthospitalInfoPageVO.getLeaveHosDateStart(), sthospitalInfoPageVO.getLeaveHosDateEnd())) {
+                throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "入院时间的开始时间必须小于结束时间!");
+            }
+        }
+        return stdBehospitalInfoService.getStdPage(sthospitalInfoPageVO);
+    }
+
+    public Boolean updataSthospitalInfos(SthospitalInfoUpdataVO sthospitalInfoUpdataVO) {
+        boolean res = false;
+        //先去原始表里找
+        QueryWrapper<MedBehospitalInfo> medbeHQuery = new QueryWrapper<>();
+        medbeHQuery.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("behospital_code", sthospitalInfoUpdataVO.getBehospitalCode())
+                .eq("hospital_id", sthospitalInfoUpdataVO.getHospitalId());
+        MedBehospitalInfo medBehospitalInfo = medBehospitalInfoFacade.getOne(medbeHQuery);
+        if (medBehospitalInfo == null) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该病例没有找到");
+        }
+        if (medBehospitalInfo != null) {
+            String behospitalCode = medBehospitalInfo.getBehospitalCode();
+            Long hospitalId = medBehospitalInfo.getHospitalId();
+            MedQcresultDetailAllVO detailAllVO = new MedQcresultDetailAllVO();
+            detailAllVO.setBehospitalCode(behospitalCode);
+            detailAllVO.setHospitalId(hospitalId);
+            //取出该病例最新评分的扣分项及补全所有扣分明细
+            List<MedQcresultDetailAllDTO> medQcresultDetail = medQcresultDetailFacade.getMedQcresultDetail(detailAllVO);
+            if (medQcresultDetail.size() == 0) {
+                throw new CommonException(CommonErrorCode.NOT_EXISTS, "该病例没有扣分项");
+            }
+            StdBehospitalInfo sthospitalInfo = new StdBehospitalInfo();
+            BeanUtil.copyProperties(medBehospitalInfo, sthospitalInfo);
+            Date date = DateUtil.now();
+            sthospitalInfo.setGmtCreate(date);
+            sthospitalInfo.setGmtModified(date);
+            //先删除原数据,再保存病例到标准病例表里
+            QueryWrapper<StdBehospitalInfo> stdBehospitalInfoQuery = new QueryWrapper<>();
+            stdBehospitalInfoQuery
+                    .eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .eq("hospital_id", hospitalId)
+                    .eq("behospital_code", behospitalCode);
+            this.remove(stdBehospitalInfoQuery);
+            res = stdBehospitalInfoService.save(sthospitalInfo);
+
+            List<StdQcresultDetail> medBew = new ArrayList<>();
+            medBew = BeanUtil.listCopyTo(medQcresultDetail, StdQcresultDetail.class);
+            if (ListUtil.isNotEmpty(medBew)) {
+                StdQcresultDetailVO data = new StdQcresultDetailVO();
+                data.setHospitalId(hospitalId);
+                data.setBehospitalCode(behospitalCode);
+                data.setQcresultDetail(medBew);
+                //保存病例评分明细到标准评分明细表
+                res = stdQcresultDetailFacade.addSthospitalInfos(data);
+            }
+
+        }
+
+        return res;
+    }
+
+    public Boolean clearSthospitalInfos(SthospitalInfoClearVO sthospitalInfoClearVO) {
+        boolean res = false;
+        //先删除原数据
+        QueryWrapper<StdBehospitalInfo> stdBehospitalInfoQuery = new QueryWrapper<>();
+        stdBehospitalInfoQuery
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("hospital_id", sthospitalInfoClearVO.getHospitalId())
+                .eq("behospital_code", sthospitalInfoClearVO.getBehospitalCode());
+        res = stdBehospitalInfoService.remove(stdBehospitalInfoQuery);
+        QueryWrapper<StdQcresultDetail> stdQcresultDetailQuery = new QueryWrapper<>();
+        stdQcresultDetailQuery
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("hospital_id", sthospitalInfoClearVO.getHospitalId())
+                .eq("behospital_code", sthospitalInfoClearVO.getBehospitalCode());
+        res = stdQcresultDetailFacade.remove(stdQcresultDetailQuery);
+        return res;
+    }
+
+    public SthospitalInfoFindDTO findSthospitalInfos(SthospitalInfoFindVO sthospitalInfoFindVO) {
+        SthospitalInfoFindDTO stdDataDTO = new SthospitalInfoFindDTO();
+        //先去原始表里找
+        QueryWrapper<MedBehospitalInfo> medbeHQuery = new QueryWrapper<>();
+        medbeHQuery.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("behospital_code", sthospitalInfoFindVO.getBehospitalCode())
+                .eq("hospital_id", sthospitalInfoFindVO.getHospitalId());
+        MedBehospitalInfo medBehospitalInfo = medBehospitalInfoFacade.getOne(medbeHQuery);
+        if (medBehospitalInfo == null) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "暂无病历记录");
+        }
+        QueryWrapper<StdBehospitalInfo> stdBehospitalInfoQuery = new QueryWrapper<>();
+        stdBehospitalInfoQuery
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("hospital_id", sthospitalInfoFindVO.getHospitalId())
+                .eq("behospital_code", sthospitalInfoFindVO.getBehospitalCode());
+        StdBehospitalInfo stdData = stdBehospitalInfoService.getOne(stdBehospitalInfoQuery);
+        if (stdData != null) {
+            BeanUtil.copyProperties(medBehospitalInfo, stdDataDTO);
+            stdDataDTO.setDeptId(medBehospitalInfo.getBehDeptId());
+            stdDataDTO.setDeptName(medBehospitalInfo.getBehDeptName());
+            stdDataDTO.setStatus(1);
+        } else {
+            BeanUtil.copyProperties(medBehospitalInfo, stdDataDTO);
+            stdDataDTO.setDeptId(medBehospitalInfo.getBehDeptId());
+            stdDataDTO.setDeptName(medBehospitalInfo.getBehDeptName());
+            stdDataDTO.setStatus(0);
+        }
+        return stdDataDTO;
+    }
+
+    public IPage<SthospitalInfoStatiDTO> getStatistics(SthospitalInfoStatiVO sthospitalInfoStatiVO) {
+        return stdBehospitalInfoService.getStatistic(sthospitalInfoStatiVO);
+    }
+
+    public AnalyzeMessageDTO analyze() {
+        AnalyzeMessageDTO analyzeMessageDTO =  new AnalyzeMessageDTO();
+        QueryWrapper<StdBehospitalInfo> stdBehospitalInfoQuery = new QueryWrapper<>();
+        stdBehospitalInfoQuery.eq("is_deleted", IsDeleteEnum.N.getKey());
+        List<StdBehospitalInfo> list = stdBehospitalInfoService.list(stdBehospitalInfoQuery);
+        List<String> messages = new ArrayList<>();
+        List<QcHospitalInfoAllDTO> hospitalInfoData = qcHospitalInfoFacade.getHospitalInfoAll();
+        Map<Long,String> hospitalMap = new HashMap<>();
+        hospitalMap = hospitalInfoData.stream().collect(Collectors.toMap(QcHospitalInfoAllDTO::getId, hospitalInfo -> hospitalInfo.getName()));
+        if (ListUtil.isNotEmpty(list)) {
+            for (StdBehospitalInfo data : list) {
+                AnalyzeApiVO analyzeApiVO = new AnalyzeApiVO();
+                analyzeApiVO.setBehospitalCode(data.getBehospitalCode());
+                analyzeApiVO.setHospitalId(data.getHospitalId());
+                RespDTO<Map<String, Object>> mapRespDTO = behospitalInfoHystrixClient.analyzeApi(analyzeApiVO);
+                if(mapRespDTO.data == null){
+                    messages.add("医院:"+hospitalMap.get(data.getHospitalId())+" 病人住院序号:"+data.getBehospitalCode()+" 错误信息:"+mapRespDTO.msg);
+                }
+            }
+        }
+        analyzeMessageDTO.setMessages(messages);
+        return analyzeMessageDTO;
+    }
+}

+ 105 - 0
mrman-service/src/main/java/com/diagbot/facade/StdMissionDetailFacade.java

@@ -0,0 +1,105 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.StdMissionDetailPageDTO;
+import com.diagbot.dto.SthospitalInfoStatiDTO;
+import com.diagbot.entity.StdMissionDetail;
+import com.diagbot.entity.StdMissionInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.StdMissionDetailService;
+import com.diagbot.service.impl.StdMissionDetailServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.vo.StdMissionDetailClVO;
+import com.diagbot.vo.StdMissionDetailPageVO;
+import com.diagbot.vo.StdMissionDetailUpVO;
+import com.diagbot.vo.StdMissionInfoAddVO;
+import com.diagbot.vo.SthospitalInfoStatiVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-12 16:50
+ */
+@Component
+public class StdMissionDetailFacade extends StdMissionDetailServiceImpl {
+
+    @Autowired
+    StdMissionDetailService stdMissionDetailService;
+    @Autowired
+    StdBehospitalInfoFacade stdBehospitalInfoFacade;
+    @Autowired
+    StdMissionInfoFacade stdMissionInfoFacade;
+
+    public IPage<StdMissionDetailPageDTO> getMissionDetailPages(StdMissionDetailPageVO stdMissionDetailPageVO) {
+        return stdMissionDetailService.getMissionDetailPage(stdMissionDetailPageVO);
+    }
+
+    public boolean addMissionDetails(StdMissionInfoAddVO stdMissionInfoAddVO) {
+        //验证任务名是否存在
+        QueryWrapper<StdMissionInfo> stdQcresultTaskQuery = new QueryWrapper<>();
+        stdQcresultTaskQuery.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("mission_name", stdMissionInfoAddVO.getMissionName());
+        int sum = stdMissionInfoFacade.count(stdQcresultTaskQuery);
+        if (sum > 0) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该任务名已存在!");
+        }
+        //添加数据生成任务
+        Date now = DateUtil.now();
+        StdMissionInfo stdMissionInfo = new StdMissionInfo();
+        BeanUtil.copyProperties(stdMissionInfoAddVO, stdMissionInfo);
+        stdMissionInfo.setGmtCreate(now);
+        stdMissionInfo.setGmtModified(now);
+        boolean res = stdMissionInfoFacade.save(stdMissionInfo);
+        if (res) {
+            Long missionId = stdMissionInfo.getId();
+            SthospitalInfoStatiVO sthospitalInfoPageVO = new SthospitalInfoStatiVO();
+            sthospitalInfoPageVO.setPages(1);
+            sthospitalInfoPageVO.setSize(5000);
+            IPage<SthospitalInfoStatiDTO> sthospital = stdBehospitalInfoFacade.getStatistic(sthospitalInfoPageVO);
+            List<SthospitalInfoStatiDTO> records = sthospital.getRecords();
+            List<StdMissionDetail> missionDetailList = new ArrayList<>();
+            for (SthospitalInfoStatiDTO data : records) {
+                StdMissionDetail stdMissionDetail = new StdMissionDetail();
+                BeanUtil.copyProperties(data, stdMissionDetail);
+                stdMissionDetail.setMissionId(missionId);
+                stdMissionDetail.setGmtCreate(now);
+                stdMissionDetail.setGmtModified(now);
+                missionDetailList.add(stdMissionDetail);
+            }
+            res = stdMissionDetailService.saveBatch(missionDetailList);
+        }
+
+
+        return res;
+    }
+
+    public boolean updateMissionDetails(StdMissionDetailUpVO stdMissionDetailUpVO) {
+        Date now = DateUtil.now();
+        return this.update(new StdMissionDetail(), new UpdateWrapper<StdMissionDetail>()
+                .eq("id", stdMissionDetailUpVO.getId())
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .set("gmt_modified", now)
+                .set("status", stdMissionDetailUpVO.getStatus())
+                .set("remark", stdMissionDetailUpVO.getRemark()));
+    }
+
+    public boolean clearMissionDetails(StdMissionDetailClVO stdMissionDetailClVO) {
+        Date now = DateUtil.now();
+        return this.update(new StdMissionDetail(), new UpdateWrapper<StdMissionDetail>()
+                .in("id", stdMissionDetailClVO.getId())
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .set("gmt_modified", now)
+                .set("is_deleted", IsDeleteEnum.Y.getKey()));
+    }
+}

+ 76 - 0
mrman-service/src/main/java/com/diagbot/facade/StdMissionInfoFacade.java

@@ -0,0 +1,76 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.StdMissionInfoPageDTO;
+import com.diagbot.entity.StdMissionDetail;
+import com.diagbot.entity.StdMissionInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.StdMissionInfoService;
+import com.diagbot.service.impl.StdMissionInfoServiceImpl;
+import com.diagbot.util.DateUtil;
+import com.diagbot.vo.StdMissionInfoClearVO;
+import com.diagbot.vo.StdMissionInfoPageVO;
+import com.diagbot.vo.StdMissionInfoUpVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-15 9:40
+ */
+@Component
+public class StdMissionInfoFacade extends StdMissionInfoServiceImpl {
+    @Autowired
+    StdMissionInfoService stdMissionInfoService;
+    @Autowired
+    StdMissionDetailFacade stdMissionDetailFacade;
+
+    public IPage<StdMissionInfoPageDTO> getMissionInfoPages(StdMissionInfoPageVO stdMissionInfoPageVO) {
+        return stdMissionInfoService.getMissionInfoPages(stdMissionInfoPageVO);
+    }
+
+    public boolean updataMissionInfos(StdMissionInfoUpVO stdMissionInfoUpVO) {
+        Date now = DateUtil.now();
+        QueryWrapper<StdMissionInfo> missionInfoQuery = new QueryWrapper<>();
+        missionInfoQuery.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .ne("id", stdMissionInfoUpVO.getId() == null ? -1 : stdMissionInfoUpVO.getId())
+                .eq("mission_name", stdMissionInfoUpVO.getMissionName());
+        int count = stdMissionInfoService.count(missionInfoQuery);
+        if (count > 0) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该任务名已存在!");
+        }
+        UpdateWrapper<StdMissionInfo> missionInfoUpdate = new UpdateWrapper<>();
+        missionInfoUpdate.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", stdMissionInfoUpVO.getId())
+                .set("mission_name", stdMissionInfoUpVO.getMissionName())
+                .set("gmt_modified", now);
+
+        return stdMissionInfoService.update(missionInfoUpdate);
+    }
+
+    public boolean clearMissionInfos(StdMissionInfoClearVO stdMissionInfoClearVO) {
+        Date now = DateUtil.now();
+        //删除该任务
+        UpdateWrapper<StdMissionInfo> missionInfoUpdate = new UpdateWrapper<>();
+        missionInfoUpdate.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", stdMissionInfoClearVO.getId())
+                .set("is_deleted", IsDeleteEnum.Y.getKey())
+                .set("gmt_modified", now);
+        boolean res = stdMissionInfoService.update(missionInfoUpdate);
+        //删除该任务所有明细
+        UpdateWrapper<StdMissionDetail> missionDetailUpdate = new UpdateWrapper<>();
+        missionDetailUpdate.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("mission_id", stdMissionInfoClearVO.getId())
+                .set("is_deleted", IsDeleteEnum.Y.getKey())
+                .set("gmt_modified", now);
+        stdMissionDetailFacade.update(missionDetailUpdate);
+        return res;
+    }
+}

+ 36 - 0
mrman-service/src/main/java/com/diagbot/facade/StdQcresultDetailFacade.java

@@ -0,0 +1,36 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.entity.CasesEntryHospital;
+import com.diagbot.entity.StdQcresultDetail;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.StdQcresultDetailService;
+import com.diagbot.service.impl.StdQcresultDetailServiceImpl;
+import com.diagbot.vo.StdQcresultDetailVO;
+import com.diagbot.vo.SthospitalInfoUpdataVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-10 10:50
+ */
+@Component
+public class StdQcresultDetailFacade extends StdQcresultDetailServiceImpl {
+    @Autowired
+    StdQcresultDetailService stdQcresultDetailService;
+
+    public Boolean addSthospitalInfos(StdQcresultDetailVO StdQcresultDetailVO) {
+        //先删除原来的数据,再插入新的数据
+        QueryWrapper<StdQcresultDetail> stdQcresultDetailQuery = new QueryWrapper<>();
+        stdQcresultDetailQuery
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("hospital_id", StdQcresultDetailVO.getHospitalId())
+                .eq("behospital_code", StdQcresultDetailVO.getBehospitalCode());
+        boolean res = this.remove(stdQcresultDetailQuery);
+        return stdQcresultDetailService.saveBatch(StdQcresultDetailVO.getQcresultDetail());
+    }
+}

+ 4 - 0
mrman-service/src/main/java/com/diagbot/mapper/CasesEntryHospitalMapper.java

@@ -2,6 +2,9 @@ package com.diagbot.mapper;
 
 
 import com.diagbot.entity.CasesEntryHospital;
 import com.diagbot.entity.CasesEntryHospital;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -13,4 +16,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
  */
 public interface CasesEntryHospitalMapper extends BaseMapper<CasesEntryHospital> {
 public interface CasesEntryHospitalMapper extends BaseMapper<CasesEntryHospital> {
 
 
+    boolean saveAll(@Param("list") List<CasesEntryHospital> casesEntryHospitals);
 }
 }

+ 21 - 0
mrman-service/src/main/java/com/diagbot/mapper/MedBehospitalInfoMapper.java

@@ -0,0 +1,21 @@
+package com.diagbot.mapper;
+
+import com.diagbot.dto.MedBehospitalDeptDTO;
+import com.diagbot.entity.MedBehospitalInfo;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.vo.MedBehospitalDeptVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 住院病历信息 Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public interface MedBehospitalInfoMapper extends BaseMapper<MedBehospitalInfo> {
+
+    List<MedBehospitalDeptDTO> findhospitalDept(MedBehospitalDeptVO medBehospitalDeptVO);
+}

+ 16 - 0
mrman-service/src/main/java/com/diagbot/mapper/MedModuleMappingMapper.java

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.MedModuleMapping;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 模板与文书映射关系表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-26
+ */
+public interface MedModuleMappingMapper extends BaseMapper<MedModuleMapping> {
+
+}

+ 22 - 0
mrman-service/src/main/java/com/diagbot/mapper/MedQcresultDetailMapper.java

@@ -0,0 +1,22 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.MedQcresultDetailAllDTO;
+import com.diagbot.entity.MedQcresultDetail;
+import com.diagbot.vo.MedQcresultDetailAllVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 质控评分明细信息
+ * 每次评分增加一条信息,前面所有评分is_deleted全部设置为Y Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public interface MedQcresultDetailMapper extends BaseMapper<MedQcresultDetail> {
+
+    List<MedQcresultDetailAllDTO> getMedDetail(MedQcresultDetailAllVO medQcresultDetailAllVO);
+}

+ 23 - 0
mrman-service/src/main/java/com/diagbot/mapper/MedRecordAnalyzeMapper.java

@@ -0,0 +1,23 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.MedRecordAnalyzeDTO;
+import com.diagbot.entity.MedRecordAnalyze;
+import com.diagbot.vo.ModuleIndexVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医院病历文书类型细分类主表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-26
+ */
+public interface MedRecordAnalyzeMapper extends BaseMapper<MedRecordAnalyze> {
+
+    public List<MedRecordAnalyzeDTO> getByModuleId(Long moduleId);
+
+    public List<MedRecordAnalyzeDTO> index(ModuleIndexVO moduleIndexVO);
+}

+ 18 - 0
mrman-service/src/main/java/com/diagbot/mapper/QcCasesEntryMapper.java

@@ -5,10 +5,18 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.dto.QcCasesEntryAllDTO;
 import com.diagbot.dto.QcCasesEntryAllDTO;
 import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.dto.QcCasesEntrySimpleDTO;
 import com.diagbot.dto.QcCasesEntrySimpleDTO;
+import com.diagbot.dto.QcEntryTypeDTO;
+import com.diagbot.dto.QcTypeByEntryDTO;
+import com.diagbot.dto.QcTypeSimpDTO;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.vo.QcCasesEntryAllVO;
 import com.diagbot.vo.QcCasesEntryAllVO;
 import com.diagbot.vo.QcCasesEntryIndexVO;
 import com.diagbot.vo.QcCasesEntryIndexVO;
 import com.diagbot.vo.QcEntryHospitalVO;
 import com.diagbot.vo.QcEntryHospitalVO;
+import com.diagbot.vo.QcEntryTypeIndexVO;
+import com.diagbot.vo.QcEntryTypePageVO;
+import com.diagbot.vo.QcEntryTypeSaveVO;
+import com.diagbot.vo.QcEntryTypeVO;
+import com.diagbot.vo.QcTypeHospitalVO;
 import com.diagbot.vo.QcTypeIndexVO;
 import com.diagbot.vo.QcTypeIndexVO;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Param;
 
 
@@ -41,4 +49,14 @@ public interface QcCasesEntryMapper extends BaseMapper<QcCasesEntry> {
     public List<QcCasesEntrySimpleDTO> index(QcTypeIndexVO qcTypeIndexVO);
     public List<QcCasesEntrySimpleDTO> index(QcTypeIndexVO qcTypeIndexVO);
 
 
     public List<QcCasesEntrySimpleDTO> getEntryByHospital(QcEntryHospitalVO qcEntryHospitalVO);
     public List<QcCasesEntrySimpleDTO> getEntryByHospital(QcEntryHospitalVO qcEntryHospitalVO);
+
+    public IPage<QcEntryTypeDTO> entryTypePage(QcEntryTypePageVO qcEntryTypePageVO);
+
+    public List<QcTypeByEntryDTO> entryTypeDetail(QcEntryTypeVO qcEntryTypeVO);
+
+    public List<QcTypeSimpDTO> indexQcType(QcEntryTypeIndexVO qcEntryTypeIndexVO);
+
+    public void deleteQcTypeEntry(QcEntryTypeSaveVO qcEntryTypeSaveVO);
+
+    public List<QcTypeSimpDTO> getTypeByHospital(QcTypeHospitalVO qcTypeHospitalVO);
 }
 }

+ 24 - 0
mrman-service/src/main/java/com/diagbot/mapper/StdBehospitalInfoMapper.java

@@ -0,0 +1,24 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.SthospitalInfoPageDTO;
+import com.diagbot.dto.SthospitalInfoStatiDTO;
+import com.diagbot.entity.StdBehospitalInfo;
+import com.diagbot.vo.SthospitalInfoPageVO;
+import com.diagbot.vo.SthospitalInfoStatiVO;
+
+/**
+ * <p>
+ * 标准住院病历信息 Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public interface StdBehospitalInfoMapper extends BaseMapper<StdBehospitalInfo> {
+
+    IPage<SthospitalInfoPageDTO> getStdPage(SthospitalInfoPageVO sthospitalInfoPageVO);
+
+    IPage<SthospitalInfoStatiDTO> getStatistic(SthospitalInfoStatiVO sthospitalInfoStatiVO);
+}

+ 20 - 0
mrman-service/src/main/java/com/diagbot/mapper/StdMissionDetailMapper.java

@@ -0,0 +1,20 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.StdMissionDetailPageDTO;
+import com.diagbot.entity.StdMissionDetail;
+import com.diagbot.vo.StdMissionDetailPageVO;
+
+/**
+ * <p>
+ * Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-12
+ */
+public interface StdMissionDetailMapper extends BaseMapper<StdMissionDetail> {
+
+    IPage<StdMissionDetailPageDTO> getMissionDetailPage(StdMissionDetailPageVO stdMissionDetailPageVO);
+}

+ 20 - 0
mrman-service/src/main/java/com/diagbot/mapper/StdMissionInfoMapper.java

@@ -0,0 +1,20 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.StdMissionInfoPageDTO;
+import com.diagbot.entity.StdMissionInfo;
+import com.diagbot.vo.StdMissionInfoPageVO;
+
+/**
+ * <p>
+ * Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-12
+ */
+public interface StdMissionInfoMapper extends BaseMapper<StdMissionInfo> {
+
+    IPage<StdMissionInfoPageDTO> getMissionInfoPages(StdMissionInfoPageVO stdMissionInfoPageVO);
+}

+ 16 - 0
mrman-service/src/main/java/com/diagbot/mapper/StdQcresultDetailMapper.java

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.StdQcresultDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 标准质控评分明细信息 Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public interface StdQcresultDetailMapper extends BaseMapper<StdQcresultDetail> {
+
+}

+ 3 - 0
mrman-service/src/main/java/com/diagbot/service/CasesEntryHospitalService.java

@@ -3,6 +3,8 @@ package com.diagbot.service;
 import com.diagbot.entity.CasesEntryHospital;
 import com.diagbot.entity.CasesEntryHospital;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 
+import java.util.List;
+
 /**
 /**
  * <p>
  * <p>
  * 病历条目 服务类
  * 病历条目 服务类
@@ -13,4 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
  */
 public interface CasesEntryHospitalService extends IService<CasesEntryHospital> {
 public interface CasesEntryHospitalService extends IService<CasesEntryHospital> {
 
 
+    boolean saveAll(List<CasesEntryHospital> casesEntryHospitals);
 }
 }

+ 21 - 0
mrman-service/src/main/java/com/diagbot/service/MedBehospitalInfoService.java

@@ -0,0 +1,21 @@
+package com.diagbot.service;
+
+import com.diagbot.dto.MedBehospitalDeptDTO;
+import com.diagbot.entity.MedBehospitalInfo;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.vo.MedBehospitalDeptVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 住院病历信息 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public interface MedBehospitalInfoService extends IService<MedBehospitalInfo> {
+
+    List<MedBehospitalDeptDTO> findhospitalDept(MedBehospitalDeptVO medBehospitalDeptVO);
+}

+ 16 - 0
mrman-service/src/main/java/com/diagbot/service/MedModuleMappingService.java

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.MedModuleMapping;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 模板与文书映射关系表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-26
+ */
+public interface MedModuleMappingService extends IService<MedModuleMapping> {
+
+}

+ 22 - 0
mrman-service/src/main/java/com/diagbot/service/MedQcresultDetailService.java

@@ -0,0 +1,22 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.MedQcresultDetailAllDTO;
+import com.diagbot.entity.MedQcresultDetail;
+import com.diagbot.vo.MedQcresultDetailAllVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 质控评分明细信息
+每次评分增加一条信息,前面所有评分is_deleted全部设置为Y 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public interface MedQcresultDetailService extends IService<MedQcresultDetail> {
+
+    List<MedQcresultDetailAllDTO> getMedDetail(MedQcresultDetailAllVO medQcresultDetailAllVO);
+}

+ 23 - 0
mrman-service/src/main/java/com/diagbot/service/MedRecordAnalyzeService.java

@@ -0,0 +1,23 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.MedRecordAnalyzeDTO;
+import com.diagbot.entity.MedRecordAnalyze;
+import com.diagbot.vo.ModuleIndexVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医院病历文书类型细分类主表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-26
+ */
+public interface MedRecordAnalyzeService extends IService<MedRecordAnalyze> {
+
+    public List<MedRecordAnalyzeDTO> getByModuleId(Long moduleId);
+
+    public List<MedRecordAnalyzeDTO> index(ModuleIndexVO moduleIndexVO);
+}

+ 18 - 0
mrman-service/src/main/java/com/diagbot/service/QcCasesEntryService.java

@@ -5,10 +5,18 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.diagbot.dto.QcCasesEntryAllDTO;
 import com.diagbot.dto.QcCasesEntryAllDTO;
 import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.dto.QcCasesEntrySimpleDTO;
 import com.diagbot.dto.QcCasesEntrySimpleDTO;
+import com.diagbot.dto.QcEntryTypeDTO;
+import com.diagbot.dto.QcTypeByEntryDTO;
+import com.diagbot.dto.QcTypeSimpDTO;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.vo.QcCasesEntryAllVO;
 import com.diagbot.vo.QcCasesEntryAllVO;
 import com.diagbot.vo.QcCasesEntryIndexVO;
 import com.diagbot.vo.QcCasesEntryIndexVO;
 import com.diagbot.vo.QcEntryHospitalVO;
 import com.diagbot.vo.QcEntryHospitalVO;
+import com.diagbot.vo.QcEntryTypeIndexVO;
+import com.diagbot.vo.QcEntryTypePageVO;
+import com.diagbot.vo.QcEntryTypeSaveVO;
+import com.diagbot.vo.QcEntryTypeVO;
+import com.diagbot.vo.QcTypeHospitalVO;
 import com.diagbot.vo.QcTypeIndexVO;
 import com.diagbot.vo.QcTypeIndexVO;
 
 
 import java.util.List;
 import java.util.List;
@@ -41,4 +49,14 @@ public interface QcCasesEntryService extends IService<QcCasesEntry> {
     public List<QcCasesEntrySimpleDTO> index(QcTypeIndexVO qcTypeIndexVO);
     public List<QcCasesEntrySimpleDTO> index(QcTypeIndexVO qcTypeIndexVO);
 
 
     public List<QcCasesEntrySimpleDTO> getEntryByHospital(QcEntryHospitalVO qcEntryHospitalVO);
     public List<QcCasesEntrySimpleDTO> getEntryByHospital(QcEntryHospitalVO qcEntryHospitalVO);
+
+    public IPage<QcEntryTypeDTO> entryTypePage(QcEntryTypePageVO qcEntryTypePageVO);
+
+    public List<QcTypeByEntryDTO> entryTypeDetail(QcEntryTypeVO qcEntryTypeVO);
+
+    public List<QcTypeSimpDTO> indexQcType(QcEntryTypeIndexVO qcEntryTypeIndexVO);
+
+    public void deleteQcTypeEntry(QcEntryTypeSaveVO qcEntryTypeSaveVO);
+
+    public List<QcTypeSimpDTO> getTypeByHospital(QcTypeHospitalVO qcTypeHospitalVO);
 }
 }

+ 0 - 1
mrman-service/src/main/java/com/diagbot/service/QcModuleInfoService.java

@@ -35,6 +35,5 @@ public interface QcModuleInfoService extends IService<QcModuleInfo> {
      */
      */
     public IPage<ModuleInfoListDTO> getModuleInfoListByType(GetModuleInfoVO getModuleInfoVO);
     public IPage<ModuleInfoListDTO> getModuleInfoListByType(GetModuleInfoVO getModuleInfoVO);
 
 
-
     public List<QcModuleInfo> getModuleNameByQuestionId(Map map);
     public List<QcModuleInfo> getModuleNameByQuestionId(Map map);
 }
 }

+ 24 - 0
mrman-service/src/main/java/com/diagbot/service/StdBehospitalInfoService.java

@@ -0,0 +1,24 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.SthospitalInfoPageDTO;
+import com.diagbot.dto.SthospitalInfoStatiDTO;
+import com.diagbot.entity.StdBehospitalInfo;
+import com.diagbot.vo.SthospitalInfoPageVO;
+import com.diagbot.vo.SthospitalInfoStatiVO;
+
+/**
+ * <p>
+ * 标准住院病历信息 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public interface StdBehospitalInfoService extends IService<StdBehospitalInfo> {
+
+    IPage<SthospitalInfoPageDTO> getStdPage(SthospitalInfoPageVO sthospitalInfoPageVO);
+
+    IPage<SthospitalInfoStatiDTO> getStatistic(SthospitalInfoStatiVO sthospitalInfoStatiVO);
+}

+ 20 - 0
mrman-service/src/main/java/com/diagbot/service/StdMissionDetailService.java

@@ -0,0 +1,20 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.StdMissionDetailPageDTO;
+import com.diagbot.entity.StdMissionDetail;
+import com.diagbot.vo.StdMissionDetailPageVO;
+
+/**
+ * <p>
+ * 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-12
+ */
+public interface StdMissionDetailService extends IService<StdMissionDetail> {
+
+    IPage<StdMissionDetailPageDTO> getMissionDetailPage(StdMissionDetailPageVO stdMissionDetailPageVO);
+}

+ 20 - 0
mrman-service/src/main/java/com/diagbot/service/StdMissionInfoService.java

@@ -0,0 +1,20 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.StdMissionInfoPageDTO;
+import com.diagbot.entity.StdMissionInfo;
+import com.diagbot.vo.StdMissionInfoPageVO;
+
+/**
+ * <p>
+ * 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-12
+ */
+public interface StdMissionInfoService extends IService<StdMissionInfo> {
+
+    IPage<StdMissionInfoPageDTO> getMissionInfoPages(StdMissionInfoPageVO stdMissionInfoPageVO);
+}

+ 16 - 0
mrman-service/src/main/java/com/diagbot/service/StdQcresultDetailService.java

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.StdQcresultDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 标准质控评分明细信息 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+public interface StdQcresultDetailService extends IService<StdQcresultDetail> {
+
+}

+ 6 - 0
mrman-service/src/main/java/com/diagbot/service/impl/CasesEntryHospitalServiceImpl.java

@@ -6,6 +6,8 @@ import com.diagbot.service.CasesEntryHospitalService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import java.util.List;
+
 /**
 /**
  * <p>
  * <p>
  * 病历条目 服务实现类
  * 病历条目 服务实现类
@@ -17,4 +19,8 @@ import org.springframework.stereotype.Service;
 @Service
 @Service
 public class CasesEntryHospitalServiceImpl extends ServiceImpl<CasesEntryHospitalMapper, CasesEntryHospital> implements CasesEntryHospitalService {
 public class CasesEntryHospitalServiceImpl extends ServiceImpl<CasesEntryHospitalMapper, CasesEntryHospital> implements CasesEntryHospitalService {
 
 
+    @Override
+    public boolean saveAll(List<CasesEntryHospital> casesEntryHospitals) {
+        return baseMapper.saveAll(casesEntryHospitals);
+    }
 }
 }

+ 28 - 0
mrman-service/src/main/java/com/diagbot/service/impl/MedBehospitalInfoServiceImpl.java

@@ -0,0 +1,28 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.dto.MedBehospitalDeptDTO;
+import com.diagbot.entity.MedBehospitalInfo;
+import com.diagbot.mapper.MedBehospitalInfoMapper;
+import com.diagbot.service.MedBehospitalInfoService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.vo.MedBehospitalDeptVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 住院病历信息 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+@Service
+public class MedBehospitalInfoServiceImpl extends ServiceImpl<MedBehospitalInfoMapper, MedBehospitalInfo> implements MedBehospitalInfoService {
+
+    @Override
+    public List<MedBehospitalDeptDTO> findhospitalDept(MedBehospitalDeptVO medBehospitalDeptVO) {
+        return baseMapper.findhospitalDept(medBehospitalDeptVO);
+    }
+}

+ 20 - 0
mrman-service/src/main/java/com/diagbot/service/impl/MedModuleMappingServiceImpl.java

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.MedModuleMapping;
+import com.diagbot.mapper.MedModuleMappingMapper;
+import com.diagbot.service.MedModuleMappingService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 模板与文书映射关系表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-26
+ */
+@Service
+public class MedModuleMappingServiceImpl extends ServiceImpl<MedModuleMappingMapper, MedModuleMapping> implements MedModuleMappingService {
+
+}

+ 29 - 0
mrman-service/src/main/java/com/diagbot/service/impl/MedQcresultDetailServiceImpl.java

@@ -0,0 +1,29 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.MedQcresultDetailAllDTO;
+import com.diagbot.entity.MedQcresultDetail;
+import com.diagbot.mapper.MedQcresultDetailMapper;
+import com.diagbot.service.MedQcresultDetailService;
+import com.diagbot.vo.MedQcresultDetailAllVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 质控评分明细信息
+ * 每次评分增加一条信息,前面所有评分is_deleted全部设置为Y 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+@Service
+public class MedQcresultDetailServiceImpl extends ServiceImpl<MedQcresultDetailMapper, MedQcresultDetail> implements MedQcresultDetailService {
+
+    @Override
+    public List<MedQcresultDetailAllDTO> getMedDetail(MedQcresultDetailAllVO medQcresultDetailAllVO) {
+        return baseMapper.getMedDetail(medQcresultDetailAllVO);
+    }
+}

+ 33 - 0
mrman-service/src/main/java/com/diagbot/service/impl/MedRecordAnalyzeServiceImpl.java

@@ -0,0 +1,33 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.MedRecordAnalyzeDTO;
+import com.diagbot.entity.MedRecordAnalyze;
+import com.diagbot.mapper.MedRecordAnalyzeMapper;
+import com.diagbot.service.MedRecordAnalyzeService;
+import com.diagbot.vo.ModuleIndexVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医院病历文书类型细分类主表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-26
+ */
+@Service
+public class MedRecordAnalyzeServiceImpl extends ServiceImpl<MedRecordAnalyzeMapper, MedRecordAnalyze> implements MedRecordAnalyzeService {
+
+    @Override
+    public List<MedRecordAnalyzeDTO> getByModuleId(Long moduleId) {
+        return baseMapper.getByModuleId(moduleId);
+    }
+
+    @Override
+    public List<MedRecordAnalyzeDTO> index(ModuleIndexVO moduleIndexVO) {
+        return baseMapper.index(moduleIndexVO);
+    }
+}

+ 34 - 0
mrman-service/src/main/java/com/diagbot/service/impl/QcCasesEntryServiceImpl.java

@@ -5,12 +5,20 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.diagbot.dto.QcCasesEntryAllDTO;
 import com.diagbot.dto.QcCasesEntryAllDTO;
 import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.dto.QcCasesEntrySimpleDTO;
 import com.diagbot.dto.QcCasesEntrySimpleDTO;
+import com.diagbot.dto.QcEntryTypeDTO;
+import com.diagbot.dto.QcTypeByEntryDTO;
+import com.diagbot.dto.QcTypeSimpDTO;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.mapper.QcCasesEntryMapper;
 import com.diagbot.mapper.QcCasesEntryMapper;
 import com.diagbot.service.QcCasesEntryService;
 import com.diagbot.service.QcCasesEntryService;
 import com.diagbot.vo.QcCasesEntryAllVO;
 import com.diagbot.vo.QcCasesEntryAllVO;
 import com.diagbot.vo.QcCasesEntryIndexVO;
 import com.diagbot.vo.QcCasesEntryIndexVO;
 import com.diagbot.vo.QcEntryHospitalVO;
 import com.diagbot.vo.QcEntryHospitalVO;
+import com.diagbot.vo.QcEntryTypeIndexVO;
+import com.diagbot.vo.QcEntryTypePageVO;
+import com.diagbot.vo.QcEntryTypeSaveVO;
+import com.diagbot.vo.QcEntryTypeVO;
+import com.diagbot.vo.QcTypeHospitalVO;
 import com.diagbot.vo.QcTypeIndexVO;
 import com.diagbot.vo.QcTypeIndexVO;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
@@ -56,4 +64,30 @@ public class QcCasesEntryServiceImpl extends ServiceImpl<QcCasesEntryMapper, QcC
     public List<QcCasesEntrySimpleDTO> getEntryByHospital(QcEntryHospitalVO qcEntryHospitalVO) {
     public List<QcCasesEntrySimpleDTO> getEntryByHospital(QcEntryHospitalVO qcEntryHospitalVO) {
         return baseMapper.getEntryByHospital(qcEntryHospitalVO);
         return baseMapper.getEntryByHospital(qcEntryHospitalVO);
     }
     }
+
+    @Override
+    public IPage<QcEntryTypeDTO> entryTypePage(QcEntryTypePageVO qcEntryTypePageVO) {
+        return baseMapper.entryTypePage(qcEntryTypePageVO);
+    }
+
+    @Override
+    public List<QcTypeByEntryDTO> entryTypeDetail(QcEntryTypeVO qcEntryTypeVO) {
+        return baseMapper.entryTypeDetail(qcEntryTypeVO);
+    }
+
+    @Override
+    public List<QcTypeSimpDTO> indexQcType(QcEntryTypeIndexVO qcEntryTypeIndexVO) {
+        return baseMapper.indexQcType(qcEntryTypeIndexVO);
+    }
+
+    @Override
+    public void deleteQcTypeEntry(QcEntryTypeSaveVO qcEntryTypeSaveVO) {
+        baseMapper.deleteQcTypeEntry(qcEntryTypeSaveVO);
+    }
+
+    @Override
+    public List<QcTypeSimpDTO> getTypeByHospital(QcTypeHospitalVO qcTypeHospitalVO) {
+        return baseMapper.getTypeByHospital(qcTypeHospitalVO);
+    }
+
 }
 }

+ 34 - 0
mrman-service/src/main/java/com/diagbot/service/impl/StdBehospitalInfoServiceImpl.java

@@ -0,0 +1,34 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.SthospitalInfoPageDTO;
+import com.diagbot.dto.SthospitalInfoStatiDTO;
+import com.diagbot.entity.StdBehospitalInfo;
+import com.diagbot.mapper.StdBehospitalInfoMapper;
+import com.diagbot.service.StdBehospitalInfoService;
+import com.diagbot.vo.SthospitalInfoPageVO;
+import com.diagbot.vo.SthospitalInfoStatiVO;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 标准住院病历信息 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+@Service
+public class StdBehospitalInfoServiceImpl extends ServiceImpl<StdBehospitalInfoMapper, StdBehospitalInfo> implements StdBehospitalInfoService {
+
+    @Override
+    public IPage<SthospitalInfoPageDTO> getStdPage(SthospitalInfoPageVO sthospitalInfoPageVO) {
+        return baseMapper.getStdPage(sthospitalInfoPageVO);
+    }
+
+    @Override
+    public IPage<SthospitalInfoStatiDTO> getStatistic(SthospitalInfoStatiVO sthospitalInfoStatiVO) {
+        return baseMapper.getStatistic(sthospitalInfoStatiVO);
+    }
+}

+ 27 - 0
mrman-service/src/main/java/com/diagbot/service/impl/StdMissionDetailServiceImpl.java

@@ -0,0 +1,27 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.StdMissionDetailPageDTO;
+import com.diagbot.entity.StdMissionDetail;
+import com.diagbot.mapper.StdMissionDetailMapper;
+import com.diagbot.service.StdMissionDetailService;
+import com.diagbot.vo.StdMissionDetailPageVO;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-12
+ */
+@Service
+public class StdMissionDetailServiceImpl extends ServiceImpl<StdMissionDetailMapper, StdMissionDetail> implements StdMissionDetailService {
+
+    @Override
+    public IPage<StdMissionDetailPageDTO> getMissionDetailPage(StdMissionDetailPageVO stdMissionDetailPageVO) {
+        return baseMapper.getMissionDetailPage(stdMissionDetailPageVO);
+    }
+}

+ 27 - 0
mrman-service/src/main/java/com/diagbot/service/impl/StdMissionInfoServiceImpl.java

@@ -0,0 +1,27 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.StdMissionInfoPageDTO;
+import com.diagbot.entity.StdMissionInfo;
+import com.diagbot.mapper.StdMissionInfoMapper;
+import com.diagbot.service.StdMissionInfoService;
+import com.diagbot.vo.StdMissionInfoPageVO;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-12
+ */
+@Service
+public class StdMissionInfoServiceImpl extends ServiceImpl<StdMissionInfoMapper, StdMissionInfo> implements StdMissionInfoService {
+
+    @Override
+    public IPage<StdMissionInfoPageDTO> getMissionInfoPages(StdMissionInfoPageVO stdMissionInfoPageVO) {
+        return baseMapper.getMissionInfoPages(stdMissionInfoPageVO);
+    }
+}

+ 20 - 0
mrman-service/src/main/java/com/diagbot/service/impl/StdQcresultDetailServiceImpl.java

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.StdQcresultDetail;
+import com.diagbot.mapper.StdQcresultDetailMapper;
+import com.diagbot.service.StdQcresultDetailService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 标准质控评分明细信息 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-06-10
+ */
+@Service
+public class StdQcresultDetailServiceImpl extends ServiceImpl<StdQcresultDetailMapper, StdQcresultDetail> implements StdQcresultDetailService {
+
+}

+ 1 - 1
mrman-service/src/main/java/com/diagbot/vo/AddModuleInfoVO.java

@@ -18,7 +18,7 @@ public class AddModuleInfoVO {
     private String name;//模板名称
     private String name;//模板名称
     private Long hospitalId; //医院ID
     private Long hospitalId; //医院ID
     private Long modeId; //数据模块ID
     private Long modeId; //数据模块ID
-    private Long recordModuleId ; //med_record_module的id
+    private List<Long> recordIdList ; //med_record_analyze的id列表
     private List<AddModuleDetailVO> moduleDetail; //标签列表
     private List<AddModuleDetailVO> moduleDetail; //标签列表
     private String remark;
     private String remark;
 }
 }

+ 18 - 0
mrman-service/src/main/java/com/diagbot/vo/AnalyzeApiVO.java

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: zhoutg
+ * @time: 2020/4/13 18:31
+ */
+@Data
+public class AnalyzeApiVO {
+
+    private String behospitalCode; // 病历id
+    private Long hospitalId; //医院ID
+    @ApiModelProperty(hidden = true)
+    private Boolean isTask = true; // 使用hospitalId传入的值
+}

+ 1 - 0
mrman-service/src/main/java/com/diagbot/vo/GetModuleInfoVO.java

@@ -15,4 +15,5 @@ public class GetModuleInfoVO extends Page {
     private String name; // 模板名称
     private String name; // 模板名称
     private Long hospitalId; //医院ID
     private Long hospitalId; //医院ID
     private Long modeId; //数据模块ID
     private Long modeId; //数据模块ID
+    private Long id; //模板ID
 }
 }

+ 15 - 0
mrman-service/src/main/java/com/diagbot/vo/InsertByHospitalVO.java

@@ -54,6 +54,21 @@ public class InsertByHospitalVO {
      */
      */
     private String name;
     private String name;
 
 
+    /**
+     * 规则类型(0:无,1:空项,2:错误)
+     */
+    private Integer ruleType;
+
+    /**
+     * 开发状态标识: 0-未开发  1-已开发
+     */
+    private Integer devType;
+
+    /**
+     * 准确率类型:0-极高,1-高,2-中,3-低
+     */
+    private Integer accuracyType;
+
     private String precond;
     private String precond;
 
 
     private Long modeId;
     private Long modeId;

+ 17 - 0
mrman-service/src/main/java/com/diagbot/vo/MedBehospitalDeptVO.java

@@ -0,0 +1,17 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-12 10:01
+ */
+@Setter
+@Getter
+public class MedBehospitalDeptVO {
+    private Long deptId;
+    private String deptName;
+    private Long hospitalId;
+}

+ 25 - 0
mrman-service/src/main/java/com/diagbot/vo/MedQcresultDetailAllVO.java

@@ -0,0 +1,25 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-06-10 16:07
+ */
+@Setter
+@Getter
+public class MedQcresultDetailAllVO {
+
+    @NotNull(message = "请输入医院Id")
+    private Long hospitalId;
+    /**
+     * 病人住院ID
+     */
+    @NotBlank(message = "病人住院序号不能为空")
+    private String behospitalCode;
+}

+ 20 - 0
mrman-service/src/main/java/com/diagbot/vo/ModuleIndexVO.java

@@ -0,0 +1,20 @@
+package com.diagbot.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: zhoutg
+ * @time: 2018/12/26 15:27
+ */
+@Data
+public class ModuleIndexVO {
+    // 医院ID
+    private Long hospitalId;
+    // 数据模块ID
+    private Long modeId;
+    // 过滤的id列表
+    private List<Long> notIdList;
+}

+ 15 - 0
mrman-service/src/main/java/com/diagbot/vo/QcCasesEntryAllVO.java

@@ -32,4 +32,19 @@ public class QcCasesEntryAllVO extends Page {
      * 条目编码
      * 条目编码
      */
      */
     private String code;
     private String code;
+
+    /**
+     * 规则类型(0:无,1:空项,2:错误)
+     */
+    private Integer ruleType;
+
+    /**
+     * 开发状态标识: 0-未开发  1-已开发
+     */
+    private Integer devType;
+
+    /**
+     * 准确率类型:0-极高,1-高,2-中,3-低
+     */
+    private Integer accuracyType;
 }
 }

+ 18 - 0
mrman-service/src/main/java/com/diagbot/vo/QcEntryTypeIndexVO.java

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/29 15:09
+ */
+@Getter
+@Setter
+public class QcEntryTypeIndexVO {
+    // 医院id
+    private Long hospitalId;
+    // 条目Id
+    private Long entryId;
+}

+ 28 - 0
mrman-service/src/main/java/com/diagbot/vo/QcEntryTypePageVO.java

@@ -0,0 +1,28 @@
+package com.diagbot.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description: 质控条目与质控类型关系映射列表入参
+ * @Author: ztg
+ * @Date: 2018/12/13 10:07
+ */
+@Getter
+@Setter
+public class QcEntryTypePageVO extends Page {
+
+    // 医院id
+    private Long hospitalId;
+    // 条目名称
+    private String entryName;
+    // 质控类型名称
+    private String typeName;
+    // 条目编码
+    private String code;
+    // 所属模块
+    private String casesId;
+    // 质控类型为空标识 1:质控类型为空数据
+    private int typeIsNull;
+}

+ 0 - 0
mrman-service/src/main/java/com/diagbot/vo/QcEntryTypeSaveVO.java


Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác