浏览代码

Merge branch 'dev/mrman20200117_init' into develop

zhoutg 5 年之前
父节点
当前提交
6259ebfb56
共有 100 个文件被更改,包括 5436 次插入187 次删除
  1. 1 1
      config-server/src/main/resources/shared/mrman-service-dev.yml
  2. 1 1
      config-server/src/main/resources/shared/mrman-service-local.yml
  3. 3 3
      config-server/src/main/resources/shared/mrman-service-pre.yml
  4. 1 1
      config-server/src/main/resources/shared/mrman-service-pro.yml
  5. 1 1
      config-server/src/main/resources/shared/mrman-service-test.yml
  6. 1071 0
      docs/032.20200429质控标签模板/init_sys-user.sql
  7. 20 0
      mrman-service/src/main/java/com/diagbot/dto/GetAllByHospitalDTO.java
  8. 27 0
      mrman-service/src/main/java/com/diagbot/dto/GetAllByHospitalDetialDTO.java
  9. 69 0
      mrman-service/src/main/java/com/diagbot/dto/GetModuleDetailInfoDTO.java
  10. 29 0
      mrman-service/src/main/java/com/diagbot/dto/GetModuleInfoOneDTO.java
  11. 19 0
      mrman-service/src/main/java/com/diagbot/dto/GetModuleTypeDTO.java
  12. 18 0
      mrman-service/src/main/java/com/diagbot/dto/GetUpdateInfoDTO.java
  13. 20 0
      mrman-service/src/main/java/com/diagbot/dto/GetUpdateInfoDetialDTO.java
  14. 23 0
      mrman-service/src/main/java/com/diagbot/dto/ModuleInfoDTO.java
  15. 17 0
      mrman-service/src/main/java/com/diagbot/dto/ModuleInfoListDTO.java
  16. 30 0
      mrman-service/src/main/java/com/diagbot/dto/ModuleQuestionDTO.java
  17. 3 1
      mrman-service/src/main/java/com/diagbot/dto/QcCasesAllDTO.java
  18. 1 0
      mrman-service/src/main/java/com/diagbot/dto/QcCasesDTO.java
  19. 57 0
      mrman-service/src/main/java/com/diagbot/dto/QcCasesEntryAllDTO.java
  20. 56 0
      mrman-service/src/main/java/com/diagbot/dto/QcCasesEntryDTO.java
  21. 0 5
      mrman-service/src/main/java/com/diagbot/dto/QcHospitalInfoAllDTO.java
  22. 27 0
      mrman-service/src/main/java/com/diagbot/dto/QcModeDTO.java
  23. 32 0
      mrman-service/src/main/java/com/diagbot/dto/QcModuleDetailDTO.java
  24. 16 0
      mrman-service/src/main/java/com/diagbot/dto/QuesCasesEntryDTO.java
  25. 34 0
      mrman-service/src/main/java/com/diagbot/dto/QuestionDTO.java
  26. 123 0
      mrman-service/src/main/java/com/diagbot/dto/QuestionPageDTO.java
  27. 2 2
      mrman-service/src/main/java/com/diagbot/entity/QcHospitalInfo.java
  28. 200 0
      mrman-service/src/main/java/com/diagbot/entity/CasesEntryHospital.java
  29. 20 0
      mrman-service/src/main/java/com/diagbot/entity/CommonParam.java
  30. 88 0
      mrman-service/src/main/java/com/diagbot/entity/DictionaryInfo.java
  31. 180 0
      mrman-service/src/main/java/com/diagbot/entity/MedRecordModule.java
  32. 68 41
      mrman-service/src/main/java/com/diagbot/entity/QcCases.java
  33. 110 54
      mrman-service/src/main/java/com/diagbot/entity/QcCasesEntry.java
  34. 157 0
      mrman-service/src/main/java/com/diagbot/entity/QcMode.java
  35. 78 0
      mrman-service/src/main/java/com/diagbot/entity/QcModuleDetail.java
  36. 78 0
      mrman-service/src/main/java/com/diagbot/entity/QcModuleInfo.java
  37. 73 0
      mrman-service/src/main/java/com/diagbot/entity/QcQuestionEntry.java
  38. 123 0
      mrman-service/src/main/java/com/diagbot/entity/QcQuestionInfo.java
  39. 73 0
      mrman-service/src/main/java/com/diagbot/entity/QcQuestionMapping.java
  40. 21 0
      mrman-service/src/main/java/com/diagbot/entity/wrapper/QuestionInfoWrapper.java
  41. 27 0
      mrman-service/src/main/java/com/diagbot/entity/wrapper/QuestionMappingWrapper.java
  42. 36 0
      mrman-service/src/main/java/com/diagbot/entity/wrapper/QuestionWrapper.java
  43. 50 0
      mrman-service/src/main/java/com/diagbot/enums/InsertOrUpdateEnum.java
  44. 49 0
      mrman-service/src/main/java/com/diagbot/enums/TagTypeEnum.java
  45. 6 6
      mrman-service/src/main/java/com/diagbot/facade/QcHospitalInfoFacade.java
  46. 196 0
      mrman-service/src/main/java/com/diagbot/facade/CasesEntryHospitalFacade.java
  47. 34 0
      mrman-service/src/main/java/com/diagbot/facade/DictionaryFacade.java
  48. 31 0
      mrman-service/src/main/java/com/diagbot/facade/MedRecordModuleFacade.java
  49. 124 0
      mrman-service/src/main/java/com/diagbot/facade/QcCacesEntryFacade.java
  50. 42 9
      mrman-service/src/main/java/com/diagbot/facade/QcCasesFacade.java
  51. 41 36
      mrman-service/src/main/java/com/diagbot/facade/QcInputcasesFacade.java
  52. 33 0
      mrman-service/src/main/java/com/diagbot/facade/QcModeFacade.java
  53. 92 0
      mrman-service/src/main/java/com/diagbot/facade/QcModuleDetailFacade.java
  54. 213 0
      mrman-service/src/main/java/com/diagbot/facade/QcModuleInfoFacade.java
  55. 26 0
      mrman-service/src/main/java/com/diagbot/facade/QcQuestionEntryFacade.java
  56. 519 0
      mrman-service/src/main/java/com/diagbot/facade/QcQuestionFacade.java
  57. 25 0
      mrman-service/src/main/java/com/diagbot/facade/QcQuestionMappingFacade.java
  58. 2 2
      mrman-service/src/main/java/com/diagbot/mapper/QcHospitalInfoMapper.java
  59. 16 0
      mrman-service/src/main/java/com/diagbot/mapper/CasesEntryHospitalMapper.java
  60. 16 0
      mrman-service/src/main/java/com/diagbot/mapper/DictionaryInfoMapper.java
  61. 16 0
      mrman-service/src/main/java/com/diagbot/mapper/MedRecordModuleMapper.java
  62. 21 0
      mrman-service/src/main/java/com/diagbot/mapper/QcCasesEntryMapper.java
  63. 4 0
      mrman-service/src/main/java/com/diagbot/mapper/QcCasesMapper.java
  64. 16 0
      mrman-service/src/main/java/com/diagbot/mapper/QcModeMapper.java
  65. 21 0
      mrman-service/src/main/java/com/diagbot/mapper/QcModuleDetailMapper.java
  66. 34 0
      mrman-service/src/main/java/com/diagbot/mapper/QcModuleInfoMapper.java
  67. 20 0
      mrman-service/src/main/java/com/diagbot/mapper/QcQuestionEntryMapper.java
  68. 56 0
      mrman-service/src/main/java/com/diagbot/mapper/QcQuestionInfoMapper.java
  69. 25 0
      mrman-service/src/main/java/com/diagbot/mapper/QcQuestionMappingMapper.java
  70. 2 2
      mrman-service/src/main/java/com/diagbot/service/QcHospitalInfoService.java
  71. 16 0
      mrman-service/src/main/java/com/diagbot/service/CasesEntryHospitalService.java
  72. 16 0
      mrman-service/src/main/java/com/diagbot/service/DictionaryInfoService.java
  73. 16 0
      mrman-service/src/main/java/com/diagbot/service/MedRecordModuleService.java
  74. 20 1
      mrman-service/src/main/java/com/diagbot/service/QcCasesEntryService.java
  75. 4 1
      mrman-service/src/main/java/com/diagbot/service/QcCasesService.java
  76. 16 0
      mrman-service/src/main/java/com/diagbot/service/QcModeService.java
  77. 34 0
      mrman-service/src/main/java/com/diagbot/service/QcModuleDetailService.java
  78. 40 0
      mrman-service/src/main/java/com/diagbot/service/QcModuleInfoService.java
  79. 20 0
      mrman-service/src/main/java/com/diagbot/service/QcQuestionEntryService.java
  80. 62 0
      mrman-service/src/main/java/com/diagbot/service/QcQuestionInfoService.java
  81. 25 0
      mrman-service/src/main/java/com/diagbot/service/QcQuestionMappingService.java
  82. 20 0
      mrman-service/src/main/java/com/diagbot/service/impl/BasHospitalInfoServiceImpl.java
  83. 20 0
      mrman-service/src/main/java/com/diagbot/service/impl/CasesEntryHospitalServiceImpl.java
  84. 20 0
      mrman-service/src/main/java/com/diagbot/service/impl/DictionaryInfoServiceImpl.java
  85. 20 0
      mrman-service/src/main/java/com/diagbot/service/impl/MedRecordModuleServiceImpl.java
  86. 26 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcCasesEntryServiceImpl.java
  87. 7 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcCasesServiceImpl.java
  88. 0 20
      mrman-service/src/main/java/com/diagbot/service/impl/QcHospitalInfoServiceImpl.java
  89. 20 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcModeServiceImpl.java
  90. 31 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcModuleDetailServiceImpl.java
  91. 40 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcModuleInfoServiceImpl.java
  92. 27 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcQuestionEntryServiceImpl.java
  93. 51 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcQuestionInfoServiceImpl.java
  94. 26 0
      mrman-service/src/main/java/com/diagbot/service/impl/QcQuestionMappingServiceImpl.java
  95. 19 0
      mrman-service/src/main/java/com/diagbot/vo/AddModuleDetailVO.java
  96. 24 0
      mrman-service/src/main/java/com/diagbot/vo/AddModuleInfoVO.java
  97. 16 0
      mrman-service/src/main/java/com/diagbot/vo/DeleteModuleVO.java
  98. 16 0
      mrman-service/src/main/java/com/diagbot/vo/DeleteQuestionVO.java
  99. 21 0
      mrman-service/src/main/java/com/diagbot/vo/GetAllByHospitalVO.java
  100. 0 0
      mrman-service/src/main/java/com/diagbot/vo/GetModuleInfoOneVO.java

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

@@ -52,7 +52,7 @@ spring:
         master:
           driver-class-name: com.mysql.cj.jdbc.Driver
           platform: mysql
-          url: jdbc:mysql://192.168.2.236:3306/sys-qctest?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false
+          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:

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

@@ -52,7 +52,7 @@ spring:
         master:
           driver-class-name: com.mysql.cj.jdbc.Driver
           platform: mysql
-          url: jdbc:mysql://192.168.2.236:3306/sys-mrqc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false
+          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:

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

@@ -52,9 +52,9 @@ spring:
         master:
           driver-class-name: com.mysql.cj.jdbc.Driver
           platform: mysql
-          url: jdbc:mysql://192.168.2.236:3306/sys-mrqc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false
-          username: root
-          password: lantone
+          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:
             initial-size: 5
         slave:

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

@@ -52,7 +52,7 @@ spring:
         master:
           driver-class-name: com.mysql.cj.jdbc.Driver
           platform: mysql
-          url: jdbc:mysql://192.168.2.236:3306/sys-mrqc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false
+          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:

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

@@ -53,7 +53,7 @@ spring:
         master:
           driver-class-name: com.mysql.cj.jdbc.Driver
           platform: mysql
-          url: jdbc:mysql://192.168.2.236:3306/sys-mrqc?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false
+          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:

文件差异内容过多而无法显示
+ 1071 - 0
docs/032.20200429质控标签模板/init_sys-user.sql


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

@@ -0,0 +1,20 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2020/3/31 11:21
+ */
+@Getter
+@Setter
+public class GetAllByHospitalDTO {
+    private Long casesId;
+    private String casesName;
+    private String remark;
+    private List<GetAllByHospitalDetialDTO> getAllByHospitalDetialDTOS;
+}

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

@@ -0,0 +1,27 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2020/4/1 16:10
+ */
+@Getter
+@Setter
+public class GetAllByHospitalDetialDTO {
+    private Long casesEntryId;
+    private String casesName;
+    private String code;
+    private String name;
+    private String modeName;
+    private String precond;
+    private Long modeId;
+    private BigDecimal score;
+    private Integer isUsed;
+    private Integer isReject;
+    private String msg;
+}

+ 69 - 0
mrman-service/src/main/java/com/diagbot/dto/GetModuleDetailInfoDTO.java

@@ -0,0 +1,69 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/28 13:35
+ */
+@Setter
+@Getter
+public class GetModuleDetailInfoDTO {
+
+    /**
+     * 前置内容
+     */
+    private String prefix;
+
+    /**
+     * 后置内容
+     */
+    private String suffix;
+
+    /**
+     * questionId
+     */
+    private Long questionId;
+
+    /**
+     * 标签名
+     */
+    private String tagName;
+
+    /**
+     * 标签类型
+     */
+    private Integer tagType;
+
+    /**
+     * 关联模板
+     */
+    private Long relationModule;
+
+    /**
+     * 子模板名称
+     */
+    private String relationModuleName;
+
+    /**
+     * 特殊标识
+     */
+    private String flag;
+
+    /**
+     * 必填(0:不必填,1:必填)
+     */
+    private Integer required;
+
+    /**
+     * 特殊标记(0:没有标记,1:拼接到主诉)
+     */
+    private Integer specFlag;
+
+    /**
+     * 性别(1:男 2:女 3:通用)
+     */
+    private Integer sexType;
+}

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

@@ -0,0 +1,29 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/28 17:11
+ */
+@Setter
+@Getter
+public class GetModuleInfoOneDTO {
+    //模板id
+    private Long id;
+    //模板名称
+    private String name;
+    //医院ID
+    private Long hospitalId;
+    //数据模块ID
+    private Long modeId;
+    //模板明细
+    private Map<Integer, List<QcModuleDetailDTO>> moduleDetail;
+    //备注
+    private String remark;
+}

+ 19 - 0
mrman-service/src/main/java/com/diagbot/dto/GetModuleTypeDTO.java

@@ -0,0 +1,19 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/3/28 14:44
+ */
+@Getter
+@Setter
+public class GetModuleTypeDTO {
+    //类型
+    private String val;
+    //类型名称
+    private String name;
+
+}

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

@@ -0,0 +1,18 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.QcCasesEntry;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2020/4/1 17:10
+ */
+@Getter
+@Setter
+public class GetUpdateInfoDTO extends QcCasesEntry {
+    List<GetUpdateInfoDetialDTO> getUpdateInfoDetialDTOS;
+}

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

@@ -0,0 +1,20 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2020/4/1 17:18
+ */
+@Getter
+@Setter
+public class GetUpdateInfoDetialDTO {
+    private String hospitalName;
+    private BigDecimal score;
+    private Integer isUsed;
+    private String msg;
+}

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

@@ -0,0 +1,23 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.QcModuleDetail;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/26 15:44
+ */
+@Getter
+@Setter
+public class ModuleInfoDTO {
+    //模板id
+    private Long id;
+    //模板名称
+    private String name;
+    //模板明细
+    private List<QcModuleDetail> moduleDetail;
+}

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

@@ -0,0 +1,17 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.QcModuleInfo;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: zhoutg
+ * @time: 2018/12/27 11:46
+ */
+@Getter
+@Setter
+public class ModuleInfoListDTO extends QcModuleInfo {
+    //操作人名称
+    private String userName;
+}

+ 30 - 0
mrman-service/src/main/java/com/diagbot/dto/ModuleQuestionDTO.java

@@ -0,0 +1,30 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description: 返回标签内容
+ * @Author: ztg
+ * @Date: 2018/10/24 16:11
+ */
+@Getter
+@Setter
+public class ModuleQuestionDTO {
+
+    private Long id;// id
+    private String name;//key
+    private String val;//value
+    private String tagName;//标签名称
+    private Integer controlType; //控件类型
+    private Integer tagType; //标签标识
+    private Integer groupId; //分组id
+    private Integer retract; //缩进(0:不缩进 1:缩进)
+    private Integer addLine; //换行(0:不换行,1:换行)
+    private Integer bold;//换行(0:不换行,1:加粗)
+    private String casesEntryIds;//质控条目id列表
+    private List<ModuleQuestionDTO> questionMapping = new ArrayList<>();     //下级标签
+}

+ 3 - 1
mrman-service/src/main/java/com/diagbot/dto/QcCasesAllDTO.java

@@ -44,10 +44,12 @@ public class QcCasesAllDTO {
      */
     private String name;
 
+    private String prefix;
+
     /**
      * 备注
      */
     private String remark;
 
-    private List<QcCasesEntry> qcCasesEntry;
+    private List<QcCasesEntryDTO> qcCasesEntry;
 }

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

@@ -13,5 +13,6 @@ import lombok.Setter;
 public class QcCasesDTO  {
     private Long Id ;
     private String name;
+    private String prefix;
     private String remark;
 }

+ 57 - 0
mrman-service/src/main/java/com/diagbot/dto/QcCasesEntryAllDTO.java

@@ -0,0 +1,57 @@
+package com.diagbot.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.diagbot.entity.QcCasesEntry;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2020/3/30 16:54
+ */
+@Getter
+@Setter
+public class QcCasesEntryAllDTO {
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 病历id
+     */
+    private Long casesId;
+
+    private String casesName;
+
+    /**
+     * 数据模块ID-对应qc_mode.id
+     */
+    private Long modeId;
+
+    private String modeName;
+    private String code;
+
+    /**
+     * 条目
+     */
+    private String name;
+
+    private String precond;
+
+    /**
+     * 顺序号
+     */
+    private Integer orderNo;
+
+
+    /**
+     * 备注
+     */
+
+    private String remark;
+}

+ 56 - 0
mrman-service/src/main/java/com/diagbot/dto/QcCasesEntryDTO.java

@@ -0,0 +1,56 @@
+package com.diagbot.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-04-27 10:09
+ */
+@Setter
+@Getter
+public class QcCasesEntryDTO {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 病历id
+     */
+    private Long casesId;
+
+    private String casesName;
+
+    /**
+     * 数据模块ID-对应qc_mode.id
+     */
+    private Long modeId;
+
+    private String modeName;
+
+    private String code;
+
+    /**
+     * 条目
+     */
+    private String name;
+
+    private String precond;
+
+    /**
+     * 顺序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 0 - 5
mrman-service/src/main/java/com/diagbot/dto/QcHospitalInfoAllDTO.java

@@ -1,13 +1,8 @@
 package com.diagbot.dto;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.diagbot.entity.QcHospitalInfo;
 import lombok.Getter;
 import lombok.Setter;
 
-import java.time.LocalDateTime;
-
 /**
  * @author wangfeng
  * @Description:

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

@@ -0,0 +1,27 @@
+package com.diagbot.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-04-26 17:25
+ */
+@Setter
+@Getter
+public class QcModeDTO {
+    private Long id;
+
+    /**
+     * 模块名称
+     */
+    private String name;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+}

+ 32 - 0
mrman-service/src/main/java/com/diagbot/dto/QcModuleDetailDTO.java

@@ -0,0 +1,32 @@
+package com.diagbot.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 模型明细表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Data
+public class QcModuleDetailDTO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 分组Id
+     */
+    private Integer groupId;
+
+    /**
+     * questionId
+     */
+    private Long questionId;
+
+    private QuestionDTO questionDTO;
+
+}

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

@@ -0,0 +1,16 @@
+package com.diagbot.dto;
+
+import lombok.Data;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-04-27 10:09
+ */
+@Data
+public class QuesCasesEntryDTO {
+    private static final long serialVersionUID = 1L;
+
+    private Long casesEntryId; // 条目id
+    private String casesEntryName; // 条目名称
+}

+ 34 - 0
mrman-service/src/main/java/com/diagbot/dto/QuestionDTO.java

@@ -0,0 +1,34 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description: 返回标签内容
+ * @Author: ztg
+ * @Date: 2018/10/24 16:11
+ */
+@Getter
+@Setter
+public class QuestionDTO {
+
+    private Long id;// id
+    private String name;//key
+    private String val;//value
+    private String tagName;//标签名称
+    private Integer controlType; //控件类型
+    private Integer tagType; //标签标识
+    private Long hospitalId; //医院ID
+    private Long modeId; //数据模块ID
+    private Integer retract; //缩进(0:不缩进 1:缩进)
+    private Integer addLine; //换行(0:不换行,1:换行)
+    private Integer monoLine; //独占一行(0:不换行,1:换行)
+    private Integer bold;//换行(0:不换行,1:加粗)
+    private Integer position; //显示位置(1:靠右显示)
+    private List<QuesCasesEntryDTO> quesCasesEntryDTOList = new ArrayList<>(); //质控条目明细
+    private List<QuestionDTO> questionMapping = new ArrayList<>();     //下级标签
+    private String remark;//备注
+}

+ 123 - 0
mrman-service/src/main/java/com/diagbot/dto/QuestionPageDTO.java

@@ -0,0 +1,123 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 标签基础表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-03
+ */
+
+@Getter
+@Setter
+public class QuestionPageDTO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 数据模块ID
+     */
+    private Long modeId;
+
+    /**
+     * 标签名
+     */
+    private String tagName;
+
+    /**
+     * 内容
+     */
+    private String name;
+
+    /**
+     * value
+     */
+    private String val;
+
+    /**
+     * 标签标识(1:单标签 4:组合标签)
+     */
+    private Integer tagType;
+
+    /**
+     * 控件类型(0:无类型)
+     */
+    private Integer controlType;
+
+    /**
+     * 缩进(0:不缩进 1:缩进)
+     */
+    private Integer retract;
+
+    /**
+     * 内容换行(0:不换行,1:换行)
+     */
+    private Integer addLine;
+
+    /**
+     * 独占一行(0:不换行,1:换行)
+     */
+    private Integer monoLine;
+
+    /**
+     * 换行(0:不换行,1:加粗)
+     */
+    private Integer bold;
+
+    /**
+     * 显示位置(1:靠右显示)
+     */
+    private Integer position;
+
+    /**
+     * 质控条目id列表
+     */
+    private String casesEntryIds;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 2 - 2
mrman-service/src/main/java/com/diagbot/entity/QcHospitalInfo.java

@@ -15,8 +15,8 @@ import java.util.Date;
  * @author wangfeng
  * @since 2020-03-17
  */
-@TableName("qc_hospital_info")
-public class QcHospitalInfo implements Serializable {
+@TableName("bas_hospital_info")
+public class BasHospitalInfo implements Serializable {
 
     private static final long serialVersionUID = 1L;
 

+ 200 - 0
mrman-service/src/main/java/com/diagbot/entity/CasesEntryHospital.java

@@ -0,0 +1,200 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * <p>
+ * 病历条目
+ * </p>
+ *
+ * @author wangyu
+ * @since 2020-03-31
+ */
+@TableName("qc_cases_entry_hospital")
+public class CasesEntryHospital 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 casesEntryId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 扣分值
+     */
+    private BigDecimal score;
+
+    /**
+     * 条目提示信息
+     */
+    private String msg;
+
+    /**
+     * 0-未启用 1-启用
+     */
+    private Integer isUsed;
+
+    /**
+     * 单项否决(1-单项否决 0-非)
+     */
+    private Integer isReject;
+
+    /**
+     * 备注
+     */
+    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 getCasesEntryId() {
+        return casesEntryId;
+    }
+
+    public void setCasesEntryId(Long casesEntryId) {
+        this.casesEntryId = casesEntryId;
+    }
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    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 Integer getIsUsed() {
+        return isUsed;
+    }
+
+    public void setIsUsed(Integer isUsed) {
+        this.isUsed = isUsed;
+    }
+    public Integer getIsReject() {
+        return isReject;
+    }
+
+    public void setIsReject(Integer isReject) {
+        this.isReject = isReject;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "QcCasesEntryHospital{" +
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", casesEntryId=" + casesEntryId +
+                ", hospitalId=" + hospitalId +
+                ", score=" + score +
+                ", msg=" + msg +
+                ", isUsed=" + isUsed +
+                ", isReject=" + isReject +
+                ", remark=" + remark +
+                "}";
+    }
+}

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

@@ -0,0 +1,20 @@
+package com.diagbot.entity;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+
+/**
+ * @Description:
+ * @Author: ztg
+ * @Date: 2018/12/14 14:15
+ */
+@Getter
+@Setter
+public class CommonParam {
+    private String person;     //操作人
+    private Date now;          //当前时间
+    private int insertOrUpdate;//更新或新增标识
+    private QcQuestionInfo qcQuestionInfo; //主表信息
+}

+ 88 - 0
mrman-service/src/main/java/com/diagbot/entity/DictionaryInfo.java

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

+ 180 - 0
mrman-service/src/main/java/com/diagbot/entity/MedRecordModule.java

@@ -0,0 +1,180 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-29
+ */
+public class MedRecordModule implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 数据模块ID
+     */
+    private Long modeId;
+
+    /**
+     * 数据模块名称
+     */
+    private String modeName;
+
+    /**
+     * 模板类型
+     */
+    private String recTypeDetail;
+
+    /**
+     * 住院号示例
+     */
+    private String behospitalCodes;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime 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 Long getModeId() {
+        return modeId;
+    }
+
+    public void setModeId(Long modeId) {
+        this.modeId = modeId;
+    }
+    public String getModeName() {
+        return modeName;
+    }
+
+    public void setModeName(String modeName) {
+        this.modeName = modeName;
+    }
+    public String getRecTypeDetail() {
+        return recTypeDetail;
+    }
+
+    public void setRecTypeDetail(String recTypeDetail) {
+        this.recTypeDetail = recTypeDetail;
+    }
+    public String getBehospitalCodes() {
+        return behospitalCodes;
+    }
+
+    public void setBehospitalCodes(String behospitalCodes) {
+        this.behospitalCodes = behospitalCodes;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public LocalDateTime getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(LocalDateTime gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public LocalDateTime getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(LocalDateTime gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "MedRecordModule{" +
+            "id=" + id +
+            ", hospitalId=" + hospitalId +
+            ", modeId=" + modeId +
+            ", modeName=" + modeName +
+            ", recTypeDetail=" + recTypeDetail +
+            ", behospitalCodes=" + behospitalCodes +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 68 - 41
mrman-service/src/main/java/com/diagbot/entity/QcCases.java

@@ -5,14 +5,15 @@ import com.baomidou.mybatisplus.annotation.TableId;
 
 import java.io.Serializable;
 import java.time.LocalDateTime;
+import java.util.Date;
 
 /**
  * <p>
- * 病历
+ * 模块数据标准
  * </p>
  *
  * @author wangfeng
- * @since 2020-03-10
+ * @since 2020-04-27
  */
 public class QcCases implements Serializable {
 
@@ -24,6 +25,26 @@ public class QcCases implements Serializable {
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    /**
+     * 模块名称
+     */
+    private String name;
+
+    /**
+     * 模块编码前缀
+     */
+    private String prefix;
+
+    /**
+     * 顺序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
     /**
      * 是否删除,N:未删除,Y:删除
      */
@@ -32,12 +53,12 @@ public class QcCases implements Serializable {
     /**
      * 记录创建时间
      */
-    private LocalDateTime gmtCreate;
+    private Date gmtCreate;
 
     /**
      * 记录修改时间,如果时间是1970年则表示纪录未修改
      */
-    private LocalDateTime gmtModified;
+    private Date gmtModified;
 
     /**
      * 创建人,0表示无创建人值
@@ -49,16 +70,6 @@ public class QcCases implements Serializable {
      */
     private String modifier;
 
-    /**
-     * 病历
-     */
-    private String name;
-
-    /**
-     * 备注
-     */
-    private String remark;
-
     public Long getId() {
         return id;
     }
@@ -66,6 +77,34 @@ public class QcCases implements Serializable {
     public void setId(Long id) {
         this.id = id;
     }
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    public String getPrefix() {
+        return prefix;
+    }
+
+    public void setPrefix(String prefix) {
+        this.prefix = prefix;
+    }
+    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;
     }
@@ -73,18 +112,18 @@ public class QcCases implements Serializable {
     public void setIsDeleted(String isDeleted) {
         this.isDeleted = isDeleted;
     }
-    public LocalDateTime getGmtCreate() {
+    public Date getGmtCreate() {
         return gmtCreate;
     }
 
-    public void setGmtCreate(LocalDateTime gmtCreate) {
+    public void setGmtCreate(Date gmtCreate) {
         this.gmtCreate = gmtCreate;
     }
-    public LocalDateTime getGmtModified() {
+    public Date getGmtModified() {
         return gmtModified;
     }
 
-    public void setGmtModified(LocalDateTime gmtModified) {
+    public void setGmtModified(Date gmtModified) {
         this.gmtModified = gmtModified;
     }
     public String getCreator() {
@@ -101,32 +140,20 @@ public class QcCases implements Serializable {
     public void setModifier(String modifier) {
         this.modifier = modifier;
     }
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-    public String getRemark() {
-        return remark;
-    }
-
-    public void setRemark(String remark) {
-        this.remark = remark;
-    }
 
     @Override
     public String toString() {
         return "QcCases{" +
-            "id=" + id +
-            ", isDeleted=" + isDeleted +
-            ", gmtCreate=" + gmtCreate +
-            ", gmtModified=" + gmtModified +
-            ", creator=" + creator +
-            ", modifier=" + modifier +
-            ", name=" + name +
-            ", remark=" + remark +
-        "}";
+                "id=" + id +
+                ", name=" + name +
+                ", prefix=" + prefix +
+                ", orderNo=" + orderNo +
+                ", remark=" + remark +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                "}";
     }
 }

+ 110 - 54
mrman-service/src/main/java/com/diagbot/entity/QcCasesEntry.java

@@ -2,9 +2,9 @@ package com.diagbot.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
-
-import java.io.Serializable;
 import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.Date;
 
 /**
  * <p>
@@ -12,7 +12,7 @@ import java.time.LocalDateTime;
  * </p>
  *
  * @author wangfeng
- * @since 2020-03-10
+ * @since 2020-04-27
  */
 public class QcCasesEntry implements Serializable {
 
@@ -25,44 +25,60 @@ public class QcCasesEntry implements Serializable {
     private Long id;
 
     /**
-     * 是否删除,N:未删除,Y:删除
+     * 病历id
      */
-    private String isDeleted;
+    private Long casesId;
+
+    private String casesName;
 
     /**
-     * 记录创建时间
+     * 数据模块ID-对应qc_mode.id
      */
-    private LocalDateTime gmtCreate;
+    private Long modeId;
+
+    private String code;
 
     /**
-     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     * 条目
      */
-    private LocalDateTime gmtModified;
+    private String name;
+
+    private String precond;
 
     /**
-     * 创建人,0表示无创建人值
+     * 顺序号
      */
-    private String creator;
+    private Integer orderNo;
 
     /**
-     * 修改人,如果为0则表示纪录未修改
+     * 备注
      */
-    private String modifier;
+    private String remark;
 
     /**
-     * 病历id
+     * 是否删除,N:未删除,Y:删除
      */
-    private Long casesId;
+    private String isDeleted;
 
     /**
-     * 条目
+     * 记录创建时间
      */
-    private String name;
+    private Date gmtCreate;
 
     /**
-     * 备注
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
      */
-    private String remark;
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
 
     public Long getId() {
         return id;
@@ -71,6 +87,62 @@ public class QcCasesEntry implements Serializable {
     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;
     }
@@ -78,18 +150,18 @@ public class QcCasesEntry implements Serializable {
     public void setIsDeleted(String isDeleted) {
         this.isDeleted = isDeleted;
     }
-    public LocalDateTime getGmtCreate() {
+    public Date getGmtCreate() {
         return gmtCreate;
     }
 
-    public void setGmtCreate(LocalDateTime gmtCreate) {
+    public void setGmtCreate(Date gmtCreate) {
         this.gmtCreate = gmtCreate;
     }
-    public LocalDateTime getGmtModified() {
+    public Date getGmtModified() {
         return gmtModified;
     }
 
-    public void setGmtModified(LocalDateTime gmtModified) {
+    public void setGmtModified(Date gmtModified) {
         this.gmtModified = gmtModified;
     }
     public String getCreator() {
@@ -106,40 +178,24 @@ public class QcCasesEntry implements Serializable {
     public void setModifier(String modifier) {
         this.modifier = modifier;
     }
-    public Long getCasesId() {
-        return casesId;
-    }
-
-    public void setCasesId(Long casesId) {
-        this.casesId = casesId;
-    }
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-    public String getRemark() {
-        return remark;
-    }
-
-    public void setRemark(String remark) {
-        this.remark = remark;
-    }
 
     @Override
     public String toString() {
         return "QcCasesEntry{" +
-            "id=" + id +
-            ", isDeleted=" + isDeleted +
-            ", gmtCreate=" + gmtCreate +
-            ", gmtModified=" + gmtModified +
-            ", creator=" + creator +
-            ", modifier=" + modifier +
-            ", casesId=" + casesId +
-            ", name=" + name +
-            ", remark=" + remark +
-        "}";
+                "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 +
+                "}";
     }
 }

+ 157 - 0
mrman-service/src/main/java/com/diagbot/entity/QcMode.java

@@ -0,0 +1,157 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 病历
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-04-26
+ */
+public class QcMode implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 模块名称
+     */
+    private String name;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 上级模块
+     */
+    private Long parentId;
+
+    /**
+     * 是否删除,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 String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    public Integer getOrderNo() {
+        return orderNo;
+    }
+
+    public void setOrderNo(Integer orderNo) {
+        this.orderNo = orderNo;
+    }
+    public Long getParentId() {
+        return parentId;
+    }
+
+    public void setParentId(Long parentId) {
+        this.parentId = parentId;
+    }
+    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 "QcMode{" +
+            "id=" + id +
+            ", name=" + name +
+            ", orderNo=" + orderNo +
+            ", parentId=" + parentId +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 78 - 0
mrman-service/src/main/java/com/diagbot/entity/QcModuleDetail.java

@@ -0,0 +1,78 @@
+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-04-27
+ */
+@Data
+public class QcModuleDetail 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;
+
+    /**
+     * module_id
+     */
+    private Long moduleId;
+
+    /**
+     * 分组Id
+     */
+    private Integer groupId;
+
+    /**
+     * questionId
+     */
+    private Long questionId;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 78 - 0
mrman-service/src/main/java/com/diagbot/entity/QcModuleInfo.java

@@ -0,0 +1,78 @@
+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-04-27
+ */
+@Data
+public class QcModuleInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 模板名称
+     */
+    private String name;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 数据模块ID
+     */
+    private Long modeId;
+
+    /**
+     * med_record_module的id
+     */
+    private Long recordModuleId;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 73 - 0
mrman-service/src/main/java/com/diagbot/entity/QcQuestionEntry.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-07
+ */
+@Data
+public class QcQuestionEntry 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;
+
+    /**
+     * question_id
+     */
+    private Long questionId;
+
+    /**
+     * cases_entry_id
+     */
+    private Long casesEntryId;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 123 - 0
mrman-service/src/main/java/com/diagbot/entity/QcQuestionInfo.java

@@ -0,0 +1,123 @@
+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-04-27
+ */
+@Data
+public class QcQuestionInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 数据模块ID
+     */
+    private Long modeId;
+
+    /**
+     * 标签名
+     */
+    private String tagName;
+
+    /**
+     * key
+     */
+    private String name;
+
+    /**
+     * value
+     */
+    private String val;
+
+    /**
+     * 标签标识(1:单标签 4:组合标签)
+     */
+    private Integer tagType;
+
+    /**
+     * 控件类型(0:无类型)
+     */
+    private Integer controlType;
+
+    /**
+     * 缩进(0:不缩进 1:缩进)
+     */
+    private Integer retract;
+
+    /**
+     * 内容换行(0:不换行,1:换行)
+     */
+    private Integer addLine;
+
+    /**
+     * 独占一行(0:不换行,1:换行)
+     */
+    private Integer monoLine;
+
+    /**
+     * 换行(0:不换行,1:加粗)
+     */
+    private Integer bold;
+
+    /**
+     * 显示位置(1:靠右显示)
+     */
+    private Integer position;
+
+    /**
+     * 质控条目id列表
+     */
+    private String casesEntryIds;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 73 - 0
mrman-service/src/main/java/com/diagbot/entity/QcQuestionMapping.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-04-27
+ */
+@Data
+public class QcQuestionMapping 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;
+
+    /**
+     * 上级question
+     */
+    private Long parentQuestion;
+
+    /**
+     * 下级question
+     */
+    private Long sonQuestion;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 21 - 0
mrman-service/src/main/java/com/diagbot/entity/wrapper/QuestionInfoWrapper.java

@@ -0,0 +1,21 @@
+package com.diagbot.entity.wrapper;
+
+import com.diagbot.entity.QcQuestionInfo;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 标签扩展表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-11-15
+ */
+@Getter
+@Setter
+public class QuestionInfoWrapper extends QcQuestionInfo {
+
+    private Long parentQuestion; //父级问题ID
+
+}

+ 27 - 0
mrman-service/src/main/java/com/diagbot/entity/wrapper/QuestionMappingWrapper.java

@@ -0,0 +1,27 @@
+package com.diagbot.entity.wrapper;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 标签映射表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-03
+ */
+@Getter
+@Setter
+public class QuestionMappingWrapper implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 下级question
+     */
+    private Long sonQuestion;
+
+}

+ 36 - 0
mrman-service/src/main/java/com/diagbot/entity/wrapper/QuestionWrapper.java

@@ -0,0 +1,36 @@
+package com.diagbot.entity.wrapper;
+
+import com.diagbot.vo.QuesCasesEntryVO;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ * 标签保存参数
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-03
+ */
+
+@Data
+public class QuestionWrapper implements Serializable {
+    private Long id; //主键
+    private Long hospitalId; //医院ID
+    private Long modeId; //数据模块ID
+    private String tagName; //标签名
+    private String name; //界面名称
+    private String val; // value
+    private Integer tagType; //标签显示类型
+    private Integer controlType; //控件类型
+    private Integer retract; // 缩进(0:不缩进 1:缩进)
+    private Integer addLine; // 内容换行(0:不换行,1:换行)
+    private Integer monoLine; // 独占一行(0:不换行,1:换行)
+    private Integer bold; //换行(0:不换行,1:加粗)
+    private Integer position; //显示位置(1:靠右显示)
+    private List<QuestionMappingWrapper> questionMappings = new ArrayList<>(); //映射关系
+    private List<QuesCasesEntryVO> quesCasesEntryVOList; // 质控条目明细
+}

+ 50 - 0
mrman-service/src/main/java/com/diagbot/enums/InsertOrUpdateEnum.java

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

+ 49 - 0
mrman-service/src/main/java/com/diagbot/enums/TagTypeEnum.java

@@ -0,0 +1,49 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:标签显示类型
+ * @Author:zhoutg
+ * @time: 2018/11/21 11:39
+ */
+public enum TagTypeEnum implements KeyedNamed {
+    T1(1, "单标签"),
+    T4(4, "组合标签");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    TagTypeEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static TagTypeEnum getEnum(int key) {
+        for (TagTypeEnum item : TagTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        TagTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 6 - 6
mrman-service/src/main/java/com/diagbot/facade/QcHospitalInfoFacade.java

@@ -1,9 +1,9 @@
 package com.diagbot.facade;
 
 import com.diagbot.dto.QcHospitalInfoAllDTO;
-import com.diagbot.entity.QcHospitalInfo;
-import com.diagbot.service.QcHospitalInfoService;
-import com.diagbot.service.impl.QcHospitalInfoServiceImpl;
+import com.diagbot.entity.BasHospitalInfo;
+import com.diagbot.service.BasHospitalInfoService;
+import com.diagbot.service.impl.BasHospitalInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -17,17 +17,17 @@ import java.util.List;
  * @date 2020-03-17 13:47
  */
 @Component
-public class QcHospitalInfoFacade extends QcHospitalInfoServiceImpl {
+public class BasHospitalInfoFacade extends BasHospitalInfoServiceImpl {
 
     @Autowired
-    QcHospitalInfoService qcHospitalInfoService;
+    BasHospitalInfoService qcHospitalInfoService;
 
     /**
      *
      * @return
      */
     public List<QcHospitalInfoAllDTO> getHospitalInfoAll() {
-        List<QcHospitalInfo> data = qcHospitalInfoService.list();
+        List<BasHospitalInfo> data = qcHospitalInfoService.list();
         List<QcHospitalInfoAllDTO> dataNew = new ArrayList<QcHospitalInfoAllDTO>();
         dataNew = BeanUtil.listCopyTo(data, QcHospitalInfoAllDTO.class);
         return dataNew;

+ 196 - 0
mrman-service/src/main/java/com/diagbot/facade/CasesEntryHospitalFacade.java

@@ -0,0 +1,196 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.diagbot.dto.GetAllByHospitalDTO;
+import com.diagbot.dto.GetAllByHospitalDetialDTO;
+import com.diagbot.dto.QcCasesEntryDTO;
+import com.diagbot.entity.CasesEntryHospital;
+import com.diagbot.entity.QcCases;
+import com.diagbot.entity.QcCasesEntry;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.CasesEntryHospitalService;
+import com.diagbot.service.impl.CasesEntryHospitalServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.util.SqlExecuteUtil;
+import com.diagbot.vo.GetAllByHospitalVO;
+import com.diagbot.vo.InsertByHospitalVO;
+import com.diagbot.vo.UpdateByHospitalVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2020/3/31 11:13
+ */
+@Component
+public class CasesEntryHospitalFacade extends CasesEntryHospitalServiceImpl {
+    @Autowired
+    @Qualifier("casesEntryHospitalServiceImpl")
+    private CasesEntryHospitalServiceImpl casesEntryHospitalService;
+    @Autowired
+    private QcCacesEntryFacade qcCacesEntryFacade;
+    @Autowired
+    private QcCasesFacade qcCasesFacade;
+
+    /**
+     * 获取指定医院病例条目
+     *
+     * @param getAllByHospitalVO
+     * @return
+     */
+    public List<GetAllByHospitalDTO> getAllByHospital(GetAllByHospitalVO getAllByHospitalVO){
+        //获取病例条目关系
+        QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
+        casesEntryHospitalQueryWrapper
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("hospital_id",getAllByHospitalVO.getHospitalId());
+        List<CasesEntryHospital> casesEntryHospitals = this.list(casesEntryHospitalQueryWrapper);
+        Map<Long,CasesEntryHospital> casesEntryHospitalMap = casesEntryHospitals.stream().collect(Collectors.toMap(CasesEntryHospital::getCasesEntryId,casesEntryHospital -> casesEntryHospital));
+        List<Long> casesEntryIds = new ArrayList<>();
+        casesEntryIds = casesEntryHospitals.stream().map(CasesEntryHospital::getCasesEntryId).collect(Collectors.toList());
+        //获取病例条目
+        List<QcCasesEntryDTO> qcCasesEntries = new ArrayList<>();
+        if(ListUtil.isNotEmpty(casesEntryIds)){
+            qcCasesEntries = new ArrayList<QcCasesEntryDTO>(qcCacesEntryFacade.getByCasesEntryId(casesEntryIds));
+        }
+        //获取病例
+        QueryWrapper<QcCases> qcCasesQueryWrapper = new QueryWrapper<>();
+        qcCasesQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey());
+        List<QcCases> qcCases = qcCasesFacade.list(qcCasesQueryWrapper);
+        List<GetAllByHospitalDTO> getAllByHospitalDTOS = new ArrayList<>();
+        GetAllByHospitalDTO getAllByHospitalDTO = new GetAllByHospitalDTO();
+        GetAllByHospitalDetialDTO getAllByHospitalDetialDTO = new GetAllByHospitalDetialDTO();
+        List<GetAllByHospitalDetialDTO> getAllByHospitalDetialDTOS = new ArrayList<>();
+        for (QcCases qcCases_new : qcCases) {
+            getAllByHospitalDTO = new GetAllByHospitalDTO();
+            getAllByHospitalDTO.setCasesId(qcCases_new.getId());
+            getAllByHospitalDTO.setCasesName(qcCases_new.getName());
+            getAllByHospitalDTO.setRemark(qcCases_new.getRemark());
+            getAllByHospitalDetialDTOS = new ArrayList<>();
+            for (QcCasesEntryDTO qcCasesEntry : qcCasesEntries) {
+                if(getAllByHospitalDTO.getCasesName().equals(qcCasesEntry.getCasesName())){
+                    getAllByHospitalDetialDTO = new GetAllByHospitalDetialDTO();
+                    getAllByHospitalDetialDTO.setCasesEntryId(qcCasesEntry.getId());
+                    getAllByHospitalDetialDTO.setCasesName(qcCasesEntry.getCasesName());
+                    getAllByHospitalDetialDTO.setCode(qcCasesEntry.getCode());
+                    getAllByHospitalDetialDTO.setModeId(qcCasesEntry.getModeId());
+                    getAllByHospitalDetialDTO.setModeName(qcCasesEntry.getModeName());
+                    getAllByHospitalDetialDTO.setMsg(casesEntryHospitalMap.get(qcCasesEntry.getId()).getMsg());
+                    getAllByHospitalDetialDTO.setIsUsed(casesEntryHospitalMap.get(qcCasesEntry.getId()).getIsUsed());
+                    getAllByHospitalDetialDTO.setScore(casesEntryHospitalMap.get(qcCasesEntry.getId()).getScore());
+                    getAllByHospitalDetialDTO.setPrecond(qcCasesEntry.getPrecond());
+                    getAllByHospitalDetialDTO.setName(qcCasesEntry.getName());
+                    getAllByHospitalDetialDTOS.add(getAllByHospitalDetialDTO);
+                }
+            }
+            getAllByHospitalDTO.setGetAllByHospitalDetialDTOS(getAllByHospitalDetialDTOS);
+            if(ListUtil.isNotEmpty(getAllByHospitalDTO.getGetAllByHospitalDetialDTOS())){
+                getAllByHospitalDTOS.add(getAllByHospitalDTO);
+            }
+        }
+
+        return getAllByHospitalDTOS;
+    }
+
+    /**
+     * 修改指定医院病例条目
+     *
+     * @param updateByHospitalVO
+     * @return
+     */
+    public Boolean updateByHospital(UpdateByHospitalVO updateByHospitalVO){
+        QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
+        casesEntryHospitalQueryWrapper
+                .eq("is_deleted",IsDeleteEnum.N.getKey())
+                .in("hospital_id",updateByHospitalVO.getHospitalIds());
+        this.remove(casesEntryHospitalQueryWrapper);
+        //添加新的
+        casesEntryHospitalService.saveBatch(updateByHospitalVO.getCasesEntryHospitals());
+
+        return true;
+    }
+
+    /**
+     * 新增指定医院条目
+     *
+     * @param insertByHospitalVO
+     * @return
+     */
+    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> qcCasesEntryQueryWrapper = new QueryWrapper<>();
+        qcCasesEntryQueryWrapper.eq("id",insertByHospitalVO.getId());
+        List<QcCasesEntry> qcCasesEntries = qcCacesEntryFacade.list(qcCasesEntryQueryWrapper);
+        QcCasesEntry qcCasesEntry = new QcCasesEntry();
+        Date date = DateUtil.now();
+        if(ListUtil.isNotEmpty(qcCasesEntries)){
+            qcCasesEntry = new QcCasesEntry();
+            BeanUtil.copyProperties(insertByHospitalVO,qcCasesEntry);
+            qcCasesEntry.setGmtCreate(date);
+            qcCasesEntry.setGmtModified(date);
+            qcCacesEntryFacade.updateById(qcCasesEntry);
+            //修改时添加明细前先删除
+            List<Long> hospitalIds = new ArrayList<>();
+            for (CasesEntryHospital casesEntryHospital : insertByHospitalVO.getCasesEntryHospitals()) {
+                if(!hospitalIds.contains(casesEntryHospital.getHospitalId())){
+                    hospitalIds.add(casesEntryHospital.getHospitalId());
+                }
+            }
+            QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
+            casesEntryHospitalQueryWrapper.eq("cases_entry_id",qcCasesEntry.getId());
+            casesEntryHospitalService.remove(casesEntryHospitalQueryWrapper);
+        }else {
+            qcCasesEntry = new QcCasesEntry();
+            BeanUtil.copyProperties(insertByHospitalVO,qcCasesEntry);
+            qcCasesEntry.setGmtCreate(date);
+            qcCasesEntry.setGmtModified(date);
+            boolean res= qcCacesEntryFacade.save(qcCasesEntry);
+            //先保存, 在更新Coed
+            if(res){
+                Long id = qcCasesEntry.getId();
+                String code = qcCasesEntry.getCode()+id;
+                UpdateWrapper<QcCasesEntry> qcCasesEntryQueryUpdate = new UpdateWrapper<>();
+                qcCasesEntryQueryUpdate
+                        .eq("is_deleted",IsDeleteEnum.N.getKey())
+                        .eq("id",id)
+                        .set("code",code);
+                qcCacesEntryFacade.update(qcCasesEntryQueryUpdate);
+            }
+        }
+        //添加分值明细
+        List<CasesEntryHospital> casesEntryHospitals = new ArrayList<>();
+        CasesEntryHospital casesEntryHospital = new CasesEntryHospital();
+        for (CasesEntryHospital casesEntryHospital_new : insertByHospitalVO.getCasesEntryHospitals()) {
+            casesEntryHospital = new CasesEntryHospital();
+            BeanUtil.copyProperties(casesEntryHospital_new,casesEntryHospital);
+            casesEntryHospital.setCasesEntryId(qcCasesEntry.getId());
+            casesEntryHospital.setGmtCreate(date);
+            casesEntryHospital.setGmtModified(date);
+            casesEntryHospitals.add(casesEntryHospital);
+        }
+        casesEntryHospitalService.saveBatch(casesEntryHospitals);
+        return true;
+    }
+}

+ 34 - 0
mrman-service/src/main/java/com/diagbot/facade/DictionaryFacade.java

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

+ 31 - 0
mrman-service/src/main/java/com/diagbot/facade/MedRecordModuleFacade.java

@@ -0,0 +1,31 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.entity.MedRecordModule;
+import com.diagbot.service.impl.MedRecordModuleServiceImpl;
+import com.diagbot.vo.MedRecordModuleVO;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author zhoutg
+ * @Description:
+ * @date 2020-03-17 13:47
+ */
+@Component
+public class MedRecordModuleFacade extends MedRecordModuleServiceImpl {
+
+    /**
+     * 获取所有的模板类型
+     *
+     * @param medRecordModuleVO
+     * @return
+     */
+    public List<MedRecordModule> getList(MedRecordModuleVO medRecordModuleVO) {
+        return this.list(new QueryWrapper<MedRecordModule>()
+                .eq("hospital_id", medRecordModuleVO.getHospitalId())
+                .eq("mode_id", medRecordModuleVO.getModeId())
+        );
+    }
+}

+ 124 - 0
mrman-service/src/main/java/com/diagbot/facade/QcCacesEntryFacade.java

@@ -0,0 +1,124 @@
+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.GetUpdateInfoDTO;
+import com.diagbot.dto.GetUpdateInfoDetialDTO;
+import com.diagbot.dto.QcCasesEntryAllDTO;
+import com.diagbot.dto.QcHospitalInfoAllDTO;
+import com.diagbot.entity.CasesEntryHospital;
+import com.diagbot.entity.QcCasesEntry;
+import com.diagbot.entity.QcQuestionEntry;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.impl.QcCasesEntryServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.vo.GetUpdateInfoVO;
+import com.diagbot.vo.QcCasesEntryAllVO;
+import com.diagbot.vo.QcCasesEntryIndexVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2020/3/30 16:52
+ */
+@Component
+public class QcCacesEntryFacade extends QcCasesEntryServiceImpl {
+    @Autowired
+    private QcCacesEntryFacade qcCacesEntryFacade;
+    @Autowired
+    private CasesEntryHospitalFacade casesEntryHospitalFacade;
+    @Autowired
+    private BasHospitalInfoFacade qcHospitalInfoFacade;
+    @Autowired
+    QcQuestionEntryFacade qcQuestionEntryFacade;
+
+    /**
+     * 分页获取病例条目
+     *
+     * @param qcCasesEntryAllVO
+     * @return
+     */
+    public IPage<QcCasesEntryAllDTO> getAll(QcCasesEntryAllVO qcCasesEntryAllVO){
+        return this.getAllQcCasesEntry(qcCasesEntryAllVO);
+    }
+
+    /**
+     * 分页获取病例条目
+     *
+     * @param qcCasesEntryIndexVO
+     * @return
+     */
+    public IPage<QcCasesEntryAllDTO> getAllQcCasesEntryIndexFac(QcCasesEntryIndexVO qcCasesEntryIndexVO){
+        return this.getAllQcCasesEntryIndex(qcCasesEntryIndexVO);
+    }
+
+    /**
+     * 修改时获取病例条目信息
+     *
+     * @param getUpdateInfoVO
+     * @return
+     */
+    public List<GetUpdateInfoDTO>  getUpdateInfo(GetUpdateInfoVO getUpdateInfoVO){
+        QueryWrapper<QcCasesEntry> qcCasesEntryQueryWrapper = new QueryWrapper<>();
+        qcCasesEntryQueryWrapper
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id",getUpdateInfoVO.getId());
+        QcCasesEntry qcCasesEntry = qcCacesEntryFacade.getOne(qcCasesEntryQueryWrapper);
+        QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
+        casesEntryHospitalQueryWrapper
+                .eq("is_deleted",IsDeleteEnum.N.getKey())
+                .eq("cases_entry_id",qcCasesEntry.getId())
+                .groupBy("hospital_id");
+        List<CasesEntryHospital> casesEntryHospitals = casesEntryHospitalFacade.list(casesEntryHospitalQueryWrapper);
+        List<GetUpdateInfoDTO> getUpdateInfoDTOS = new ArrayList<>();
+        GetUpdateInfoDTO getUpdateInfoDTO = new GetUpdateInfoDTO();
+        List<GetUpdateInfoDetialDTO> getUpdateInfoDetialDTOS = new ArrayList<>();
+        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) {
+            getUpdateInfoDetialDTO = new GetUpdateInfoDetialDTO();
+            getUpdateInfoDetialDTO.setHospitalName(hospitalNameMap.get(casesEntryHospital.getHospitalId()));
+            getUpdateInfoDetialDTO.setMsg(casesEntryHospital.getMsg());
+            getUpdateInfoDetialDTO.setIsUsed(casesEntryHospital.getIsUsed());
+            getUpdateInfoDetialDTO.setScore(casesEntryHospital.getScore());
+            getUpdateInfoDetialDTOS.add(getUpdateInfoDetialDTO);
+            getUpdateInfoDTO.setGetUpdateInfoDetialDTOS(getUpdateInfoDetialDTOS);
+        }
+        getUpdateInfoDTOS.add(getUpdateInfoDTO);
+        return getUpdateInfoDTOS;
+    }
+
+    /**
+     * 条目删除
+     *
+     * @param getUpdateInfoVO
+     * @return
+     */
+    public Boolean deleteQcCasesEntry(GetUpdateInfoVO getUpdateInfoVO){
+       //删除条目
+        QueryWrapper<QcCasesEntry> qcCasesEntryQueryWrapper = new QueryWrapper<>();
+        qcCasesEntryQueryWrapper.eq("id",getUpdateInfoVO.getId());
+        boolean res = this.remove(qcCasesEntryQueryWrapper);
+        //删除明细
+        QueryWrapper<CasesEntryHospital> casesEntryHospitalQueryWrapper = new QueryWrapper<>();
+        casesEntryHospitalQueryWrapper.eq("cases_entry_id",getUpdateInfoVO.getId());
+        casesEntryHospitalFacade.remove(casesEntryHospitalQueryWrapper);
+        //删除模块
+        UpdateWrapper<QcQuestionEntry> qcQuescQuestionInfoUpdate = new UpdateWrapper<>();
+        qcQuescQuestionInfoUpdate
+                .eq("cases_entry_id",getUpdateInfoVO.getId());
+        qcQuestionEntryFacade.remove(qcQuescQuestionInfoUpdate);
+
+        return res;
+
+    }
+}

+ 42 - 9
mrman-service/src/main/java/com/diagbot/facade/QcCasesFacade.java

@@ -1,17 +1,18 @@
 package com.diagbot.facade;
+
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.dto.QcCasesAllDTO;
 import com.diagbot.dto.QcCasesDTO;
-import com.diagbot.dto.QcHospitalInfoAllDTO;
+import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.entity.QcCases;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.service.QcCasesEntryService;
 import com.diagbot.service.QcCasesService;
 import com.diagbot.service.impl.QcCasesServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.ListUtil;
+import com.diagbot.vo.GetAllByHospitalVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -30,14 +31,16 @@ public class QcCasesFacade extends QcCasesServiceImpl {
     @Autowired
     QcCasesService qcCasesService;
     @Autowired
-    QcCasesEntryService qcCasesEntryService;
+    QcCacesEntryFacade qcCasesEntryService;
+    @Autowired
+    CasesEntryHospitalFacade casesEntryHospitalFacade;
 
     public List<QcCasesAllDTO> getAlls() {
         //查出所有病例
         QueryWrapper<QcCases> qcCasesQuery = new QueryWrapper<>();
         qcCasesQuery
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
-                .orderByDesc("gmt_modified");
+                .orderByAsc("id");
         List<QcCases> data = list(qcCasesQuery);
         List<QcCasesAllDTO> dataNew = new ArrayList<QcCasesAllDTO>();
         dataNew = BeanUtil.listCopyTo(data, QcCasesAllDTO.class);
@@ -45,16 +48,46 @@ public class QcCasesFacade extends QcCasesServiceImpl {
         QueryWrapper<QcCasesEntry> qcCasesEntryQuery = new QueryWrapper<>();
         qcCasesEntryQuery
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
-                .orderByDesc("gmt_modified");
-        List<QcCasesEntry> dataEntry = qcCasesEntryService.list(qcCasesEntryQuery);
+                .orderByDesc("order_no");
+        List<QcCasesEntryDTO> dataEntryDTO = qcCasesEntryService.getQcCasesEntryAll();
+        /*List<QcCasesEntryDTO> dataEntryDTO = new ArrayList<>();
+        dataEntryDTO = BeanUtil.listCopyTo(dataEntry,QcCasesEntryDTO.class);*/
        // 然后把所有病例类型放进去
-        Map<Long, List<QcCasesEntry>> map
-                = EntityUtil.makeEntityListMap(dataEntry, "casesId");
+        Map<Long, List<QcCasesEntryDTO>> map
+                = EntityUtil.makeEntityListMap(dataEntryDTO, "casesId");
       //List<QcCases> data = qcCasesService.list();
         //把模板放进文件夹中
         if (dataNew.size() > 0) {
             for (QcCasesAllDTO ts : dataNew) {
-                List<QcCasesEntry> tmp = map.get(ts.getId());
+                List<QcCasesEntryDTO> tmp = map.get(ts.getId());
+                if (ListUtil.isNotEmpty(tmp)) {
+                    ts.setQcCasesEntry(tmp);
+                }
+            }
+        }
+        return dataNew;
+    }
+
+
+    public List<QcCasesAllDTO> getAllByHospital(GetAllByHospitalVO getAllByHospitalVO){
+        //查出所有病例
+        QueryWrapper<QcCases> qcCasesQuery = new QueryWrapper<>();
+        qcCasesQuery
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .orderByAsc("id");
+        List<QcCases> data = list(qcCasesQuery);
+        List<QcCasesAllDTO> dataNew = new ArrayList<QcCasesAllDTO>();
+        dataNew = BeanUtil.listCopyTo(data, QcCasesAllDTO.class);
+        // 查出所有病例病例类型
+        List<QcCasesEntryDTO> dataEntry = this.getCasesEntryByHospitalId(getAllByHospitalVO.getHospitalId());
+        // 然后把所有病例类型放进去
+        Map<Long, List<QcCasesEntryDTO>> map
+                = EntityUtil.makeEntityListMap(dataEntry, "casesId");
+        //List<QcCases> data = qcCasesService.list();
+        //把模板放进文件夹中
+        if (dataNew.size() > 0) {
+            for (QcCasesAllDTO ts : dataNew) {
+                List<QcCasesEntryDTO> tmp = map.get(ts.getId());
                 if (ListUtil.isNotEmpty(tmp)) {
                     ts.setQcCasesEntry(tmp);
                 }

+ 41 - 36
mrman-service/src/main/java/com/diagbot/facade/QcInputcasesFacade.java

@@ -4,12 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.diagbot.dto.ModuleMappingDTO;
 import com.diagbot.dto.QcAllInputcasesDTO;
-import com.diagbot.dto.QcInputcasesAllDTO;
 import com.diagbot.dto.QcInputcasesMappingDTO;
 import com.diagbot.entity.CasesNumber;
 import com.diagbot.entity.Mode;
 import com.diagbot.entity.ModelMapping;
-import com.diagbot.entity.QcHospitalInfo;
+import com.diagbot.entity.BasHospitalInfo;
 import com.diagbot.entity.QcInputcases;
 import com.diagbot.entity.QcInputcasesMapping;
 import com.diagbot.enums.IsDeleteEnum;
@@ -33,7 +32,6 @@ import com.diagbot.vo.QcInputcasesSaveVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -59,7 +57,7 @@ public class QcInputcasesFacade extends QcInputcasesServiceImpl {
     @Autowired
     ModeService modeService;
     @Autowired
-    QcHospitalInfoFacade qcHospitalInfoFacade;
+    BasHospitalInfoFacade qcHospitalInfoFacade;
 
    /* public List<QcInputcasesAllDTO> getInputcasesAlls(Long textId) {
         //查出所有病例
@@ -228,23 +226,53 @@ public class QcInputcasesFacade extends QcInputcasesServiceImpl {
     public List<QcAllInputcasesDTO> getAllInputcases(QcInputcasesAllVO qcInputcasesAllVO){
         List<Long> hospitalIds = new ArrayList<>();
         if (StringUtil.isNotEmpty(qcInputcasesAllVO.getHospitalName())){
-            QueryWrapper<QcHospitalInfo> qcHospitalInfoQueryWrapper = new QueryWrapper<>();
+            QueryWrapper<BasHospitalInfo> qcHospitalInfoQueryWrapper = new QueryWrapper<>();
             qcHospitalInfoQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey())
                     .like("name",qcInputcasesAllVO.getHospitalName());
-            hospitalIds = qcHospitalInfoFacade.list().stream().map(QcHospitalInfo::getId).collect(Collectors.toList());
+            hospitalIds = qcHospitalInfoFacade.list(qcHospitalInfoQueryWrapper).stream().map(BasHospitalInfo::getId).collect(Collectors.toList());
         }
         //病例
         QueryWrapper<CasesNumber> casesNumberQueryWrapper = new QueryWrapper<>();
         casesNumberQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey())
-                .orderByDesc("gmt_modified");
+                .orderByAsc("id");
         if(StringUtil.isNotEmpty(qcInputcasesAllVO.getCaseNumber())){
             casesNumberQueryWrapper.like("case_number",qcInputcasesAllVO.getCaseNumber());
         }
         if(StringUtil.isNotEmpty(qcInputcasesAllVO.getHospitalName())){
-            casesNumberQueryWrapper.in("hospital_id",hospitalIds);
+            if(ListUtil.isNotEmpty(hospitalIds)){
+                casesNumberQueryWrapper.in("hospital_id",hospitalIds);
+            }else {
+                casesNumberQueryWrapper.in("hospital_id","-10");
+            }
         }
+
         List<CasesNumber> casesNumbers = casesNumberService.list(casesNumberQueryWrapper);
+        //将病例内容放入出参
         List<QcAllInputcasesDTO> res = new ArrayList<>();
+        QueryWrapper<BasHospitalInfo> hospitalInfoQueryWrapper = new QueryWrapper<>();
+        hospitalInfoQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey());
+        List<BasHospitalInfo> qcHospitalInfos = qcHospitalInfoFacade.list();
+        Map<Long,String> hospitalMap = new HashMap<>();
+        hospitalMap = qcHospitalInfos.stream().collect(Collectors.toMap(BasHospitalInfo::getId, hospitalInfo -> hospitalInfo.getName()));
+        res = BeanUtil.listCopyTo(casesNumbers,QcAllInputcasesDTO.class);
+        for (QcAllInputcasesDTO qcAllInputcasesDTO : res) {
+            qcAllInputcasesDTO.setHospitalName(hospitalMap.get(Long.parseLong(qcAllInputcasesDTO.getHospitalId())));
+        }
+        return  res;
+    }
+
+    public List<QcAllInputcasesDTO> getInputcasesDetial(QcInputcasesAllVO qcInputcasesAllVO){
+        //病例
+        QueryWrapper<CasesNumber> casesNumberQueryWrapper = new QueryWrapper<>();
+        casesNumberQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey())
+                .orderByAsc("id");
+        if(StringUtil.isNotEmpty(qcInputcasesAllVO.getCaseNumber())){
+            casesNumberQueryWrapper.like("case_number",qcInputcasesAllVO.getCaseNumber());
+        }
+        List<CasesNumber> casesNumbers = casesNumberService.list(casesNumberQueryWrapper);
+        //将病例内容放入出参
+        List<QcAllInputcasesDTO> res = new ArrayList<>();
+        res = BeanUtil.listCopyTo(casesNumbers,QcAllInputcasesDTO.class);
         //病例内容
         QueryWrapper<ModelMapping> modelMappingQueryWrapper = new QueryWrapper<>();
         modelMappingQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey());
@@ -255,18 +283,13 @@ public class QcInputcasesFacade extends QcInputcasesServiceImpl {
         QueryWrapper<Mode> modelQueryWrapper = new QueryWrapper<>();
         modelQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey());
         List<Mode> modes = modeService.list();
-        Map<Long,String> modeMap = new HashMap<>();
-        modeMap = modes.stream().collect(Collectors.toMap(Mode::getId,mode -> mode.getName()));
         //病例列表
-        QueryWrapper<QcHospitalInfo> hospitalInfoQueryWrapper = new QueryWrapper<>();
+        QueryWrapper<BasHospitalInfo> hospitalInfoQueryWrapper = new QueryWrapper<>();
         hospitalInfoQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey());
-        List<QcHospitalInfo> qcHospitalInfos = qcHospitalInfoFacade.list();
+        List<BasHospitalInfo> qcHospitalInfos = qcHospitalInfoFacade.list();
         Map<Long,String> hospitalMap = new HashMap<>();
-        hospitalMap = qcHospitalInfos.stream().collect(Collectors.toMap(QcHospitalInfo::getId,hospitalInfo -> hospitalInfo.getName()));
-        //将病例内容放入出参
-        res = BeanUtil.listCopyTo(casesNumbers,QcAllInputcasesDTO.class);
+        hospitalMap = qcHospitalInfos.stream().collect(Collectors.toMap(BasHospitalInfo::getId, hospitalInfo -> hospitalInfo.getName()));
         List<ModuleMappingDTO> moduleMappingDTOS = new ArrayList<>();
-        List<Long> modIds = new ArrayList<>();
         ModuleMappingDTO moduleMappingDTO = new ModuleMappingDTO();
         List<String> modeList = new ArrayList();
         for (QcAllInputcasesDTO qcAllInputcasesDTO : res) {
@@ -278,7 +301,7 @@ public class QcInputcasesFacade extends QcInputcasesServiceImpl {
                 if(modelMap.get(mode.getId()) != null){
                     modeList = new ArrayList();
                     for (ModelMapping modelMapping: modelMap.get(mode.getId())) {
-                        if (modelMapping.getCaseNumberId().intValue() == qcAllInputcasesDTO.getId()){
+                        if (modelMapping.getCaseNumberId().intValue() == qcAllInputcasesDTO.getId().intValue()){
                             modeList.add(modelMapping.getText());
                             moduleMappingDTO.setText(modeList);
                         }
@@ -289,23 +312,6 @@ public class QcInputcasesFacade extends QcInputcasesServiceImpl {
             qcAllInputcasesDTO.setHospitalName(hospitalMap.get(Long.parseLong(qcAllInputcasesDTO.getHospitalId())));
             qcAllInputcasesDTO.setModuleMappingDTOList(moduleMappingDTOS);
         }
-       /* for (QcAllInputcasesDTO qcAllInputcasesDTO : res) {
-            for (ModelMapping modelMapping : modelMappings) {
-                if (qcAllInputcasesDTO.getId().intValue() == modelMapping.getCaseNumberId().intValue()){
-                        if(!modIds.contains(modelMapping.getModeId())){
-                            moduleMappingDTO = new ModuleMappingDTO();
-                            moduleMappingDTO.setModeId(modelMapping.getModeId());
-                            moduleMappingDTO.setName(modeMap.get(modelMapping.getModeId()));
-                            moduleMappingDTO.setText(modelMapping.getText());
-                            moduleMappingDTOS.add(moduleMappingDTO);
-                            modIds.add(modelMapping.getModeId());
-                        }
-                }
-            }
-            qcAllInputcasesDTO.setHospitalName(hospitalMap.get(Long.parseLong(qcAllInputcasesDTO.getHospitalId())));
-            qcAllInputcasesDTO.setModuleMappingDTOList(moduleMappingDTOS);
-        }*/
-
         // 查出所有病例病例类型
         List<QcInputcasesMappingDTO> qcInputcasesMapping = qcInputcasesMappingService.getInputMapping(qcInputcasesAllVO.getCaseNumber());
         // 然后把所有病例类型放进去
@@ -319,8 +325,7 @@ public class QcInputcasesFacade extends QcInputcasesServiceImpl {
                 }
             }
         }
-
-        return  res;
+        return res;
     }
 
     /**

+ 33 - 0
mrman-service/src/main/java/com/diagbot/facade/QcModeFacade.java

@@ -0,0 +1,33 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.QcModeDTO;
+import com.diagbot.entity.QcMode;
+import com.diagbot.service.QcModeService;
+import com.diagbot.service.impl.QcModeServiceImpl;
+import com.diagbot.util.BeanUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-04-26 17:24
+ */
+@Component
+public class QcModeFacade extends QcModeServiceImpl {
+
+    @Autowired
+    QcModeService qcModeService;
+
+    public List<QcModeDTO> getModeAll() {
+        List<QcMode> data = qcModeService.list();
+        List<QcModeDTO> dataNew = new ArrayList<QcModeDTO>();
+        dataNew = BeanUtil.listCopyTo(data, QcModeDTO.class);
+        return dataNew;
+
+    }
+}

+ 92 - 0
mrman-service/src/main/java/com/diagbot/facade/QcModuleDetailFacade.java

@@ -0,0 +1,92 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.diagbot.entity.QcModuleDetail;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.QcModuleDetailService;
+import com.diagbot.service.impl.QcModuleDetailServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.UserUtils;
+import com.diagbot.vo.AddModuleDetailVO;
+import com.diagbot.vo.AddModuleInfoVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class QcModuleDetailFacade extends QcModuleDetailServiceImpl {
+
+    @Autowired
+    private QcModuleInfoFacade moduleInfoFacade;
+    @Autowired
+    @Qualifier("qcModuleDetailServiceImpl")
+    private QcModuleDetailService qcModuleDetailService;
+
+    /**
+     * 根据questionId删除明细
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByQuestionIdFac(Map map) {
+        this.deleteByQuestionIds(map);
+    }
+
+
+    /**
+     * 根据moduleId删除明细
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByModuleIdFac(Map map) {
+        this.deleteByModuleIds(map);
+    }
+
+    /**
+     * 添加模板明细
+     *
+     * @param addModuleInfoVO
+     * @return
+     */
+    public Boolean saveOrUpdateInfos(AddModuleInfoVO addModuleInfoVO, Long moduleId) {
+        String userId = UserUtils.getCurrentPrincipleID();
+        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);
+
+        List<QcModuleDetail> moduleDetailList = new ArrayList<>();
+        int i = 1;
+        for (AddModuleDetailVO detailVO : addModuleInfoVO.getModuleDetail()) {
+            QcModuleDetail qcModuleDetail = new QcModuleDetail();
+            BeanUtil.copyProperties(detailVO, qcModuleDetail);
+            qcModuleDetail.setOrderNo(i++);
+            qcModuleDetail.setModuleId(moduleId);
+            qcModuleDetail.setGmtCreate(now);
+            qcModuleDetail.setGmtModified(now);
+            qcModuleDetail.setCreator(userId);
+            qcModuleDetail.setModifier(userId);
+            moduleDetailList.add(qcModuleDetail);
+        }
+        //添加模板明细
+        qcModuleDetailService.saveBatch(moduleDetailList);
+        return true;
+    }
+}

+ 213 - 0
mrman-service/src/main/java/com/diagbot/facade/QcModuleInfoFacade.java

@@ -0,0 +1,213 @@
+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.client.UserServiceClient;
+import com.diagbot.dto.GetModuleInfoOneDTO;
+import com.diagbot.dto.ModuleInfoListDTO;
+import com.diagbot.dto.QcModuleDetailDTO;
+import com.diagbot.dto.QuestionDTO;
+import com.diagbot.entity.QcModuleDetail;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.QcModuleInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.util.UserUtils;
+import com.diagbot.vo.AddModuleInfoVO;
+import com.diagbot.vo.GetModuleInfoOneVO;
+import com.diagbot.vo.GetModuleInfoVO;
+import com.diagbot.vo.QuestionIdsVO;
+import com.diagbot.vo.UpdateModuleInfoVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Arrays;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
+
+    @Autowired
+    QcModuleDetailFacade qcModuleDetailFacade;
+    @Autowired
+    UserServiceClient userServiceClient;
+    @Autowired
+    DictionaryFacade dictionaryFacade;
+    @Autowired
+    QcQuestionFacade qcQuestionFacade;
+
+    /**
+     * 根据id删除标签模板
+     *
+     * @param ids
+     * @return
+     */
+    public Boolean deleteByIdsFac(String ids) {
+        String userId = UserUtils.getCurrentPrincipleID();
+        Date date = DateUtil.now();
+        Map paramMap = new HashMap<>();
+        paramMap.put("delete", IsDeleteEnum.Y.getKey());
+        paramMap.put("ids", Arrays.asList(ids.split(",")));
+        paramMap.put("gmtModified", date);
+        paramMap.put("modifier", userId);
+        //删除模板
+        this.deleteByIds(paramMap);
+        //删除明细表
+        qcModuleDetailFacade.deleteByModuleIdFac(paramMap);
+        return true;
+    }
+
+    /**
+     * 添加模板
+     *
+     * @param addModulInfoVO
+     * @return
+     */
+    public Boolean saveOrUpdateModuleInfo(AddModuleInfoVO addModulInfoVO) {
+        // 校验名称是否相同
+        int count = this.count(new QueryWrapper<QcModuleInfo>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("mode_id", addModulInfoVO.getModeId())
+                .eq("hospital_id", addModulInfoVO.getHospitalId())
+                .eq("name", addModulInfoVO.getName())
+                .ne("id", addModulInfoVO.getId() == null ? -1 : addModulInfoVO.getId()));
+        if (count > 0) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "相同【医院】【模块】下,模板名称已存在");
+        }
+
+        // 同一文书类型下只有一份
+         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() + "】" );
+        }
+
+        Long moduleId = null;
+        Boolean bac = false;
+        if (addModulInfoVO.getId() == null) {
+            String userId = UserUtils.getCurrentPrincipleID();
+            Date now = DateUtil.now();
+            QcModuleInfo moduleInfo = new QcModuleInfo();
+            BeanUtil.copyProperties(addModulInfoVO, moduleInfo);
+            moduleInfo.setCreator(userId);
+            moduleInfo.setModifier(userId);
+            moduleInfo.setGmtCreate(now);
+            moduleInfo.setGmtModified(now);
+            this.save(moduleInfo);
+            moduleId = moduleInfo.getId();
+            bac = qcModuleDetailFacade.saveOrUpdateInfos(addModulInfoVO, moduleId);
+        } else {
+            UpdateModuleInfoVO updateModuleInfoVO = new UpdateModuleInfoVO();
+            BeanUtil.copyProperties(addModulInfoVO, updateModuleInfoVO);
+            bac = this.updateModuleInfo(updateModuleInfoVO);
+        }
+        return bac;
+    }
+
+    /**
+     * 修改模板
+     *
+     * @param updateModuleInfoVO
+     * @return
+     */
+    public Boolean updateModuleInfo(UpdateModuleInfoVO updateModuleInfoVO) {
+        String userId = UserUtils.getCurrentPrincipleID();
+        UpdateWrapper<QcModuleInfo> moduleInfoUpdateWrapper = new UpdateWrapper<>();
+        moduleInfoUpdateWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", updateModuleInfoVO.getId())
+                .set("name", updateModuleInfoVO.getName())
+                .set("mode_id", updateModuleInfoVO.getModeId())
+                .set("record_module_id", updateModuleInfoVO.getRecordModuleId())
+                .set("modifier", userId)
+                .set("gmt_modified", DateUtil.now())
+                .set("remark", updateModuleInfoVO.getRemark());
+        this.update(new QcModuleInfo(), moduleInfoUpdateWrapper);
+        AddModuleInfoVO addModuleInfoVO = new AddModuleInfoVO();
+        BeanUtil.copyProperties(updateModuleInfoVO, addModuleInfoVO);
+        return qcModuleDetailFacade.saveOrUpdateInfos(addModuleInfoVO, updateModuleInfoVO.getId());
+    }
+
+
+    /**
+     * 模板维护页面获取模板列表
+     *
+     * @param getModuleInfoVO
+     * @return
+     */
+    public IPage<ModuleInfoListDTO> getModuleInfoList(GetModuleInfoVO getModuleInfoVO) {
+        //获取模板信息
+        IPage<ModuleInfoListDTO> moduleInfoDTOIPage = this.getModuleInfoListByType(getModuleInfoVO);
+        return moduleInfoDTOIPage;
+    }
+
+    /**
+     * 根据id获取模板信息
+     *
+     * @param getModuleInfoOneVO
+     * @return
+     */
+    public GetModuleInfoOneDTO getById(GetModuleInfoOneVO getModuleInfoOneVO) {
+        GetModuleInfoOneDTO getModuleInfoOneDTO = new GetModuleInfoOneDTO();
+        //获取模板信息
+        QueryWrapper<QcModuleInfo> moduleInfoQueryWrapper = new QueryWrapper<>();
+        moduleInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", getModuleInfoOneVO.getModuleId());
+        QcModuleInfo moduleInfo = this.getOne(moduleInfoQueryWrapper, false);
+        if (null == moduleInfo) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
+                    "模板已删除【" + getModuleInfoOneVO.getModuleId() + "】");
+        }
+        BeanUtil.copyProperties(moduleInfo, getModuleInfoOneDTO);
+        List<QcModuleDetail> qcModuleDetailList = qcModuleDetailFacade.list(new QueryWrapper<QcModuleDetail>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("module_id", getModuleInfoOneDTO.getId())
+                .orderByAsc("order_no")
+        );
+        List<QcModuleDetailDTO> qcModuleDetailDTOList = BeanUtil.listCopyTo(qcModuleDetailList, QcModuleDetailDTO.class);
+
+        // 根据questionId获取所有的标签
+        List<Long> questionIds = qcModuleDetailList.stream().map(r -> r.getQuestionId()).collect(Collectors.toList());
+        QuestionIdsVO questionIdsVO = new QuestionIdsVO();
+        questionIdsVO.setIds(questionIds);
+        Map<Long, QuestionDTO> questionDTOMap = qcQuestionFacade.getByIds(questionIdsVO);
+        for (QcModuleDetailDTO bean : qcModuleDetailDTOList) {
+            QuestionDTO questionDTO = questionDTOMap.get(bean.getQuestionId());
+            if (questionDTO != null) {
+                bean.setQuestionDTO(questionDTO);
+            }
+        }
+        Map<Integer, List<QcModuleDetailDTO>> map = EntityUtil.makeEntityListMap(qcModuleDetailDTOList, "groupId");
+        getModuleInfoOneDTO.setModuleDetail(map);
+        return getModuleInfoOneDTO;
+    }
+
+
+    /**
+     * 校验questionId是否在模板中使用
+     *
+     * @param map
+     * @return
+     */
+    public List<QcModuleInfo> getModuleNameByQuestionIdFac(Map map) {
+        return this.getModuleNameByQuestionId(map);
+    }
+}

+ 26 - 0
mrman-service/src/main/java/com/diagbot/facade/QcQuestionEntryFacade.java

@@ -0,0 +1,26 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.QuesCasesEntryDTO;
+import com.diagbot.service.impl.QcQuestionEntryServiceImpl;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author zhoutg
+ * @Description:
+ * @date 2020-03-10 16:32
+ */
+@Component
+public class QcQuestionEntryFacade extends QcQuestionEntryServiceImpl {
+
+    /**
+     * 根据questionId获取质控条目明细
+     *
+     * @param id
+     * @return
+     */
+    public List<QuesCasesEntryDTO> getByQuestionIdFac(Long id) {
+        return this.getByQuestionId(id);
+    }
+}

+ 519 - 0
mrman-service/src/main/java/com/diagbot/facade/QcQuestionFacade.java

@@ -0,0 +1,519 @@
+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.client.UserServiceClient;
+import com.diagbot.dto.QuestionDTO;
+import com.diagbot.dto.QuestionPageDTO;
+import com.diagbot.entity.CommonParam;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.entity.QcQuestionEntry;
+import com.diagbot.entity.QcQuestionInfo;
+import com.diagbot.entity.QcQuestionMapping;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
+import com.diagbot.entity.wrapper.QuestionMappingWrapper;
+import com.diagbot.entity.wrapper.QuestionWrapper;
+import com.diagbot.enums.InsertOrUpdateEnum;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.TagTypeEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.QcQuestionEntryService;
+import com.diagbot.service.QcQuestionMappingService;
+import com.diagbot.service.impl.QcQuestionInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.util.UserUtils;
+import com.diagbot.vo.DeleteQuestionVO;
+import com.diagbot.vo.QuesCasesEntryVO;
+import com.diagbot.vo.QuestionIdsVO;
+import com.diagbot.vo.QuestionIndexVO;
+import com.diagbot.vo.QuestionPageVO;
+import com.diagbot.vo.QuestionSaveVO;
+import com.diagbot.vo.QuestionVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Component;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class QcQuestionFacade extends QcQuestionInfoServiceImpl {
+
+//    @Autowired
+//    @Qualifier("questionInfoServiceImpl")
+//    QuestionInfoService questionInfoService;
+    @Autowired
+    @Qualifier("qcQuestionMappingServiceImpl")
+    QcQuestionMappingService qcQuestionMappingService;
+    @Autowired
+    QcQuestionMappingFacade qcQuestionMappingFacade;
+    @Autowired
+    UserServiceClient userServiceClient;
+//    @Autowired
+//    ModuleDetailFacade moduleDetailFacade;
+    @Autowired
+    QcModuleInfoFacade qcModuleInfoFacade;
+    @Autowired
+    QcCacesEntryFacade qcCacesEntryFacade;
+    @Autowired
+    QcQuestionEntryFacade qcQuestionEntryFacade;
+    @Autowired
+    @Qualifier("qcQuestionEntryServiceImpl")
+    QcQuestionEntryService questionEntryService;
+
+    /**
+     * 标签保存
+     *
+     * @param questionSaveVO
+     */
+    public void saveOrUpdate(QuestionSaveVO questionSaveVO) {
+        QuestionWrapper questionWrapper = questionSaveVO.getQuestionWrapper();
+        CommonParam param = initCommonParam();
+        //保存|修改主表信息
+        saveQuestionInfo(questionWrapper, param);
+        // 保存组合标签和字标签映射表
+        saveQuestionMapping(questionWrapper, param);
+        // 保存标签和条目映射表
+        saveQuestionEntry(questionWrapper.getQuesCasesEntryVOList(), param);
+    }
+
+    /**
+     * 初始化参数
+     *
+     * @return
+     */
+    public CommonParam initCommonParam() {
+        CommonParam param = new CommonParam();
+        String person = UserUtils.getCurrentPrincipleID();
+        param.setNow(DateUtil.now());
+        param.setPerson(person);
+        param.setInsertOrUpdate(InsertOrUpdateEnum.Insert.getKey());
+        return param;
+    }
+
+    /**
+     * 保存映射关系
+     *
+     * @param questionWrapper
+     * @param param
+     */
+    public void saveQuestionMapping(QuestionWrapper questionWrapper, CommonParam param) {
+        QcQuestionInfo questionInfo = param.getQcQuestionInfo();
+        Date now = param.getNow();
+        String person = param.getPerson();
+        //先删除原明细,再插入新明细
+        List<QuestionMappingWrapper> questionMappings = questionWrapper.getQuestionMappings();
+        if (ListUtil.isNotEmpty(questionMappings)) {
+            deleteMapping(questionInfo.getId(), param);//删除原映射关系
+            saveMapping(questionMappings, person, now, questionInfo.getId());
+        }
+    }
+
+    /**
+     * 保存标签和条目映射关系
+     *
+     * @param quesCasesEntryVOList
+     * @param param
+     */
+    public void saveQuestionEntry(List<QuesCasesEntryVO> quesCasesEntryVOList, CommonParam param) {
+        Date now = param.getNow();
+        String person = param.getPerson();
+
+        //先删除原明细, 不能先判断本次更新是否有值
+        qcQuestionEntryFacade.update(new QcQuestionEntry(),
+                new UpdateWrapper<QcQuestionEntry>()
+                        .eq("question_id", param.getQcQuestionInfo().getId())
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .set("gmt_modified", now)
+                        .set("modifier", person)
+                        .set("is_deleted", IsDeleteEnum.Y.getKey()));
+
+        if (ListUtil.isEmpty(quesCasesEntryVOList)) {
+            return ;
+        }
+
+        //再插入新明细
+        List<QcQuestionEntry> qcQuestionEntryList = new ArrayList<>();
+        int i = 1;
+        for (QuesCasesEntryVO vo : quesCasesEntryVOList) {
+            QcQuestionEntry bean = new QcQuestionEntry();
+            bean.setQuestionId(param.getQcQuestionInfo().getId());
+            bean.setCasesEntryId(vo.getCasesEntryId());
+            bean.setCreator(person);
+            bean.setGmtCreate(now);
+            bean.setModifier(person);
+            bean.setGmtModified(now);
+            bean.setOrderNo(i++);
+            qcQuestionEntryList.add(bean);
+        }
+        questionEntryService.saveBatch(qcQuestionEntryList);
+    }
+
+    /**
+     * 删除映射关系
+     *
+     * @param questionId
+     * @param param
+     */
+    public void deleteMapping(Long questionId, CommonParam param) {
+        qcQuestionMappingFacade.update(new QcQuestionMapping(),
+                new UpdateWrapper<QcQuestionMapping>()
+                        .eq("parent_question", questionId)
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .set("gmt_modified", param.getNow())
+                        .set("modifier", param.getPerson())
+                        .set("is_deleted", IsDeleteEnum.Y.getKey()));
+    }
+
+    /**
+     * 保存映射关系
+     *
+     * @param questionMappings
+     * @param person
+     * @param now
+     * @param id
+     */
+    public void saveMapping(List<QuestionMappingWrapper> questionMappings, String person, Date now, Long id) {
+        List<QcQuestionMapping> saveMapping = new ArrayList<>();
+        int i = 1;
+        for (QuestionMappingWrapper mapping : questionMappings) {
+            QcQuestionMapping bean = new QcQuestionMapping();
+            BeanUtil.copyProperties(mapping, bean);
+            bean.setCreator(person);
+            bean.setGmtCreate(now);
+            bean.setModifier(person);
+            bean.setGmtModified(now);
+            bean.setParentQuestion(id);
+            bean.setOrderNo(i++);
+            saveMapping.add(bean);
+        }
+        qcQuestionMappingService.saveBatch(saveMapping);
+    }
+
+    /**
+     * 保存主表
+     *
+     * @param questionWrapper
+     * @param param
+     */
+    public void saveQuestionInfo(QuestionWrapper questionWrapper, CommonParam param) {
+        QcQuestionInfo qcQuestionInfo = new QcQuestionInfo();
+        if (questionWrapper.getId() != null) {
+            qcQuestionInfo = this.getOne(new QueryWrapper<QcQuestionInfo>()
+                    .eq("id", questionWrapper.getId())
+                    .eq("is_deleted", IsDeleteEnum.N.getKey()), false);
+            if (qcQuestionInfo == null) { //校验
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "字段不存在");
+            }
+            param.setInsertOrUpdate(InsertOrUpdateEnum.Update.getKey());
+        }
+        BeanUtil.copyProperties(questionWrapper, qcQuestionInfo);
+        List<QcQuestionInfo> questionInfoList = this.list(new QueryWrapper<QcQuestionInfo>()
+                .eq("tag_name", qcQuestionInfo.getTagName())
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("mode_id", qcQuestionInfo.getModeId())
+                .eq("hospital_id", qcQuestionInfo.getHospitalId())
+                .ne("id", qcQuestionInfo.getId() == null ? -1 : qcQuestionInfo.getId()));
+        if (ListUtil.isNotEmpty(questionInfoList)) { //标签type、tagName唯一
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "备注名称已存在");
+        }
+        if (InsertOrUpdateEnum.Insert.getKey() == param.getInsertOrUpdate()) {
+            qcQuestionInfo.setCreator(param.getPerson()); //创建人
+            qcQuestionInfo.setGmtCreate(param.getNow());//创建时间
+        }
+        qcQuestionInfo.setGmtModified(param.getNow());//修改时间
+        qcQuestionInfo.setModifier(param.getPerson());//修改人
+        param.setQcQuestionInfo(qcQuestionInfo);
+        this.saveOrUpdate(qcQuestionInfo);
+    }
+
+    /**
+     * 标签列表
+     *
+     * @param questionPageVO
+     * @return
+     */
+    public IPage<QuestionPageDTO> getListFac(QuestionPageVO questionPageVO) {
+        IPage<QuestionPageDTO> res = this.getList(questionPageVO);
+//        if (res.getTotal() <= 0) {
+//            return res;
+//        }
+//        List<String> personIds = res.getRecords().stream().map(row -> row.getModifier()).collect(Collectors.toList());
+//        RespDTO<Map<String, String>> mapRespDTO = userServiceClient.getUserInfoByIds(personIds);
+//        if (mapRespDTO == null || !CommonErrorCode.OK.getCode().equals(mapRespDTO.code)) {
+//            throw new CommonException(CommonErrorCode.RPC_ERROR, "获取操作人失败");
+//        }
+//        for (QuestionPageDTO bean : res.getRecords()) {
+//            bean.setModifier(mapRespDTO.data.get(bean.getModifier()));
+//        }
+        return res;
+    }
+
+    /**
+     * 根据id删除标签
+     *
+     * @param deleteQuestionVO
+     * @return
+     */
+    public Boolean deleteByIdsFac(DeleteQuestionVO deleteQuestionVO) {
+        String ids = deleteQuestionVO.getIds();
+        if (StringUtil.isEmpty(ids)) {
+            return true;
+        }
+        List<String> idList = Arrays.asList(ids.split(","));
+        Date now = DateUtil.now();
+        String person = UserUtils.getCurrentPrincipleID();
+        for (String id : idList) {
+            Map paramMap = new HashMap<>();
+            paramMap.put("delete", IsDeleteEnum.Y.getKey());
+            paramMap.put("ids", Arrays.asList(ids.split(",")));
+            paramMap.put("gmtModified", now);
+            paramMap.put("modifier", person);
+            // 映射关系删除校验,如果有父项关联,不能删除
+            List<QcQuestionInfo> questionInfoList = getParentQuestion(Long.parseLong(id));
+            if (ListUtil.isNotEmpty(questionInfoList)) {
+                StringBuffer sb = new StringBuffer();
+                sb.append("请先删除上级关联:");
+                for (QcQuestionInfo ques : questionInfoList) {
+                    sb.append("【" + ques.getTagName() + "】");
+                }
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
+                        sb.toString());
+            }
+
+            // 从模板中查找是否有关联
+            Map<String, Object> paraMap = new HashMap<>();
+            if (deleteQuestionVO.getHospitalId() != null) {
+                paraMap.put("hospitalId", deleteQuestionVO.getHospitalId());
+            }
+            paraMap.put("questionId", Long.parseLong(id));
+            List<QcModuleInfo> qcModuleInfoList = qcModuleInfoFacade.getModuleNameByQuestionIdFac(paraMap);
+            if (ListUtil.isNotEmpty(qcModuleInfoList)) {
+                StringBuffer errMsg = new StringBuffer();
+                errMsg.append("该字段已关联模板");
+                for (QcModuleInfo bean : qcModuleInfoList) {
+                    errMsg.append("【" + bean.getName() + "】");
+                }
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, errMsg.toString());
+            }
+
+            //删除自身
+            this.deleteByIds(paramMap);
+
+            //删除映射关系
+            qcQuestionMappingFacade.deleteByIdsFac(paramMap);
+        }
+        return true;
+    }
+
+
+    /**
+     * 检索
+     *
+     * @param questionIndexVO
+     * @return
+     */
+    public List<QcQuestionInfo> indexFac(QuestionIndexVO questionIndexVO) {
+        Map<String, Object> paramMap = new HashMap<>();
+        paramMap.put("hospitalId", questionIndexVO.getHospitalId());
+        paramMap.put("modeId", questionIndexVO.getModeId());
+        paramMap.put("tagName", questionIndexVO.getTagName());
+        paramMap.put("controlType", questionIndexVO.getControlType());
+        paramMap.put("notIds", questionIndexVO.getNotIds());
+        paramMap.put("tagType", questionIndexVO.getTagType());
+        paramMap.put("notTagType", questionIndexVO.getNotTagType());
+        paramMap.put("notControlType", questionIndexVO.getNotControlType());
+        List<QcQuestionInfo> res = this.index(paramMap);
+        return res;
+    }
+
+//    /**
+//     * 根据主标签id 检索子标签
+//     *
+//     * @param questionIndexSubVO
+//     * @return
+//     */
+//    public List<QuestionInfo> indexSub(QuestionIndexSubVO questionIndexSubVO) {
+//        Map<String, Object> paramMap = new HashMap<>();
+//        paramMap.put("age", questionIndexSubVO.getAge());
+//        paramMap.put("sexType", questionIndexSubVO.getSexType());
+//        paramMap.put("tagName", questionIndexSubVO.getTagName());
+//        paramMap.put("type", questionIndexSubVO.getType());
+//        paramMap.put("controlType", questionIndexSubVO.getControlType());
+//        paramMap.put("notIds", questionIndexSubVO.getNotIds());
+//        paramMap.put("tagType", questionIndexSubVO.getTagType());
+//        paramMap.put("existName", questionIndexSubVO.getExistName());
+//        paramMap.put("notTagType", questionIndexSubVO.getNotTagType());
+//        paramMap.put("notControlType", questionIndexSubVO.getNotControlType());
+//
+//        QueryWrapper<QuestionMapping> questionMappingQueryWrapper = new QueryWrapper<>();
+//        questionMappingQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+//                .eq("parent_question", questionIndexSubVO.getParentId());
+//        List<QuestionMapping> questionMappingList = questionMappingFacade.list(questionMappingQueryWrapper);
+//        if (ListUtil.isNotEmpty(questionMappingList)) {
+//            List<Long> sonIds = questionMappingList.stream().map(questionMapping -> questionMapping.getSonQuestion())
+//                    .collect(Collectors.toList());
+//            paramMap.put("ids", sonIds);
+//        }
+//        List<QuestionInfo> res = this.index(paramMap);
+//        return res;
+//    }
+
+
+    /**
+     * 根据参数返回标签内容
+     *
+     * @param questionVO 获取标签内容参数
+     * @return 标签内容
+     */
+    public QuestionDTO getById(QuestionVO questionVO) {
+        Map paramMap = new HashMap<>();
+        paramMap.put("id", questionVO.getId());
+
+        QcQuestionInfo questionInfo = this.getOne(new QueryWrapper<QcQuestionInfo>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", questionVO.getId()), false
+        );
+        if (questionInfo == null) { //无数据直接返回,不通过报错的形式返回
+            return new QuestionDTO();
+        }
+        QuestionDTO res = new QuestionDTO();
+        BeanUtil.copyProperties(questionInfo, res);
+
+        // 如果是单标签且有明细内容,就获取条目内容Fac
+        if (TagTypeEnum.T1.getKey() == res.getTagType()) {
+            res.setQuesCasesEntryDTOList(qcQuestionEntryFacade.getByQuestionIdFac(questionVO.getId()));
+        }
+
+        //获取子标签
+        List<QuestionInfoWrapper> questionMapping = this.getByQuestionMapping(paramMap);
+        List<QuestionDTO> sonQuestionList = BeanUtil.listCopyTo(questionMapping, QuestionDTO.class);
+        res.setQuestionMapping(sonQuestionList);
+        return res;
+    }
+
+
+//    /**
+//     * 查询多个id返回标签内容
+//     *
+//     * @param questionIdsVO 获取标签内容参数
+//     * @return 标签内容
+//     */
+//    public Map<Long, QuestionDTO> getByIds(QuestionIdsVO questionIdsVO) {
+//        Map<Long, QuestionDTO> data = new HashMap<>();
+//        if (StringUtil.isEmpty(questionIdsVO.getIds())) {
+//            return data;
+//        }
+//        String[] ids = questionIdsVO.getIds().split(",");
+//        for (String id : ids) {
+//            QuestionVO questionVO = new QuestionVO();
+//            questionVO.setId(Long.parseLong(id));
+//            QuestionDTO item = this.getById(questionVO);
+//            data.put(item.getId(), item);
+//        }
+//        return data;
+//    }
+
+
+    /**
+     * 查询多个id返回标签内容【优化版】
+     *
+     * @param questionIdsVO 获取标签内容参数
+     * @return 标签内容Fac
+     */
+    public Map<Long, QuestionDTO> getByIds(QuestionIdsVO questionIdsVO) {
+        List<Long> idList = questionIdsVO.getIds();
+        if (ListUtil.isEmpty(idList)) {
+            return new HashMap<>();
+        }
+        List<QcQuestionInfo> qcQuestionInfoList = this.list(new QueryWrapper<QcQuestionInfo>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("id", idList)
+        );
+        List<QuestionDTO> questionDTOList = BeanUtil.listCopyTo(qcQuestionInfoList, QuestionDTO.class);
+        if (ListUtil.isNotEmpty(questionDTOList)) {
+            List<Long> ids = questionDTOList.stream().map(r -> r.getId()).collect(Collectors.toList());
+            Map paramMap = new HashMap<>();
+            paramMap.put("ids", ids);
+            //获取子标签
+            List<QuestionInfoWrapper> questionMapping = this.getByQuestionMapping(paramMap);
+            Map<Long, List<QuestionInfoWrapper>> map = EntityUtil.makeEntityListMap(questionMapping, "parentQuestion");
+            for (QuestionDTO bean : questionDTOList) {
+                List<QuestionInfoWrapper> questionInfoWrapperList = map.get(bean.getId());
+                if (ListUtil.isNotEmpty(questionInfoWrapperList)) {
+                    bean.setQuestionMapping(BeanUtil.listCopyTo(questionInfoWrapperList, QuestionDTO.class));
+                }
+            }
+        }
+        return questionDTOList.stream().collect(Collectors.toMap(r -> r.getId(), r -> r));
+    }
+
+//    /**
+//     * 根据id返回被引用的父标签
+//     *
+//     * @param subQuestionVO 获取父标签内容参数
+//     * @return 标签内容
+//     */
+//    public List<QuestionInfo> getBySubQuestionId(SubQuestionVO subQuestionVO) {
+//        List<QuestionDetail> list = questionDetailFacade.list(new QueryWrapper<QuestionDetail>()
+//                .eq("is_deleted", IsDeleteEnum.N.getKey())
+//                .apply("find_in_set({0}, sub_question)", subQuestionVO.getId())
+//        );
+//        if (ListUtil.isNotEmpty(list)) {
+//            List<Long> ids = list.stream().map(r -> r.getQuestionId()).distinct().collect(Collectors.toList());
+//            return this.list(new QueryWrapper<QuestionInfo>()
+//                    .eq("is_deleted", IsDeleteEnum.N.getKey())
+//                    .in("id", ids)
+//            );
+//        }
+//        return null;
+//    }
+
+
+
+//    /**
+//     * 获取所有需要删除的缓存id列表
+//     *
+//     * @param id
+//     * @return
+//     */
+//    public List<Long> getDeleteId(Long id) {
+//        List<Long> list = new ArrayList<>();
+//        list.add(id); //添加自身id
+//        getParent(id, list); //添加父级
+//        return list;
+//    }
+
+
+//    public void getParent(Long id, List<Long> list) {
+//        List<QuestionMapping> questionMappingList = questionMappingFacade.list(
+//                new QueryWrapper<QuestionMapping>()
+//                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+//                        .eq("son_question", id)
+//        );
+//        if (ListUtil.isNotEmpty(questionMappingList)) {
+//            for (QuestionMapping questionMapping : questionMappingList) {
+//                Long parentId = questionMapping.getParentQuestion();
+//                if (!list.contains(parentId)) {
+//                    list.add(parentId);
+//                    getParent(parentId, list);
+//                }
+//            }
+//        }
+//    }
+}

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

@@ -0,0 +1,25 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.QcQuestionMappingServiceImpl;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+/**
+ * @author zhoutg
+ * @Description:
+ * @date 2020-03-10 16:32
+ */
+@Component
+public class QcQuestionMappingFacade extends QcQuestionMappingServiceImpl {
+
+    /**
+     * 根据id删除标签
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByIdsFac(Map map) {
+        this.deleteByIds(map);
+    }
+}

+ 2 - 2
mrman-service/src/main/java/com/diagbot/mapper/QcHospitalInfoMapper.java

@@ -1,6 +1,6 @@
 package com.diagbot.mapper;
 
-import com.diagbot.entity.QcHospitalInfo;
+import com.diagbot.entity.BasHospitalInfo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
 /**
@@ -11,6 +11,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @author wangfeng
  * @since 2020-03-17
  */
-public interface QcHospitalInfoMapper extends BaseMapper<QcHospitalInfo> {
+public interface BasHospitalInfoMapper extends BaseMapper<BasHospitalInfo> {
 
 }

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

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.CasesEntryHospital;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 病历条目 Mapper 接口
+ * </p>
+ *
+ * @author wangyu
+ * @since 2020-03-31
+ */
+public interface CasesEntryHospitalMapper extends BaseMapper<CasesEntryHospital> {
+
+}

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

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.entity.DictionaryInfo;
+
+/**
+ * <p>
+ * icss字典表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-25
+ */
+public interface DictionaryInfoMapper extends BaseMapper<DictionaryInfo> {
+
+}

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

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.MedRecordModule;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-29
+ */
+public interface MedRecordModuleMapper extends BaseMapper<MedRecordModule> {
+
+}

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

@@ -1,7 +1,15 @@
 package com.diagbot.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.QcCasesEntryAllDTO;
+import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.entity.QcCasesEntry;
+import com.diagbot.vo.QcCasesEntryAllVO;
+import com.diagbot.vo.QcCasesEntryIndexVO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,4 +21,17 @@ import com.diagbot.entity.QcCasesEntry;
  */
 public interface QcCasesEntryMapper extends BaseMapper<QcCasesEntry> {
 
+    /**
+     * 分页获取病例条目
+     *
+     * @param qcCasesEntryAllVO
+     * @return
+     */
+    IPage<QcCasesEntryAllDTO> getAllQcCasesEntry(QcCasesEntryAllVO qcCasesEntryAllVO);
+
+    IPage<QcCasesEntryAllDTO> getQcCasesEntryIndex(QcCasesEntryIndexVO qcCasesEntryIndexVO);
+
+    List<QcCasesEntryDTO> getByCasesEntryId( @Param("ids") List<Long> ids);
+
+    List<QcCasesEntryDTO> getQcCasesEntryAll();
 }

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

@@ -2,7 +2,9 @@ package com.diagbot.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.diagbot.dto.QcCasesDTO;
+import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.entity.QcCases;
+import com.diagbot.entity.QcCasesEntry;
 
 import java.util.List;
 
@@ -17,4 +19,6 @@ import java.util.List;
 public interface QcCasesMapper extends BaseMapper<QcCases> {
 
     List<QcCasesDTO> getCasesList(Long casesId);
+
+    List<QcCasesEntryDTO> getCasesEntryByHospitalId(Long hospitalId);
 }

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

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.QcMode;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 病历 Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-04-26
+ */
+public interface QcModeMapper extends BaseMapper<QcMode> {
+
+}

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

@@ -0,0 +1,21 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.QcModuleDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 模型明细表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcModuleDetailMapper extends BaseMapper<QcModuleDetail> {
+
+    public void deleteByQuestionIds(Map map);
+
+    public void deleteByModuleIds(Map map);
+}

+ 34 - 0
mrman-service/src/main/java/com/diagbot/mapper/QcModuleInfoMapper.java

@@ -0,0 +1,34 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.ModuleInfoListDTO;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.vo.GetModuleInfoVO;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 模型表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcModuleInfoMapper extends BaseMapper<QcModuleInfo> {
+
+
+    public void deleteByIds(Map map);
+
+    /**
+     * 获取模板列表
+     *
+     * @param getModuleInfoVO
+     * @return
+     */
+    public IPage<ModuleInfoListDTO> getModuleInfoListByType(GetModuleInfoVO getModuleInfoVO);
+
+    public List<QcModuleInfo> getModuleNameByQuestionId(Map map);
+}

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

@@ -0,0 +1,20 @@
+package com.diagbot.mapper;
+
+import com.diagbot.dto.QuesCasesEntryDTO;
+import com.diagbot.entity.QcQuestionEntry;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 标签条目映射表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-07
+ */
+public interface QcQuestionEntryMapper extends BaseMapper<QcQuestionEntry> {
+
+    public List<QuesCasesEntryDTO> getByQuestionId(Long id);
+}

+ 56 - 0
mrman-service/src/main/java/com/diagbot/mapper/QcQuestionInfoMapper.java

@@ -0,0 +1,56 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.QuestionPageDTO;
+import com.diagbot.entity.QcQuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
+import com.diagbot.vo.QuestionPageVO;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签基础表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcQuestionInfoMapper extends BaseMapper<QcQuestionInfo> {
+
+    /**
+     * 获取标签列表
+     *
+     * @param questionPageVO
+     * @return
+     */
+    IPage<QuestionPageDTO> getList(QuestionPageVO questionPageVO);
+
+    /**
+     * 检索
+     *
+     * @param map
+     * @return
+     */
+    public List<QcQuestionInfo> index(Map map);
+
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map);
+
+    /**
+     * 获取关联的父级标签
+     *
+     * @param id
+     * @return
+     */
+    public List<QcQuestionInfo> getParent(Long id);
+
+    /**
+     * 根据id删除标签
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByIds(Map map);
+}

+ 25 - 0
mrman-service/src/main/java/com/diagbot/mapper/QcQuestionMappingMapper.java

@@ -0,0 +1,25 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.QcQuestionMapping;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签映射表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcQuestionMappingMapper extends BaseMapper<QcQuestionMapping> {
+
+    /**
+     * 根据id删除标签
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByIds(Map map);
+}

+ 2 - 2
mrman-service/src/main/java/com/diagbot/service/QcHospitalInfoService.java

@@ -1,6 +1,6 @@
 package com.diagbot.service;
 
-import com.diagbot.entity.QcHospitalInfo;
+import com.diagbot.entity.BasHospitalInfo;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 /**
@@ -11,6 +11,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * @author wangfeng
  * @since 2020-03-17
  */
-public interface QcHospitalInfoService extends IService<QcHospitalInfo> {
+public interface BasHospitalInfoService extends IService<BasHospitalInfo> {
 
 }

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

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.CasesEntryHospital;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 病历条目 服务类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2020-03-31
+ */
+public interface CasesEntryHospitalService extends IService<CasesEntryHospital> {
+
+}

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

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

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

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.MedRecordModule;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-29
+ */
+public interface MedRecordModuleService extends IService<MedRecordModule> {
+
+}

+ 20 - 1
mrman-service/src/main/java/com/diagbot/service/QcCasesEntryService.java

@@ -1,8 +1,14 @@
 package com.diagbot.service;
 
-import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.QcCasesEntryAllDTO;
+import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.entity.QcCasesEntry;
+import com.diagbot.vo.QcCasesEntryAllVO;
+import com.diagbot.vo.QcCasesEntryIndexVO;
+
+import java.util.List;
 
 /**
  * <p>
@@ -15,4 +21,17 @@ import com.diagbot.entity.QcCasesEntry;
 
 public interface QcCasesEntryService extends IService<QcCasesEntry> {
 
+    /**
+     * 分页获取病例条目
+     *
+     * @param qcCasesEntryAllVO
+     * @return
+     */
+    IPage<QcCasesEntryAllDTO> getAllQcCasesEntry(QcCasesEntryAllVO qcCasesEntryAllVO);
+
+    IPage<QcCasesEntryAllDTO> getAllQcCasesEntryIndex(QcCasesEntryIndexVO qcCasesEntryIndexVO);
+
+    List<QcCasesEntryDTO> getByCasesEntryId(List<Long> ids);
+
+    List<QcCasesEntryDTO> getQcCasesEntryAll();
 }

+ 4 - 1
mrman-service/src/main/java/com/diagbot/service/QcCasesService.java

@@ -1,9 +1,10 @@
 package com.diagbot.service;
 
-import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.diagbot.dto.QcCasesDTO;
+import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.entity.QcCases;
+import com.diagbot.entity.QcCasesEntry;
 
 import java.util.List;
 
@@ -19,4 +20,6 @@ import java.util.List;
 public interface QcCasesService extends IService<QcCases> {
 
     public  List<QcCasesDTO>  getCasesLists(Long casesId);
+
+    List<QcCasesEntryDTO> getCasesEntryByHospitalId(Long hospitalId);
 }

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

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.QcMode;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 病历 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-04-26
+ */
+public interface QcModeService extends IService<QcMode> {
+
+}

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

@@ -0,0 +1,34 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.QcModuleDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 模型明细表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcModuleDetailService extends IService<QcModuleDetail> {
+
+    /**
+     * 根据id删除标签
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByQuestionIds(Map map);
+
+
+    /**
+     * 根据id删除标签模板
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByModuleIds(Map map);
+}

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

@@ -0,0 +1,40 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.ModuleInfoListDTO;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.vo.GetModuleInfoVO;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 模型表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcModuleInfoService extends IService<QcModuleInfo> {
+
+    /**
+     * 根据id删除标签模板
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByIds(Map map);
+
+    /**
+     * 获取模板列表
+     *
+     * @param getModuleInfoVO
+     * @return
+     */
+    public IPage<ModuleInfoListDTO> getModuleInfoListByType(GetModuleInfoVO getModuleInfoVO);
+
+
+    public List<QcModuleInfo> getModuleNameByQuestionId(Map map);
+}

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

@@ -0,0 +1,20 @@
+package com.diagbot.service;
+
+import com.diagbot.dto.QuesCasesEntryDTO;
+import com.diagbot.entity.QcQuestionEntry;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 标签条目映射表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-07
+ */
+public interface QcQuestionEntryService extends IService<QcQuestionEntry> {
+
+    public List<QuesCasesEntryDTO> getByQuestionId(Long id);
+}

+ 62 - 0
mrman-service/src/main/java/com/diagbot/service/QcQuestionInfoService.java

@@ -0,0 +1,62 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.QuestionPageDTO;
+import com.diagbot.entity.QcQuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
+import com.diagbot.vo.QuestionPageVO;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签基础表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcQuestionInfoService extends IService<QcQuestionInfo> {
+
+    /**
+     * 获取标签列表
+     *
+     * @param questionPageVO
+     * @return
+     */
+    IPage<QuestionPageDTO> getList(QuestionPageVO questionPageVO);
+
+    /**
+     * 检索
+     *
+     * @param map
+     * @return
+     */
+    public List<QcQuestionInfo> index(Map map);
+
+    /**
+     * 根据questionMapping获取标签信息
+     *
+     * @param map 参数
+     * @return
+     */
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map);
+
+    /**
+     * 获取关联的父级标签
+     *
+     * @param id
+     * @return
+     */
+    public List<QcQuestionInfo> getParentQuestion(Long id);
+
+    /**
+     * 根据id删除标签
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByIds(Map map);
+}

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

@@ -0,0 +1,25 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.QcQuestionMapping;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签映射表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcQuestionMappingService extends IService<QcQuestionMapping> {
+
+    /**
+     * 根据id删除标签
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByIds(Map map);
+}

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

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.BasHospitalInfo;
+import com.diagbot.mapper.BasHospitalInfoMapper;
+import com.diagbot.service.BasHospitalInfoService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 医院信息表 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-03-17
+ */
+@Service
+public class BasHospitalInfoServiceImpl extends ServiceImpl<BasHospitalInfoMapper, BasHospitalInfo> implements BasHospitalInfoService {
+
+}

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

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.CasesEntryHospital;
+import com.diagbot.mapper.CasesEntryHospitalMapper;
+import com.diagbot.service.CasesEntryHospitalService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 病历条目 服务实现类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2020-03-31
+ */
+@Service
+public class CasesEntryHospitalServiceImpl extends ServiceImpl<CasesEntryHospitalMapper, CasesEntryHospital> implements CasesEntryHospitalService {
+
+}

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

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

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

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.MedRecordModule;
+import com.diagbot.mapper.MedRecordModuleMapper;
+import com.diagbot.service.MedRecordModuleService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-29
+ */
+@Service
+public class MedRecordModuleServiceImpl extends ServiceImpl<MedRecordModuleMapper, MedRecordModule> implements MedRecordModuleService {
+
+}

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

@@ -1,11 +1,18 @@
 package com.diagbot.service.impl;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.QcCasesEntryAllDTO;
+import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.mapper.QcCasesEntryMapper;
 import com.diagbot.service.QcCasesEntryService;
+import com.diagbot.vo.QcCasesEntryAllVO;
+import com.diagbot.vo.QcCasesEntryIndexVO;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * <p>
  * 病历条目 服务实现类
@@ -17,4 +24,23 @@ import org.springframework.stereotype.Service;
 @Service
 public class QcCasesEntryServiceImpl extends ServiceImpl<QcCasesEntryMapper, QcCasesEntry> implements QcCasesEntryService {
 
+    @Override
+    public IPage<QcCasesEntryAllDTO> getAllQcCasesEntry(QcCasesEntryAllVO qcCasesEntryAllVO) {
+        return baseMapper.getAllQcCasesEntry(qcCasesEntryAllVO);
+    }
+
+    @Override
+    public IPage<QcCasesEntryAllDTO> getAllQcCasesEntryIndex(QcCasesEntryIndexVO qcCasesEntryIndexVO) {
+        return baseMapper.getQcCasesEntryIndex(qcCasesEntryIndexVO);
+    }
+
+    @Override
+    public List<QcCasesEntryDTO> getByCasesEntryId(List<Long> ids) {
+        return baseMapper.getByCasesEntryId(ids);
+    }
+
+    @Override
+    public List<QcCasesEntryDTO> getQcCasesEntryAll() {
+        return baseMapper.getQcCasesEntryAll();
+    }
 }

+ 7 - 0
mrman-service/src/main/java/com/diagbot/service/impl/QcCasesServiceImpl.java

@@ -2,7 +2,9 @@ package com.diagbot.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.diagbot.dto.QcCasesDTO;
+import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.entity.QcCases;
+import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.mapper.QcCasesMapper;
 import com.diagbot.service.QcCasesService;
 import org.springframework.stereotype.Service;
@@ -24,4 +26,9 @@ public class QcCasesServiceImpl extends ServiceImpl<QcCasesMapper, QcCases> impl
     public List<QcCasesDTO> getCasesLists(Long casesId) {
         return baseMapper.getCasesList(casesId);
     }
+
+    @Override
+    public List<QcCasesEntryDTO> getCasesEntryByHospitalId(Long hospitalId) {
+        return baseMapper.getCasesEntryByHospitalId(hospitalId);
+    }
 }

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

@@ -1,20 +0,0 @@
-package com.diagbot.service.impl;
-
-import com.diagbot.entity.QcHospitalInfo;
-import com.diagbot.mapper.QcHospitalInfoMapper;
-import com.diagbot.service.QcHospitalInfoService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.stereotype.Service;
-
-/**
- * <p>
- * 医院信息表 服务实现类
- * </p>
- *
- * @author wangfeng
- * @since 2020-03-17
- */
-@Service
-public class QcHospitalInfoServiceImpl extends ServiceImpl<QcHospitalInfoMapper, QcHospitalInfo> implements QcHospitalInfoService {
-
-}

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

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.QcMode;
+import com.diagbot.mapper.QcModeMapper;
+import com.diagbot.service.QcModeService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 病历 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2020-04-26
+ */
+@Service
+public class QcModeServiceImpl extends ServiceImpl<QcModeMapper, QcMode> implements QcModeService {
+
+}

+ 31 - 0
mrman-service/src/main/java/com/diagbot/service/impl/QcModuleDetailServiceImpl.java

@@ -0,0 +1,31 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.entity.QcModuleDetail;
+import com.diagbot.mapper.QcModuleDetailMapper;
+import com.diagbot.service.QcModuleDetailService;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 模型明细表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Service
+public class QcModuleDetailServiceImpl extends ServiceImpl<QcModuleDetailMapper, QcModuleDetail> implements QcModuleDetailService {
+
+    @Override
+    public void deleteByQuestionIds(Map map) {
+        baseMapper.deleteByQuestionIds(map);
+    }
+
+    @Override
+    public void deleteByModuleIds(Map map) {
+        baseMapper.deleteByModuleIds(map);
+    }
+}

+ 40 - 0
mrman-service/src/main/java/com/diagbot/service/impl/QcModuleInfoServiceImpl.java

@@ -0,0 +1,40 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.ModuleInfoListDTO;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.mapper.QcModuleInfoMapper;
+import com.diagbot.service.QcModuleInfoService;
+import com.diagbot.vo.GetModuleInfoVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 模型表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Service
+public class QcModuleInfoServiceImpl extends ServiceImpl<QcModuleInfoMapper, QcModuleInfo> implements QcModuleInfoService {
+
+    @Override
+    public void deleteByIds(Map map) {
+        baseMapper.deleteByIds(map);
+    }
+
+    @Override
+    public IPage<ModuleInfoListDTO> getModuleInfoListByType(GetModuleInfoVO getModuleInfoVO) {
+        return baseMapper.getModuleInfoListByType(getModuleInfoVO);
+    }
+
+    @Override
+    public List<QcModuleInfo> getModuleNameByQuestionId(Map map) {
+        return baseMapper.getModuleNameByQuestionId(map);
+    }
+}

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

@@ -0,0 +1,27 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.dto.QuesCasesEntryDTO;
+import com.diagbot.entity.QcQuestionEntry;
+import com.diagbot.mapper.QcQuestionEntryMapper;
+import com.diagbot.service.QcQuestionEntryService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 标签条目映射表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-05-07
+ */
+@Service
+public class QcQuestionEntryServiceImpl extends ServiceImpl<QcQuestionEntryMapper, QcQuestionEntry> implements QcQuestionEntryService {
+
+    @Override
+    public List<QuesCasesEntryDTO> getByQuestionId(Long id) {
+        return baseMapper.getByQuestionId(id);
+    }
+}

+ 51 - 0
mrman-service/src/main/java/com/diagbot/service/impl/QcQuestionInfoServiceImpl.java

@@ -0,0 +1,51 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.QuestionPageDTO;
+import com.diagbot.entity.QcQuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
+import com.diagbot.mapper.QcQuestionInfoMapper;
+import com.diagbot.service.QcQuestionInfoService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.vo.QuestionPageVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签基础表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Service
+public class QcQuestionInfoServiceImpl extends ServiceImpl<QcQuestionInfoMapper, QcQuestionInfo> implements QcQuestionInfoService {
+
+    @Override
+    public IPage<QuestionPageDTO> getList(QuestionPageVO questionPageVO) {
+        return baseMapper.getList(questionPageVO);
+    }
+
+    @Override
+    public List<QcQuestionInfo> index(Map map) {
+        return baseMapper.index(map);
+    }
+
+    @Override
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map) {
+        return baseMapper.getByQuestionMapping(map);
+    }
+
+    @Override
+    public List<QcQuestionInfo> getParentQuestion(Long id) {
+        return baseMapper.getParent(id);
+    }
+
+    @Override
+    public void deleteByIds(Map map) {
+        baseMapper.deleteByIds(map);
+    }
+}

+ 26 - 0
mrman-service/src/main/java/com/diagbot/service/impl/QcQuestionMappingServiceImpl.java

@@ -0,0 +1,26 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.QcQuestionMapping;
+import com.diagbot.mapper.QcQuestionMappingMapper;
+import com.diagbot.service.QcQuestionMappingService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签映射表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Service
+public class QcQuestionMappingServiceImpl extends ServiceImpl<QcQuestionMappingMapper, QcQuestionMapping> implements QcQuestionMappingService {
+
+    @Override
+    public void deleteByIds(Map map) {
+        baseMapper.deleteByIds(map);
+    }
+}

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

@@ -0,0 +1,19 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/24 11:46
+ */
+@Getter
+@Setter
+public class AddModuleDetailVO {
+    //标签id
+    private Long questionId;
+    // 分组id
+    private Integer groupId;
+
+}

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

@@ -0,0 +1,24 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/24 11:35
+ */
+@Getter
+@Setter
+public class AddModuleInfoVO {
+
+    private Long id;//模板id,修改时传,新增不用传
+    private String name;//模板名称
+    private Long hospitalId; //医院ID
+    private Long modeId; //数据模块ID
+    private Long recordModuleId ; //med_record_module的id
+    private List<AddModuleDetailVO> moduleDetail; //标签列表
+    private String remark;
+}

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

@@ -0,0 +1,16 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/1/28 15:55
+ */
+@Getter
+@Setter
+public class DeleteModuleVO {
+    //要删除的id
+    private String ids;
+}

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

@@ -0,0 +1,16 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: ztg
+ * @time: 2019/1/28 15:45
+ */
+@Getter
+@Setter
+public class DeleteQuestionVO {
+    private String ids;
+    private Long hospitalId;
+}

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

@@ -0,0 +1,21 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2020/3/31 11:19
+ */
+@Getter
+@Setter
+public class GetAllByHospitalVO {
+    /**
+     * 医院id
+     */
+    @NotNull(message = "请输入医院id")
+    private Long hospitalId;
+}

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


部分文件因为文件数量过多而无法显示