Bladeren bron

Merge branch 'dev/icss' into debug

gaodm 6 jaren geleden
bovenliggende
commit
f675706d5d
100 gewijzigde bestanden met toevoegingen van 5210 en 56 verwijderingen
  1. 1 8
      admin-service/src/main/java/com/diagbot/AdminServiceApplication.java
  2. 3 0
      config-server/src/main/resources/shared/icss-service-dev.yml
  3. 3 0
      config-server/src/main/resources/shared/icss-service-local.yml
  4. 3 0
      config-server/src/main/resources/shared/icss-service-pro.yml
  5. 3 0
      config-server/src/main/resources/shared/icss-service-test.yml
  6. 20 0
      icss-service/src/main/java/com/diagbot/client/AIServiceClient.java
  7. 53 0
      icss-service/src/main/java/com/diagbot/client/bean/AlgorithmClassify.java
  8. 159 0
      icss-service/src/main/java/com/diagbot/client/bean/Constants.java
  9. 202 0
      icss-service/src/main/java/com/diagbot/client/bean/Feature.java
  10. 34 0
      icss-service/src/main/java/com/diagbot/client/bean/FeatureRate.java
  11. 190 0
      icss-service/src/main/java/com/diagbot/client/bean/Response.java
  12. 77 0
      icss-service/src/main/java/com/diagbot/client/bean/ResponseData.java
  13. 259 0
      icss-service/src/main/java/com/diagbot/client/bean/SearchData.java
  14. 132 0
      icss-service/src/main/java/com/diagbot/client/bean/Status.java
  15. 23 0
      icss-service/src/main/java/com/diagbot/client/hystrix/AIServiceHystrix.java
  16. 11 0
      icss-service/src/main/java/com/diagbot/dto/DeptInfoDTO.java
  17. 11 0
      icss-service/src/main/java/com/diagbot/dto/DoctorInfoDTO.java
  18. 94 0
      icss-service/src/main/java/com/diagbot/dto/GetTopPatientInfoDTO.java
  19. 15 0
      icss-service/src/main/java/com/diagbot/dto/HospitalInfoDTO.java
  20. 32 0
      icss-service/src/main/java/com/diagbot/dto/ModuleDetailDTO.java
  21. 34 0
      icss-service/src/main/java/com/diagbot/dto/ModuleInfoDTO.java
  22. 15 0
      icss-service/src/main/java/com/diagbot/dto/PatientInfoDTO.java
  23. 22 0
      icss-service/src/main/java/com/diagbot/dto/PushDTO.java
  24. 7 5
      icss-service/src/main/java/com/diagbot/dto/QuestionDTO.java
  25. 29 0
      icss-service/src/main/java/com/diagbot/dto/TemplateInfoDTO.java
  26. 11 0
      icss-service/src/main/java/com/diagbot/dto/TranFieldInfoDTO.java
  27. 134 0
      icss-service/src/main/java/com/diagbot/entity/DeptInfo.java
  28. 237 0
      icss-service/src/main/java/com/diagbot/entity/DoctorInfo.java
  29. 198 0
      icss-service/src/main/java/com/diagbot/entity/HospitalDept.java
  30. 198 0
      icss-service/src/main/java/com/diagbot/entity/HospitalInfo.java
  31. 36 12
      icss-service/src/main/java/com/diagbot/entity/IntroduceDetail.java
  32. 88 0
      icss-service/src/main/java/com/diagbot/entity/ModuleDetail.java
  33. 354 0
      icss-service/src/main/java/com/diagbot/entity/PatientInfo.java
  34. 225 0
      icss-service/src/main/java/com/diagbot/entity/PrintRecord.java
  35. 10 5
      icss-service/src/main/java/com/diagbot/entity/QuestionDetail.java
  36. 9 15
      icss-service/src/main/java/com/diagbot/entity/QuestionInfo.java
  37. 7 1
      icss-service/src/main/java/com/diagbot/entity/QuestionMapping.java
  38. 214 0
      icss-service/src/main/java/com/diagbot/entity/TemplateInfo.java
  39. 170 0
      icss-service/src/main/java/com/diagbot/entity/TranFieldInfo.java
  40. 24 0
      icss-service/src/main/java/com/diagbot/entity/wrapper/QuestionInfoWrapper.java
  41. 49 0
      icss-service/src/main/java/com/diagbot/enums/IntroducePositionEnum.java
  42. 54 0
      icss-service/src/main/java/com/diagbot/enums/QuestionTypeEnum.java
  43. 34 0
      icss-service/src/main/java/com/diagbot/facade/DeptInfoFacade.java
  44. 13 0
      icss-service/src/main/java/com/diagbot/facade/DeptVitalFacade.java
  45. 34 0
      icss-service/src/main/java/com/diagbot/facade/DoctorInfoFacade.java
  46. 33 0
      icss-service/src/main/java/com/diagbot/facade/HospitalInfoFacade.java
  47. 43 4
      icss-service/src/main/java/com/diagbot/facade/IntroduceInfoFacade.java
  48. 43 0
      icss-service/src/main/java/com/diagbot/facade/ModuleDetailFacade.java
  49. 67 0
      icss-service/src/main/java/com/diagbot/facade/ModuleFacade.java
  50. 50 0
      icss-service/src/main/java/com/diagbot/facade/PatientInfoFacade.java
  51. 42 0
      icss-service/src/main/java/com/diagbot/facade/PrintRecordFacade.java
  52. 198 0
      icss-service/src/main/java/com/diagbot/facade/PushFacade.java
  53. 28 1
      icss-service/src/main/java/com/diagbot/facade/QuestionFacade.java
  54. 145 0
      icss-service/src/main/java/com/diagbot/facade/TemplateInfoFacade.java
  55. 34 0
      icss-service/src/main/java/com/diagbot/facade/TranFieldInfoFacade.java
  56. 13 0
      icss-service/src/main/java/com/diagbot/facade/VitalOrderFacade.java
  57. 27 0
      icss-service/src/main/java/com/diagbot/mapper/DeptInfoMapper.java
  58. 28 0
      icss-service/src/main/java/com/diagbot/mapper/DoctorInfoMapper.java
  59. 16 0
      icss-service/src/main/java/com/diagbot/mapper/HospitalDeptMapper.java
  60. 27 0
      icss-service/src/main/java/com/diagbot/mapper/HospitalInfoMapper.java
  61. 16 0
      icss-service/src/main/java/com/diagbot/mapper/ModuleDetailMapper.java
  62. 33 0
      icss-service/src/main/java/com/diagbot/mapper/PatientInfoMapper.java
  63. 16 0
      icss-service/src/main/java/com/diagbot/mapper/PrintRecordMapper.java
  64. 2 1
      icss-service/src/main/java/com/diagbot/mapper/QuestionInfoMapper.java
  65. 22 0
      icss-service/src/main/java/com/diagbot/mapper/TemplateInfoMapper.java
  66. 21 0
      icss-service/src/main/java/com/diagbot/mapper/TranFieldInfoMapper.java
  67. 26 0
      icss-service/src/main/java/com/diagbot/service/DeptInfoService.java
  68. 28 0
      icss-service/src/main/java/com/diagbot/service/DoctorInfoService.java
  69. 16 0
      icss-service/src/main/java/com/diagbot/service/HospitalDeptService.java
  70. 26 0
      icss-service/src/main/java/com/diagbot/service/HospitalInfoService.java
  71. 16 0
      icss-service/src/main/java/com/diagbot/service/ModuleDetailService.java
  72. 20 0
      icss-service/src/main/java/com/diagbot/service/PatientInfoService.java
  73. 16 0
      icss-service/src/main/java/com/diagbot/service/PrintRecordService.java
  74. 2 1
      icss-service/src/main/java/com/diagbot/service/QuestionInfoService.java
  75. 25 0
      icss-service/src/main/java/com/diagbot/service/TemplateInfoService.java
  76. 21 0
      icss-service/src/main/java/com/diagbot/service/TranFieldInfoService.java
  77. 27 0
      icss-service/src/main/java/com/diagbot/service/impl/DeptInfoServiceImpl.java
  78. 27 0
      icss-service/src/main/java/com/diagbot/service/impl/DoctorInfoServiceImpl.java
  79. 20 0
      icss-service/src/main/java/com/diagbot/service/impl/HospitalDeptServiceImpl.java
  80. 28 0
      icss-service/src/main/java/com/diagbot/service/impl/HospitalInfoServiceImpl.java
  81. 20 0
      icss-service/src/main/java/com/diagbot/service/impl/ModuleDetailServiceImpl.java
  82. 27 0
      icss-service/src/main/java/com/diagbot/service/impl/PatientInfoServiceImpl.java
  83. 20 0
      icss-service/src/main/java/com/diagbot/service/impl/PrintRecordServiceImpl.java
  84. 3 2
      icss-service/src/main/java/com/diagbot/service/impl/QuestionInfoServiceImpl.java
  85. 34 0
      icss-service/src/main/java/com/diagbot/service/impl/TemplateInfoServiceImpl.java
  86. 28 0
      icss-service/src/main/java/com/diagbot/service/impl/TranFieldInfoServiceImpl.java
  87. 20 0
      icss-service/src/main/java/com/diagbot/vo/DeptInfoVO.java
  88. 22 0
      icss-service/src/main/java/com/diagbot/vo/DoctorInfoVO.java
  89. 44 0
      icss-service/src/main/java/com/diagbot/vo/GetTopPatientInfoVO.java
  90. 27 0
      icss-service/src/main/java/com/diagbot/vo/HospitalInfoVO.java
  91. 2 1
      icss-service/src/main/java/com/diagbot/vo/IntroduceByQuestionVO.java
  92. 16 0
      icss-service/src/main/java/com/diagbot/vo/ModuleVO.java
  93. 20 0
      icss-service/src/main/java/com/diagbot/vo/PatientInfoVO.java
  94. 63 0
      icss-service/src/main/java/com/diagbot/vo/PrintRecordsVO.java
  95. 28 0
      icss-service/src/main/java/com/diagbot/vo/PushVO.java
  96. 17 0
      icss-service/src/main/java/com/diagbot/vo/QuestionIdsVO.java
  97. 39 0
      icss-service/src/main/java/com/diagbot/vo/TemplateInfoRevampVO.java
  98. 28 0
      icss-service/src/main/java/com/diagbot/vo/TemplateInfoVO.java
  99. 19 0
      icss-service/src/main/java/com/diagbot/vo/TemplateInfosIdVO.java
  100. 0 0
      icss-service/src/main/java/com/diagbot/vo/TemplateInfosVO.java

+ 1 - 8
admin-service/src/main/java/com/diagbot/AdminServiceApplication.java

@@ -4,12 +4,7 @@ package com.diagbot;
 import de.codecentric.boot.admin.server.config.AdminServerProperties;
 import de.codecentric.boot.admin.server.config.EnableAdminServer;
 import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
-import org.springframework.boot.autoconfigure.jmx.JmxAutoConfiguration;
-import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
-import org.springframework.boot.autoconfigure.thymeleaf.ThymeleafAutoConfiguration;
 import org.springframework.cloud.context.config.annotation.RefreshScope;
 import org.springframework.cloud.netflix.hystrix.EnableHystrix;
 import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard;
@@ -25,14 +20,12 @@ import org.springframework.security.web.authentication.SavedRequestAwareAuthenti
  * @author: gaodm
  * @time: 2018/8/7 10:48
  */
-@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class,
-        JmxAutoConfiguration.class, ThymeleafAutoConfiguration.class })
+@SpringBootApplication
 @EnableTurbine
 @EnableHystrixDashboard
 @EnableHystrix
 @EnableAdminServer
 @Configuration
-@EnableAutoConfiguration
 @RefreshScope
 public class AdminServiceApplication {
 

+ 3 - 0
config-server/src/main/resources/shared/icss-service-dev.yml

@@ -92,3 +92,6 @@ mybatis-plus:
     map-underscore-to-camel-case: true
     cache-enabled: false
 
+ai:
+  server:
+    address: http://192.168.2.234:8080

+ 3 - 0
config-server/src/main/resources/shared/icss-service-local.yml

@@ -92,3 +92,6 @@ mybatis-plus:
     map-underscore-to-camel-case: true
     cache-enabled: false
 
+ai:
+  server:
+    address: http://192.168.2.234:8080

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

@@ -92,3 +92,6 @@ mybatis-plus:
     map-underscore-to-camel-case: true
     cache-enabled: false
 
+ai:
+  server:
+    address: http://192.168.2.234:8080

+ 3 - 0
config-server/src/main/resources/shared/icss-service-test.yml

@@ -92,3 +92,6 @@ mybatis-plus:
     map-underscore-to-camel-case: true
     cache-enabled: false
 
+ai:
+  server:
+    address: http://192.168.2.234:8080

+ 20 - 0
icss-service/src/main/java/com/diagbot/client/AIServiceClient.java

@@ -0,0 +1,20 @@
+package com.diagbot.client;
+
+import com.diagbot.client.bean.Response;
+import com.diagbot.client.bean.ResponseData;
+import com.diagbot.client.bean.SearchData;
+import com.diagbot.client.hystrix.AIServiceHystrix;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2018/11/20 13:15
+ */
+@FeignClient(name = "AI", url = "${ai.server.address}", fallback = AIServiceHystrix.class)
+public interface AIServiceClient {
+    @PostMapping(value = "/web/doc/algorithm/neural")
+    Response<ResponseData> bayesPageData(@RequestBody SearchData searchData);
+}

+ 53 - 0
icss-service/src/main/java/com/diagbot/client/bean/AlgorithmClassify.java

@@ -0,0 +1,53 @@
+package com.diagbot.client.bean;
+
+/**
+ * @Auther: fyeman
+ * @Date: 2018/7/19/019 10:37
+ * @Description:
+ */
+public enum AlgorithmClassify {
+    NEURAL("0"), BAYES("1"), EMERGENCY_NEURAL("2"), OUTPATIENT_NEURAL("3"),
+    NEURAL_SYMPTOM("11"),
+    NEURAL_DIAG("21"),
+    NEURAL_VITAL("31"),
+    NEURAL_LIS("41"),
+    NEURAL_PACS("51"),
+    NEURAL_DIAG_SYMPTOM("111"),
+    NEURAL_DIAG_VITAL("131"),
+    NEURAL_DIAG_LIS("141"),
+    NEURAL_DIAG_PACS("151");
+
+    private String value;
+
+    AlgorithmClassify(String value) {
+        this.value = value;
+    }
+
+    public String toString() {
+        return value;
+    }
+
+    public static AlgorithmClassify parse(String value) {
+        switch (value) {
+            case "11":
+                return AlgorithmClassify.NEURAL_SYMPTOM;
+            case "21":
+                return AlgorithmClassify.NEURAL_DIAG;
+            case "31":
+                return AlgorithmClassify.NEURAL_VITAL;
+            case "41":
+                return AlgorithmClassify.NEURAL_LIS;
+            case "51":
+                return AlgorithmClassify.NEURAL_PACS;
+            case "111":
+                return AlgorithmClassify.NEURAL_DIAG_SYMPTOM;
+            case "131":
+                return AlgorithmClassify.NEURAL_DIAG_VITAL;
+            case "141":
+                return AlgorithmClassify.NEURAL_DIAG_LIS;
+            case "151":
+                return AlgorithmClassify.NEURAL_DIAG_PACS;
+        }
+        return AlgorithmClassify.NEURAL_DIAG;
+    }
+}

+ 159 - 0
icss-service/src/main/java/com/diagbot/client/bean/Constants.java

@@ -0,0 +1,159 @@
+/**
+ * @Company: 杭州朗通信息技术有限公司
+ * @Department: 系统软件部
+ * @Description: 朗通智能辅助诊疗系统
+ * @Address: 浙江省杭州市西湖区西斗门路3号 天堂软件园D-7B
+ */
+package com.diagbot.client.bean;
+
+/**
+ * @Title: Constants.java
+ * @Package org.diagbot.public
+ * @Description: 通用常数接口定义
+ * @author 楼辉荣(Fyeman)
+ * @date 2015年4月23日 下午11:25:37
+ * @version V1.0
+ */
+public interface Constants {
+    /**
+     * 操作名称
+     */
+    String OP_NAME = "op";
+    /**
+     * 消息key
+     */
+    String MESSAGE = "message";
+    /**
+     * 错误key
+     */
+    String ERROR = "error";
+    /**
+     * 上个页面地址
+     */
+    String BACK_URL = "BackURL";
+    String IGNORE_BACK_URL = "ignoreBackURL";
+    /**
+     * 当前请求的地址 带参数
+     */
+    String CURRENT_URL = "currentURL";
+    /**
+     * 当前请求的地址 不带参数
+     */
+    String NO_QUERYSTRING_CURRENT_URL = "noQueryStringCurrentURL";
+    /**
+     * 上下文
+     */
+    String CONTEXT_PATH = "ctx";
+    /**
+     * 当前登录的用户
+     */
+    String CURRENT_APPLICATION = "c_app";
+    String CURRENT_USER = "c_user";
+    String CURRENT_USERNAME = "username";
+    String USER_MENUS = "menus";
+
+    /**
+     * 管理控制台应用ID=0
+     */
+    long ADMIN_APPLICATION = 0;
+    /**
+     * 一级菜单grade标识
+     */
+    int FIRST_MENU = 1;
+    /**
+     * 二级菜单grade标识
+     */
+    int SECOND_MENU = 2;
+    /**
+     * 操作按钮等级标识
+     */
+    int MENU_GRADE = 3;
+    /**
+     * 最高级资源grade标识
+     */
+    int TOP_REC = 0;
+    /**
+     * 编码方式
+     */
+    String ENCODING = "UTF-8";
+    /**
+     * 系统用户状态--启用
+     */
+    int USER_STATUS_UNLOCK = 1;
+    /**
+     * 系统用户状态--禁用
+     */
+    int USER_STATUS_LOCK = 0;
+    /**
+     * 通用值0
+     */
+    int COMMON_INT_0 = 0;
+    /**
+     * 通用值1
+     */
+    int COMMON_INT_1 = 1;
+    /**
+     * 通用值-1
+     */
+    int COMMON_INT_NEG_1 = -1;
+    /**
+     * 通用值0
+     */
+    long COMMON_LONG_0 = 0L;
+    /**
+     * 通用值1
+     */
+    long COMMON_LONG_1 = 1L;
+    /**
+     * 通用值-1
+     */
+    long COMMON_LONG_NEG_1 = -1L;
+    /**
+     * 通用值"0"
+     */
+    String COMMON_STRING_0 = "0";
+    /**
+     * 通用值"1"
+     */
+    String COMMON_STRING_1 = "1";
+    /**
+     * 通用值"-1"
+     */
+    String COMMON_STRING_NEG_1 = "-1";
+
+    /**
+     * 通用值"-1"
+     */
+    String COMMON_STRING_99 = "99";
+    /**
+     * 登录页面
+     */
+    String LOGIN_URL = "/login";
+    /**
+     * 上传文件夹
+     */
+    String UPLOAD_FOLDER_NAME = "upload";
+    /**
+     * 临时文件夹
+     */
+    String TEMP_FOLDER_NAME = "temp";
+    /**
+     * 地域标示
+     */
+    public static final String DEFAULT_LOCALE = "zh_CN";
+    /**
+     * 缺省字符集
+     */
+    public static final String DEFAULT_ENCODE = "UTF-8";
+    /**
+     * 以下为接口返回公共属性定义常量
+     */
+    public static final String MSG_SUCCESS = "操作成功";    //操作成功
+    public static final String MSG_FALURE = "操作失败";    //操作失败
+
+    public static final long INVALIDATE_VALUE = -1;        //起止时间定义
+    public static final int RET_SUCCESS = 0;            //成功
+    public static final int RET_FAIL = 1;                //失败
+    public static final int RET_ERROR_PARAM = -1;        //参数校验失败
+    public static final int RET_NO_TOKEN = -2;    //用户token丢失
+}

+ 202 - 0
icss-service/src/main/java/com/diagbot/client/bean/Feature.java

@@ -0,0 +1,202 @@
+package com.diagbot.client.bean;
+
+import java.io.Serializable;
+
+/**
+ * @Title: Feature.java
+ * @Package: com.zjlantone.nlp.web.doc.dao.model
+ * @Description: 数据库操作接口类
+ * @author: 楼辉荣
+ * @date: 2016年8月8日 下午17:16:23
+ * @version: V1.0
+ */
+
+@SuppressWarnings("serial")
+public class Feature implements Serializable {
+    /****/
+    private Long id;
+    /****/
+    private String rdn = "";
+    /****/
+    private String sex;
+    /****/
+    private int age;
+
+    private String partbody = "";
+
+    /****/
+    private String featureName = "";
+
+    /****/
+    private String featureType = "";
+
+    //是否推送
+    private String isPush = "0";
+
+    /**
+     * 特征顺序号
+     **/
+    private int sn;
+
+    /****/
+    private String negative = "";
+
+    private float duration;
+
+    private String property;
+
+    /****/
+    private Float threshold;
+
+    /****/
+    private String tfIdf;
+
+    /**
+     * 区分住院门诊
+     **/
+    private String resourceType;
+
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getId() {
+        return this.id;
+    }
+
+    public void setRdn(String rdn) {
+        this.rdn = rdn;
+    }
+
+    public String getRdn() {
+        return this.rdn;
+    }
+
+    public void setSex(String sex) {
+        this.sex = sex;
+    }
+
+    public String getSex() {
+        return this.sex;
+    }
+
+    public void setAge(int age) {
+        this.age = age;
+    }
+
+    public int getAge() {
+        return this.age;
+    }
+
+    public void setFeatureName(String featureName) {
+        this.featureName = featureName;
+    }
+
+    public String getFeatureName() {
+        return this.featureName;
+    }
+
+    public void setFeatureType(String featureType) {
+        this.featureType = featureType;
+    }
+
+    public String getFeatureType() {
+        return this.featureType;
+    }
+
+    public String getIsPush() {
+        return isPush;
+    }
+
+    public void setIsPush(String isPush) {
+        this.isPush = isPush;
+    }
+
+    public int getSn() {
+        return sn;
+    }
+
+    public void setSn(int sn) {
+        this.sn = sn;
+    }
+
+    public void setNegative(String negative) {
+        this.negative = negative;
+    }
+
+    public String getNegative() {
+        return this.negative;
+    }
+
+    public String getPartbody() {
+        return partbody;
+    }
+
+    public void setPartbody(String partbody) {
+        this.partbody = partbody;
+    }
+
+    public float getDuration() {
+        return duration;
+    }
+
+    public void setDuration(float duration) {
+        this.duration = duration;
+    }
+
+    public String getProperty() {
+        return property;
+    }
+
+    public void setProperty(String property) {
+        this.property = property;
+    }
+
+    public void setThreshold(Float threshold) {
+        this.threshold = threshold;
+    }
+
+    public Float getThreshold() {
+        return this.threshold;
+    }
+
+    public void setTfIdf(String tfIdf) {
+        this.tfIdf = tfIdf;
+    }
+
+    public String getTfIdf() {
+        return this.tfIdf;
+    }
+
+    public String getResourceType() {
+        return resourceType;
+    }
+
+    public void setResourceType(String resourceType) {
+        this.resourceType = resourceType;
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        Feature feature = (Feature) o;
+        if (id != feature.id) {
+            return false;
+        }
+        return rdn.equals(feature.rdn) && partbody.equals(feature.partbody) && featureName.equals(feature.featureName)
+                && featureType.equals(feature.featureType) && negative.equals(feature.negative);
+    }
+
+    @Override
+    public int hashCode() {
+        int result = id.hashCode();
+        result = 31 * result + rdn.hashCode() + partbody.hashCode() + featureName.hashCode() + featureType.hashCode() + negative.hashCode();
+        return result;
+    }
+}

+ 34 - 0
icss-service/src/main/java/com/diagbot/client/bean/FeatureRate.java

@@ -0,0 +1,34 @@
+package com.diagbot.client.bean;
+
+/**
+ * Created by fyeman on 2018/1/17.
+ */
+public class FeatureRate {
+    private String featureName;
+    private String extraProperty;
+    private String rate;
+
+    public String getFeatureName() {
+        return featureName;
+    }
+
+    public void setFeatureName(String featureName) {
+        this.featureName = featureName;
+    }
+
+    public String getRate() {
+        return rate;
+    }
+
+    public void setRate(String rate) {
+        this.rate = rate;
+    }
+
+    public String getExtraProperty() {
+        return extraProperty;
+    }
+
+    public void setExtraProperty(String extraProperty) {
+        this.extraProperty = extraProperty;
+    }
+}

+ 190 - 0
icss-service/src/main/java/com/diagbot/client/bean/Response.java

@@ -0,0 +1,190 @@
+package com.diagbot.client.bean;
+
+/**
+ * ClassName: org.diagbot.pub.api.Response
+ * Function: API接口提供标准返回数据包, 数据包格式如下:
+ * {
+ * status:"OK",
+ * startTime:8206448610408,
+ * endTime:8206448610418,
+ * version:"1.0",
+ * msg:"操作成功",
+ * ret:"0",
+ * timeConsum:10,
+ * data:{
+ * ..。
+ * }
+ * }
+ * date: 2015年7月6日 下午1:36:58
+ *
+ * @author 楼辉荣(Fyeman)
+ * @version 1.0
+ * @since JDK 1.7
+ */
+public class Response<T> implements java.io.Serializable {
+    private static final long serialVersionUID = 8206448610408409499L;
+    private Status status = Status.PENDING;  //状态
+    private long startTime = Constants.INVALIDATE_VALUE;                                  //起始时间
+    private long endTime = Constants.INVALIDATE_VALUE;                                    //结束时间
+    private String version = "1.0";
+    private String msg = Constants.MSG_SUCCESS;                                  //消息
+    private T data = null;                                                                //序列化后的结果数据
+    // 返回结果标志,默认成功0,失败 1 参数错误 -1 token丢失-2
+    private int ret = Constants.RET_SUCCESS;
+
+    private String token;
+    //耗时
+    private long timeConsum;
+
+    public int getRet() {
+        return ret;
+    }
+
+    public void setRet(int ret) {
+        this.ret = ret;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+
+    public long getTimeConsum() {
+        return timeConsum;
+    }
+
+    public void setTimeConsum(long timeConsum) {
+        this.timeConsum = timeConsum;
+    }
+
+    public Response() {
+        super();
+    }
+
+    public Status getStatus() {
+        return status;
+    }
+
+    /**
+     * 在调用end()方法时,会自动设置状态,因此,如果调用了end()方法,就不要调用这个方法
+     *
+     * @param status
+     */
+    public Response<T> setStatus(Status status) {
+        this.status = status;
+        return this;
+    }
+
+
+    public String getVersion() {
+        return version;
+    }
+
+    public void setVersion(String version) {
+        this.version = version;
+    }
+
+    public long getStartTime() {
+        return startTime;
+    }
+
+    public Response<T> setStartTime(long startTime) {
+        this.startTime = startTime;
+        return this;
+    }
+
+    public long getEndTime() {
+        return endTime;
+    }
+
+    public Response<T> setEndTime(long endTime) {
+        this.endTime = endTime;
+        return this;
+    }
+
+    public T getData() {
+        return data;
+    }
+
+    public void setData(T data) {
+        this.data = data;
+    }
+
+    public String getToken() {
+        return token;
+    }
+
+    public void setToken(String token) {
+        this.token = token;
+    }
+
+    /**
+     * 设置状态和起始时间,表示操作正在进行
+     */
+    public Response<T> start() {
+        this.setStatus(Status.RUNNING);
+        this.setStartTime(System.currentTimeMillis());
+        return this;
+    }
+
+    /**
+     * 设置状态和时间,表示操作结束,没有失败
+     */
+    public Response<T> end() {
+        this.setEndTime(System.currentTimeMillis());
+        this.setTimeConsum(this.endTime - this.startTime);
+        this.setStatus(Status.OK);
+        return this;
+    }
+
+    /**
+     * 设置状态和时间,表示操作结束,并且失败
+     */
+    public Response<T> endAndFailed() {
+        this.setStatus(Status.FAIL);
+        this.setEndTime(System.currentTimeMillis());
+        return this;
+    }
+
+    /**
+     * 非参数错误通用失败信息
+     */
+    public Response<T> failure(String msg) {
+        this.msg = msg;
+        this.ret = Constants.RET_FAIL;
+        this.end();
+        return this;
+    }
+
+    /**
+     * 参数错误信息
+     */
+    public Response<T> paramFailure(String msg) {
+        this.msg = msg;
+        this.ret = Constants.RET_ERROR_PARAM;
+        this.end();
+        return this;
+    }
+
+    /**
+     * 用户信息丢失
+     */
+    public Response<T> tokenFailure(String msg) {
+        this.msg = msg;
+        this.ret = Constants.RET_NO_TOKEN;
+        this.end();
+        return this;
+    }
+
+    /**
+     * 通用成功
+     */
+    public Response<T> success() {
+        this.end();
+        return this;
+    }
+
+}

+ 77 - 0
icss-service/src/main/java/com/diagbot/client/bean/ResponseData.java

@@ -0,0 +1,77 @@
+package com.diagbot.client.bean;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Created by fyeman on 2018/2/2.
+ */
+public class ResponseData {
+    private String participleSymptom = "";
+
+    private List<FeatureRate> symptom = new ArrayList<>(10);
+    private List<FeatureRate> vitals = new ArrayList<>(10);
+    private List<FeatureRate> dis = new ArrayList<>(10);
+    private List<FeatureRate> labs = new ArrayList<>(10);
+    private List<FeatureRate> pacs = new ArrayList<>(10);
+
+    private Map<String, Map<String, String>> inputs = new HashMap<>(10, 0.5f);
+
+    public String getParticipleSymptom() {
+        return participleSymptom;
+    }
+
+    public void setParticipleSymptom(String participleSymptom) {
+        this.participleSymptom = participleSymptom;
+    }
+
+    public List<FeatureRate> getSymptom() {
+        return symptom;
+    }
+
+    public void setSymptom(List<FeatureRate> symptom) {
+        this.symptom = symptom;
+    }
+
+    public List<FeatureRate> getVitals() {
+        return vitals;
+    }
+
+    public void setVitals(List<FeatureRate> vitals) {
+        this.vitals = vitals;
+    }
+
+    public List<FeatureRate> getDis() {
+        return dis;
+    }
+
+    public void setDis(List<FeatureRate> dis) {
+        this.dis = dis;
+    }
+
+    public List<FeatureRate> getLabs() {
+        return labs;
+    }
+
+    public void setLabs(List<FeatureRate> labs) {
+        this.labs = labs;
+    }
+
+    public List<FeatureRate> getPacs() {
+        return pacs;
+    }
+
+    public void setPacs(List<FeatureRate> pacs) {
+        this.pacs = pacs;
+    }
+
+    public Map<String, Map<String, String>> getInputs() {
+        return inputs;
+    }
+
+    public void setInputs(Map<String, Map<String, String>> inputs) {
+        this.inputs = inputs;
+    }
+}

+ 259 - 0
icss-service/src/main/java/com/diagbot/client/bean/SearchData.java

@@ -0,0 +1,259 @@
+package com.diagbot.client.bean;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Created by fyeman on 2018/1/31.
+ */
+public class SearchData {
+    private int length = 10;
+    private int age_start = 0;
+    private int age_end = 200;
+    private int age = 0;
+    private String sex;
+    // 搜索结果的贝叶斯阈值
+    private String threshold = "0";
+
+    private String symptom = "";
+    private String vital = "";
+    private String lis = "";
+    private String pacs = "";
+    private String diag = "";
+    private String past = "";
+    private String other = "";
+
+    //特征类别
+    private String featureType;
+    //特征类别对","进行分割后数据
+    private String[] featureTypes;
+    //门诊 住院分类
+    private String resourceType;
+    //模型
+    private AlgorithmClassify algorithmClassify[];
+    //模型
+    private String algorithmClassifyValue;
+    //外部系统编码 用于返回映射数据,如果sysCode为空或null,则返回kl_standard_info标准名称
+    private String sysCode;
+
+    private Map<String, Map<String, String>> inputs = new HashMap<>(10, 0.8f);
+
+
+    private List<Feature> symptomFeatureList = new ArrayList<>();
+    private List<Feature> vitalFeatureList = new ArrayList<>();
+    private List<Feature> lisFeatureList = new ArrayList<>();
+    private List<Feature> pacsFeatureList = new ArrayList<>();
+    private List<Feature> diagFeatureList = new ArrayList<>();
+    private List<Feature> symptompropertyFeatureList = new ArrayList<>();
+
+    public int getLength() {
+        return length;
+    }
+
+    public void setLength(int length) {
+        this.length = length;
+    }
+
+    public int getAge_start() {
+        return age_start;
+    }
+
+    public void setAge_start(int age_start) {
+        this.age_start = age_start;
+    }
+
+    public int getAge_end() {
+        return age_end;
+    }
+
+    public void setAge_end(int age_end) {
+        this.age_end = age_end;
+    }
+
+    public int getAge() {
+        return age;
+    }
+
+    public void setAge(int age) {
+        this.age = age;
+    }
+
+    public String getSex() {
+        return sex;
+    }
+
+    public void setSex(String sex) {
+        this.sex = sex;
+    }
+
+    public String getSymptom() {
+        return symptom;
+    }
+
+    public void setSymptom(String symptom) {
+        this.symptom = symptom;
+    }
+
+    public String getVital() {
+        return vital;
+    }
+
+    public void setVital(String vital) {
+        this.vital = vital;
+    }
+
+    public String getLis() {
+        return lis;
+    }
+
+    public void setLis(String lis) {
+        this.lis = lis;
+    }
+
+    public String getPacs() {
+        return pacs;
+    }
+
+    public void setPacs(String pacs) {
+        this.pacs = pacs;
+    }
+
+    public String getDiag() {
+        return diag;
+    }
+
+    public void setDiag(String diag) {
+        this.diag = diag;
+    }
+
+    public String getPast() {
+        return past;
+    }
+
+    public void setPast(String past) {
+        this.past = past;
+    }
+
+    public String getOther() {
+        return other;
+    }
+
+    public void setOther(String other) {
+        this.other = other;
+    }
+
+    public String getFeatureType() {
+        return featureType;
+    }
+
+    public void setFeatureType(String featureType) {
+        this.featureType = featureType;
+    }
+
+    public String[] getFeatureTypes() {
+        return featureTypes;
+    }
+
+    public void setFeatureTypes(String[] featureTypes) {
+        this.featureTypes = featureTypes;
+    }
+
+    public String getResourceType() {
+        return resourceType;
+    }
+
+    public void setResourceType(String resourceType) {
+        this.resourceType = resourceType;
+    }
+
+    public String getSysCode() {
+        return sysCode;
+    }
+
+    public void setSysCode(String sysCode) {
+        this.sysCode = sysCode;
+    }
+
+    public void setThreshold(String threshold) {
+        this.threshold = threshold;
+    }
+
+    public float getThreshold() {
+        return Float.parseFloat(threshold);
+    }
+
+    public List<Feature> getSymptomFeatureList() {
+        return symptomFeatureList;
+    }
+
+    public void setSymptomFeatureList(List<Feature> symptomFeatureList) {
+        this.symptomFeatureList = symptomFeatureList;
+    }
+
+    public List<Feature> getVitalFeatureList() {
+        return vitalFeatureList;
+    }
+
+    public void setVitalFeatureList(List<Feature> vitalFeatureList) {
+        this.vitalFeatureList = vitalFeatureList;
+    }
+
+    public List<Feature> getLisFeatureList() {
+        return lisFeatureList;
+    }
+
+    public void setLisFeatureList(List<Feature> lisFeatureList) {
+        this.lisFeatureList = lisFeatureList;
+    }
+
+    public List<Feature> getPacsFeatureList() {
+        return pacsFeatureList;
+    }
+
+    public void setPacsFeatureList(List<Feature> pacsFeatureList) {
+        this.pacsFeatureList = pacsFeatureList;
+    }
+
+
+    public List<Feature> getSymptompropertyFeatureList() {
+        return symptompropertyFeatureList;
+    }
+
+    public void setSymptompropertyFeatureList(List<Feature> symptompropertyFeatureList) {
+        this.symptompropertyFeatureList = symptompropertyFeatureList;
+    }
+
+    public List<Feature> getDiagFeatureList() {
+        return diagFeatureList;
+    }
+
+    public void setDiagFeatureList(List<Feature> diagFeatureList) {
+        this.diagFeatureList = diagFeatureList;
+    }
+
+    public Map<String, Map<String, String>> getInputs() {
+        return inputs;
+    }
+
+    public void setInputs(Map<String, Map<String, String>> inputs) {
+        this.inputs = inputs;
+    }
+
+    public AlgorithmClassify[] getAlgorithmClassify() {
+        return algorithmClassify;
+    }
+
+    public void setAlgorithmClassify(AlgorithmClassify[] algorithmClassify) {
+        this.algorithmClassify = algorithmClassify;
+    }
+
+    public String getAlgorithmClassifyValue() {
+        return algorithmClassifyValue;
+    }
+
+    public void setAlgorithmClassifyValue(String algorithmClassifyValue) {
+        this.algorithmClassifyValue = algorithmClassifyValue;
+    }
+}

+ 132 - 0
icss-service/src/main/java/com/diagbot/client/bean/Status.java

@@ -0,0 +1,132 @@
+package com.diagbot.client.bean;
+
+public enum Status {
+    /**
+     * <code>PENDING = 1;</code>
+     *
+     * <pre>
+     * 操作尚未开始
+     * </pre>
+     */
+    PENDING(1),
+    /**
+     * <code>RUNNING = 2;</code>
+     *
+     * <pre>
+     * 操作开始
+     * </pre>
+     */
+    RUNNING(2),
+    /**
+     * <code>OK = 3;</code>
+     *
+     * <pre>
+     * 操作正常结束
+     * </pre>
+     */
+    OK(3),
+    /**
+     * <code>WARN = 4;</code>
+     *
+     * <pre>
+     * 有警告,但是正常结束
+     * </pre>
+     */
+    WARN(4),
+    /**
+     * <code>ERROR = 5;</code>
+     *
+     * <pre>
+     * 有错误,但是完整结束
+     * </pre>
+     */
+    ERROR(5),
+    /**
+     * <code>FAIL = 6;</code>
+     *
+     * <pre>
+     * 操作失败
+     * </pre>
+     */
+    FAIL(6),
+    ;
+
+    /**
+     * <code>PENDING = 1;</code>
+     *
+     * <pre>
+     * 操作尚未开始
+     * </pre>
+     */
+    public static final int PENDING_VALUE = 1;
+    /**
+     * <code>RUNNING = 2;</code>
+     *
+     * <pre>
+     * 操作开始
+     * </pre>
+     */
+    public static final int RUNNING_VALUE = 2;
+    /**
+     * <code>OK = 3;</code>
+     *
+     * <pre>
+     * 操作正常结束
+     * </pre>
+     */
+    public static final int OK_VALUE = 3;
+    /**
+     * <code>WARN = 4;</code>
+     *
+     * <pre>
+     * 有警告,但是正常结束
+     * </pre>
+     */
+    public static final int WARN_VALUE = 4;
+    /**
+     * <code>ERROR = 5;</code>
+     *
+     * <pre>
+     * 有错误,但是完整结束
+     * </pre>
+     */
+    public static final int ERROR_VALUE = 5;
+    /**
+     * <code>FAIL = 6;</code>
+     *
+     * <pre>
+     * 操作失败
+     * </pre>
+     */
+    public static final int FAIL_VALUE = 6;
+
+    public final int getNumber() {
+        return value;
+    }
+
+    public static Status valueOf(int value) {
+        switch (value) {
+            case 1:
+                return PENDING;
+            case 2:
+                return RUNNING;
+            case 3:
+                return OK;
+            case 4:
+                return WARN;
+            case 5:
+                return ERROR;
+            case 6:
+                return FAIL;
+            default:
+                return null;
+        }
+    }
+
+    private final int value;
+
+    private Status(int value) {
+        this.value = value;
+    }
+
+}

+ 23 - 0
icss-service/src/main/java/com/diagbot/client/hystrix/AIServiceHystrix.java

@@ -0,0 +1,23 @@
+package com.diagbot.client.hystrix;
+
+import com.diagbot.client.AIServiceClient;
+import com.diagbot.client.bean.Response;
+import com.diagbot.client.bean.ResponseData;
+import com.diagbot.client.bean.SearchData;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2018/11/20 13:15
+ */
+@Component
+@Slf4j
+public class AIServiceHystrix implements AIServiceClient {
+    @Override
+    public Response<ResponseData> bayesPageData(SearchData searchData) {
+        log.error("【hystrix】调用{}异常", "bayesPageData");
+        return null;
+    }
+}

+ 11 - 0
icss-service/src/main/java/com/diagbot/dto/DeptInfoDTO.java

@@ -0,0 +1,11 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.DeptInfo;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/19 18:56
+ */
+public class DeptInfoDTO extends DeptInfo {
+}

+ 11 - 0
icss-service/src/main/java/com/diagbot/dto/DoctorInfoDTO.java

@@ -0,0 +1,11 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.DoctorInfo;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/19 19:38
+ */
+public class DoctorInfoDTO extends DoctorInfo {
+}

+ 94 - 0
icss-service/src/main/java/com/diagbot/dto/GetTopPatientInfoDTO.java

@@ -0,0 +1,94 @@
+/**
+ * 
+ */
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description
+ * @author rgb
+ * @time 2018年11月19日下午4:57:43
+ */
+@Getter
+@Setter
+public class GetTopPatientInfoDTO {
+	
+	/**
+	 * 医院id
+	 */
+	private Long hospitalId;
+	
+	/**
+     * 医院编码
+     */
+    private String hospitalCode;
+
+    /**
+     * 医院名称
+     */
+    private String hospitalName;
+    
+    /**
+	 * 医院科室id
+	 */
+	private Long hospitalDeptId;
+    
+    
+    /**
+     * 医院科室编码
+     */
+    private String hospitalDeptCode;
+
+    /**
+     * 医院科室名称
+     */
+    private String hospitalDeptName;
+    
+    /**
+	 * 医生id
+	 */
+	private Long doctorId;
+	
+	/**
+     * 医生编码
+     */
+    private String doctorCode;
+
+    /**
+     * 医生姓名
+     */
+    private String doctorName;
+    
+    /**
+   	 * 病人id
+   	 */
+   	private Long patientId;
+   	
+   	/**
+     * 病人编号
+     */
+    private String patientCode;
+
+    /**
+     * 病人姓名
+     */
+    private String patientName;
+
+    /**
+     * 病人性别
+     */
+    private String patientSex;
+    
+    /**
+     * 病人年龄
+     */
+    private Integer patientAge;
+    
+    /**
+     * 病人证件号码
+     */
+    private String patientIdNo;
+
+}

+ 15 - 0
icss-service/src/main/java/com/diagbot/dto/HospitalInfoDTO.java

@@ -0,0 +1,15 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.HospitalInfo;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/22 13:42
+ */
+@Getter
+@Setter
+public class HospitalInfoDTO extends HospitalInfo {
+}

+ 32 - 0
icss-service/src/main/java/com/diagbot/dto/ModuleDetailDTO.java

@@ -0,0 +1,32 @@
+package com.diagbot.dto;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 模型明细表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-11-15
+ */
+@Getter
+@Setter
+@TableName("icss_module_detail")
+public class ModuleDetailDTO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private Long id; //主键
+    private Long moduleId; //模型id
+    private Long questionId; //标签id
+    private String labelPrefix; //前置内容
+    private String labelSuffix; //后置内容
+    private Integer orderNo;    //排序号
+    private String remark;
+
+}

+ 34 - 0
icss-service/src/main/java/com/diagbot/dto/ModuleInfoDTO.java

@@ -0,0 +1,34 @@
+package com.diagbot.dto;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 模型表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-11-15
+ */
+@Getter
+@Setter
+@TableName("icss_module_info")
+public class ModuleInfoDTO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private Long id; //主键
+    private String name;//名称
+    private List<ModuleDetailDTO> moduleDetailDTOList = new ArrayList<>(); //模板明细表
+    private Map<Long, Object> questionList = new HashMap<>(); //关联标签
+    private String remark;
+
+}

+ 15 - 0
icss-service/src/main/java/com/diagbot/dto/PatientInfoDTO.java

@@ -0,0 +1,15 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.PatientInfo;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/19 13:05
+ */
+@Getter
+@Setter
+public class PatientInfoDTO extends PatientInfo {
+}

+ 22 - 0
icss-service/src/main/java/com/diagbot/dto/PushDTO.java

@@ -0,0 +1,22 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2018/11/20 13:44
+ */
+@Getter
+@Setter
+public class PushDTO {
+    private Map<String, Object> symptomMap;
+    private Map<String, Object> vitalMap;
+    private Map<String, Object> labMap;
+    private Map<String, Object> pacsMap;
+    private Map<String, Object> disMap;
+
+}

+ 7 - 5
icss-service/src/main/java/com/diagbot/dto/QuestionDTO.java

@@ -23,17 +23,19 @@ public class QuestionDTO {
     private Integer type;//类型(1:主诉 2:现病史 3:其他史 4:查体,5:化验 6:辅检 7:诊断)
     private Integer controlType; //控件类型
     private Integer subType; //子类型
-    private String isGroup; //组合项标识(0:单项  1:组合项)
-    private String addLine; //添加换行符(0:不换行,1:换行)
+    private String tagType; //标签标识(0:单项  1:组合项 2:填充项)
     private String labelPrefix; //前置内容
     private String labelSuffix; //后置内容
     private BigDecimal minValue; //最小值
     private BigDecimal maxValue; //最大值
+    private Integer position;    //显示位置(0:在标签后,1:在标签前)
+    private Integer formPosition;  //填写单显示位置(0:左, 1:上)
+    private Integer textGenerate;    //显示位置(0:在标签后,1:在标签前)
+    private Integer symptomType; //主症状和伴随症状对应的question类型
+    private Integer exclusionType; //互斥类型
     private String judgeType; //判断类型(0:本身异常;1:本身正常;2:数字范围;3:计算公式;9:无需判断)
-    private String tagQuestions; //标签关联questions
-    private String copyType;//是否显示 + (0:不显示 1 :显示)
+    private String copyType;//是否复制
     private List<QuestionDetail> questionDetailList = new ArrayList<>(); //标签明细表
     private List<QuestionDTO> questionMapping = new ArrayList<>();     //下级标签
-//    private List<QuestionDTO> questionRelationList = new ArrayList<>(); //同级标签
     private String remark;//备注
 }

+ 29 - 0
icss-service/src/main/java/com/diagbot/dto/TemplateInfoDTO.java

@@ -0,0 +1,29 @@
+package com.diagbot.dto;
+
+import java.util.Date;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: 医生病例模板出参
+ * @date 2018年11月16日 上午10:40:27
+ */
+@Getter
+@Setter
+public class TemplateInfoDTO {
+	 private Long id;//模板id
+	 private Date  gmtCreate;//创建时间
+	 private String creator;//创建人id
+	 private String modeName;//模板名字
+	 private Long doctorId;//医生id
+	 private Long hospitalId;//医院id
+	 private Long hospitalDeptId;//部门id
+	 private String modeType;//模板类型
+	 private String  preview;//预览文字
+	 private String dataJson;//模板数据
+	 private String remark;//备注
+
+}

+ 11 - 0
icss-service/src/main/java/com/diagbot/dto/TranFieldInfoDTO.java

@@ -0,0 +1,11 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.TranFieldInfo;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/21 14:08
+ */
+public class TranFieldInfoDTO extends TranFieldInfo {
+}

+ 134 - 0
icss-service/src/main/java/com/diagbot/entity/DeptInfo.java

@@ -0,0 +1,134 @@
+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.util.Date;
+
+/**
+ * <p>
+ * 科室信息表
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-19
+ */
+@TableName("icss_dept_info")
+public class DeptInfo 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;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "DeptInfo{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", name=" + name +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 237 - 0
icss-service/src/main/java/com/diagbot/entity/DoctorInfo.java

@@ -0,0 +1,237 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 医生信息表
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-20
+ */
+@TableName("tran_doctor_info")
+public class DoctorInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院编码
+     */
+    private String hospitalCode;
+
+    /**
+     * 医院科室编码
+     */
+    private String hospitalDeptCode;
+
+    /**
+     * 医院医生编码
+     */
+    private String code;
+
+    /**
+     * 医生姓名
+     */
+    private String name;
+
+    /**
+     * 医生性别
+     */
+    private String sex;
+
+    /**
+     * 证件类型
+     */
+    private String idType;
+
+    /**
+     * 证件号码
+     */
+    private String idNo;
+
+    /**
+     * 家庭住址
+     */
+    private String address;
+
+    /**
+     * 联系电话
+     */
+    private String phone;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public LocalDateTime getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(LocalDateTime gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public LocalDateTime getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(LocalDateTime gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public String getHospitalCode() {
+        return hospitalCode;
+    }
+
+    public void setHospitalCode(String hospitalCode) {
+        this.hospitalCode = hospitalCode;
+    }
+    public String getHospitalDeptCode() {
+        return hospitalDeptCode;
+    }
+
+    public void setHospitalDeptCode(String hospitalDeptCode) {
+        this.hospitalDeptCode = hospitalDeptCode;
+    }
+    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 getSex() {
+        return sex;
+    }
+
+    public void setSex(String sex) {
+        this.sex = sex;
+    }
+    public String getIdType() {
+        return idType;
+    }
+
+    public void setIdType(String idType) {
+        this.idType = idType;
+    }
+    public String getIdNo() {
+        return idNo;
+    }
+
+    public void setIdNo(String idNo) {
+        this.idNo = idNo;
+    }
+    public String getAddress() {
+        return address;
+    }
+
+    public void setAddress(String address) {
+        this.address = address;
+    }
+    public String getPhone() {
+        return phone;
+    }
+
+    public void setPhone(String phone) {
+        this.phone = phone;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "DoctorInfo{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", hospitalCode=" + hospitalCode +
+        ", hospitalDeptCode=" + hospitalDeptCode +
+        ", code=" + code +
+        ", name=" + name +
+        ", sex=" + sex +
+        ", idType=" + idType +
+        ", idNo=" + idNo +
+        ", address=" + address +
+        ", phone=" + phone +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 198 - 0
icss-service/src/main/java/com/diagbot/entity/HospitalDept.java

@@ -0,0 +1,198 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 医院科室信息表
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+@TableName("tran_hospital_dept")
+public class HospitalDept implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院科室编码
+     */
+    private String code;
+
+    /**
+     * 医院科室名称
+     */
+    private String name;
+
+    /**
+     * 医院编码
+     */
+    private String hospitalCode;
+
+    /**
+     * 医院名称
+     */
+    private String hospitalName;
+
+    /**
+     * icss科室id
+     */
+    private Long deptId;
+
+    /**
+     * 状态:0.禁用1.启用
+     */
+    private Integer status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public 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 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 getHospitalCode() {
+        return hospitalCode;
+    }
+
+    public void setHospitalCode(String hospitalCode) {
+        this.hospitalCode = hospitalCode;
+    }
+    public String getHospitalName() {
+        return hospitalName;
+    }
+
+    public void setHospitalName(String hospitalName) {
+        this.hospitalName = hospitalName;
+    }
+    public Long getDeptId() {
+        return deptId;
+    }
+
+    public void setDeptId(Long deptId) {
+        this.deptId = deptId;
+    }
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "HospitalDept{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", code=" + code +
+        ", name=" + name +
+        ", hospitalCode=" + hospitalCode +
+        ", hospitalName=" + hospitalName +
+        ", deptId=" + deptId +
+        ", status=" + status +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 198 - 0
icss-service/src/main/java/com/diagbot/entity/HospitalInfo.java

@@ -0,0 +1,198 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 医院信息表
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+@TableName("tran_hospital_info")
+public class HospitalInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院编码
+     */
+    private String code;
+
+    /**
+     * 医院名称
+     */
+    private String name;
+
+    /**
+     * 医院地址
+     */
+    private String address;
+
+    /**
+     * 医院名称拼音
+     */
+    private String spell;
+
+    /**
+     * 状态:0.禁用1.启用
+     */
+    private Integer status;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public LocalDateTime getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(LocalDateTime gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public LocalDateTime getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(LocalDateTime gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public 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 getAddress() {
+        return address;
+    }
+
+    public void setAddress(String address) {
+        this.address = address;
+    }
+    public String getSpell() {
+        return spell;
+    }
+
+    public void setSpell(String spell) {
+        this.spell = spell;
+    }
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+    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;
+    }
+
+    @Override
+    public String toString() {
+        return "HospitalInfo{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", code=" + code +
+        ", name=" + name +
+        ", address=" + address +
+        ", spell=" + spell +
+        ", status=" + status +
+        ", orderNo=" + orderNo +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 36 - 12
icss-service/src/main/java/com/diagbot/entity/IntroduceDetail.java

@@ -65,6 +65,11 @@ public class IntroduceDetail implements Serializable {
      */
     private String content;
 
+    /**
+     * 提示明细内容-纯文本
+     */
+    private String text;
+
     /**
      * 提示明细序号
      */
@@ -82,6 +87,7 @@ public class IntroduceDetail implements Serializable {
     public void setId(Long id) {
         this.id = id;
     }
+
     public String getIsDeleted() {
         return isDeleted;
     }
@@ -89,6 +95,7 @@ public class IntroduceDetail implements Serializable {
     public void setIsDeleted(String isDeleted) {
         this.isDeleted = isDeleted;
     }
+
     public Date getGmtCreate() {
         return gmtCreate;
     }
@@ -96,6 +103,7 @@ public class IntroduceDetail implements Serializable {
     public void setGmtCreate(Date gmtCreate) {
         this.gmtCreate = gmtCreate;
     }
+
     public Date getGmtModified() {
         return gmtModified;
     }
@@ -103,6 +111,7 @@ public class IntroduceDetail implements Serializable {
     public void setGmtModified(Date gmtModified) {
         this.gmtModified = gmtModified;
     }
+
     public String getCreator() {
         return creator;
     }
@@ -110,6 +119,7 @@ public class IntroduceDetail implements Serializable {
     public void setCreator(String creator) {
         this.creator = creator;
     }
+
     public String getModifier() {
         return modifier;
     }
@@ -117,6 +127,7 @@ public class IntroduceDetail implements Serializable {
     public void setModifier(String modifier) {
         this.modifier = modifier;
     }
+
     public Long getIntroduceId() {
         return introduceId;
     }
@@ -124,6 +135,7 @@ public class IntroduceDetail implements Serializable {
     public void setIntroduceId(Long introduceId) {
         this.introduceId = introduceId;
     }
+
     public String getTitle() {
         return title;
     }
@@ -131,6 +143,7 @@ public class IntroduceDetail implements Serializable {
     public void setTitle(String title) {
         this.title = title;
     }
+
     public String getContent() {
         return content;
     }
@@ -138,6 +151,15 @@ public class IntroduceDetail implements Serializable {
     public void setContent(String content) {
         this.content = content;
     }
+
+    public String getText() {
+        return text;
+    }
+
+    public void setText(String text) {
+        this.text = text;
+    }
+
     public Integer getOrderNo() {
         return orderNo;
     }
@@ -145,6 +167,7 @@ public class IntroduceDetail implements Serializable {
     public void setOrderNo(Integer orderNo) {
         this.orderNo = orderNo;
     }
+
     public Integer getPosition() {
         return position;
     }
@@ -156,17 +179,18 @@ public class IntroduceDetail implements Serializable {
     @Override
     public String toString() {
         return "IntroduceDetail{" +
-        "id=" + id +
-        ", isDeleted=" + isDeleted +
-        ", gmtCreate=" + gmtCreate +
-        ", gmtModified=" + gmtModified +
-        ", creator=" + creator +
-        ", modifier=" + modifier +
-        ", introduceId=" + introduceId +
-        ", title=" + title +
-        ", content=" + content +
-        ", orderNo=" + orderNo +
-        ", position=" + position +
-        "}";
+                "id=" + id +
+                ", isDeleted=" + isDeleted +
+                ", gmtCreate=" + gmtCreate +
+                ", gmtModified=" + gmtModified +
+                ", creator=" + creator +
+                ", modifier=" + modifier +
+                ", introduceId=" + introduceId +
+                ", title=" + title +
+                ", content=" + content +
+                ", text=" + text +
+                ", orderNo=" + orderNo +
+                ", position=" + position +
+                "}";
     }
 }

+ 88 - 0
icss-service/src/main/java/com/diagbot/entity/ModuleDetail.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>
+ * 模型明细表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-11-22
+ */
+@TableName("icss_module_detail")
+@Getter
+@Setter
+public class ModuleDetail 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 moduleId;
+
+    /**
+     * 前置内容
+     */
+    private String labelPrefix;
+
+    /**
+     * 后置内容
+     */
+    private String labelSuffix;
+
+    /**
+     * questionId
+     */
+    private Long questionId;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 354 - 0
icss-service/src/main/java/com/diagbot/entity/PatientInfo.java

@@ -0,0 +1,354 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 患者信息表
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-20
+ */
+@TableName("tran_patient_info")
+public class PatientInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 医院编码
+     */
+    private String hospitalCode;
+
+    /**
+     * 医院患者编号
+     */
+    private String code;
+
+    /**
+     * 患者姓名
+     */
+    private String name;
+
+    /**
+     * 性别
+     */
+    private String sex;
+
+    /**
+     * 出生日期
+     */
+    private LocalDateTime birthday;
+
+    /**
+     * 证件类型
+     */
+    private String idType;
+
+    /**
+     * 证件号码
+     */
+    private String idNo;
+
+    /**
+     * 家庭住址
+     */
+    private String address;
+
+    /**
+     * 联系电话
+     */
+    private String phone;
+
+    /**
+     * 身份证号
+     */
+    private String identityNum;
+
+    /**
+     * 家庭邮编
+     */
+    private String postcode;
+
+    /**
+     * 联系人
+     */
+    private String contacts;
+
+    /**
+     * 联系人电话
+     */
+    private String contactPhone;
+
+    /**
+     * 就职单位名称
+     */
+    private String workUnit;
+
+    /**
+     * 职业
+     */
+    private String operation;
+
+    /**
+     * 国籍
+     */
+    private String country;
+
+    /**
+     * 民族
+     */
+    private String nationality;
+
+    /**
+     * 婚姻状况:0未婚,1已婚,2未知
+     */
+    private Integer matrimony;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public LocalDateTime getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(LocalDateTime gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public LocalDateTime getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(LocalDateTime gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public String getHospitalCode() {
+        return hospitalCode;
+    }
+
+    public void setHospitalCode(String hospitalCode) {
+        this.hospitalCode = hospitalCode;
+    }
+    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 getSex() {
+        return sex;
+    }
+
+    public void setSex(String sex) {
+        this.sex = sex;
+    }
+    public LocalDateTime getBirthday() {
+        return birthday;
+    }
+
+    public void setBirthday(LocalDateTime birthday) {
+        this.birthday = birthday;
+    }
+    public String getIdType() {
+        return idType;
+    }
+
+    public void setIdType(String idType) {
+        this.idType = idType;
+    }
+    public String getIdNo() {
+        return idNo;
+    }
+
+    public void setIdNo(String idNo) {
+        this.idNo = idNo;
+    }
+    public String getAddress() {
+        return address;
+    }
+
+    public void setAddress(String address) {
+        this.address = address;
+    }
+    public String getPhone() {
+        return phone;
+    }
+
+    public void setPhone(String phone) {
+        this.phone = phone;
+    }
+    public String getIdentityNum() {
+        return identityNum;
+    }
+
+    public void setIdentityNum(String identityNum) {
+        this.identityNum = identityNum;
+    }
+    public String getPostcode() {
+        return postcode;
+    }
+
+    public void setPostcode(String postcode) {
+        this.postcode = postcode;
+    }
+    public String getContacts() {
+        return contacts;
+    }
+
+    public void setContacts(String contacts) {
+        this.contacts = contacts;
+    }
+    public String getContactPhone() {
+        return contactPhone;
+    }
+
+    public void setContactPhone(String contactPhone) {
+        this.contactPhone = contactPhone;
+    }
+    public String getWorkUnit() {
+        return workUnit;
+    }
+
+    public void setWorkUnit(String workUnit) {
+        this.workUnit = workUnit;
+    }
+    public String getOperation() {
+        return operation;
+    }
+
+    public void setOperation(String operation) {
+        this.operation = operation;
+    }
+    public String getCountry() {
+        return country;
+    }
+
+    public void setCountry(String country) {
+        this.country = country;
+    }
+    public String getNationality() {
+        return nationality;
+    }
+
+    public void setNationality(String nationality) {
+        this.nationality = nationality;
+    }
+    public Integer getMatrimony() {
+        return matrimony;
+    }
+
+    public void setMatrimony(Integer matrimony) {
+        this.matrimony = matrimony;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "PatientInfo{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", hospitalCode=" + hospitalCode +
+        ", code=" + code +
+        ", name=" + name +
+        ", sex=" + sex +
+        ", birthday=" + birthday +
+        ", idType=" + idType +
+        ", idNo=" + idNo +
+        ", address=" + address +
+        ", phone=" + phone +
+        ", identityNum=" + identityNum +
+        ", postcode=" + postcode +
+        ", contacts=" + contacts +
+        ", contactPhone=" + contactPhone +
+        ", workUnit=" + workUnit +
+        ", operation=" + operation +
+        ", country=" + country +
+        ", nationality=" + nationality +
+        ", matrimony=" + matrimony +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 225 - 0
icss-service/src/main/java/com/diagbot/entity/PrintRecord.java

@@ -0,0 +1,225 @@
+package com.diagbot.entity;
+
+import java.io.Serializable;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+/**
+ * <p>
+ * 打印记录表
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-19
+ */
+@TableName("icss_print_record")
+public class PrintRecord 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 doctorId;
+
+    /**
+     * 部门id
+     */
+    private Long hospitalDeptId;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 患者id
+     */
+    private Long patientId;
+
+    /**
+     * 就诊号
+     */
+    private String inquiryCode;
+
+    /**
+     * 文本内容
+     */
+    private String content;
+
+    /**
+     * 内容JSON字符串(打印页面展示)
+     */
+    private String dataJson;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    public Long getDoctorId() {
+        return doctorId;
+    }
+
+    public void setDoctorId(Long doctorId) {
+        this.doctorId = doctorId;
+    }
+    public Long getHospitalDeptId() {
+        return hospitalDeptId;
+    }
+
+    public void setHospitalDeptId(Long hospitalDeptId) {
+        this.hospitalDeptId = hospitalDeptId;
+    }
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    public Long getPatientId() {
+        return patientId;
+    }
+
+    public void setPatientId(Long patientId) {
+        this.patientId = patientId;
+    }
+    public String getInquiryCode() {
+        return inquiryCode;
+    }
+
+    public void setInquiryCode(String inquiryCode) {
+        this.inquiryCode = inquiryCode;
+    }
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+    public String getDataJson() {
+        return dataJson;
+    }
+
+    public void setDataJson(String dataJson) {
+        this.dataJson = dataJson;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "PrintRecord{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", name=" + name +
+        ", doctorId=" + doctorId +
+        ", hospitalDeptId=" + hospitalDeptId +
+        ", hospitalId=" + hospitalId +
+        ", patientId=" + patientId +
+        ", inquiryCode=" + inquiryCode +
+        ", content=" + content +
+        ", dataJson=" + dataJson +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 10 - 5
icss-service/src/main/java/com/diagbot/entity/QuestionDetail.java

@@ -31,6 +31,16 @@ public class QuestionDetail implements Serializable {
      */
     private String name;
 
+    /**
+     * 前置内容
+     */
+    private String labelPrefix;
+
+    /**
+     * 后置内容
+     */
+    private String labelSuffix;
+
     /**
      * question_id
      */
@@ -46,11 +56,6 @@ public class QuestionDetail implements Serializable {
      */
     private String defaultSelect;
 
-    /**
-     * 换行符(0:不换行, 1: 换行符)
-     */
-    private String addLine;
-
     /**
      * 备注
      */

+ 9 - 15
icss-service/src/main/java/com/diagbot/entity/QuestionInfo.java

@@ -58,14 +58,10 @@ public class QuestionInfo implements Serializable {
     private Integer type;
 
     /**
-     * 控件类型(0:标签 1:下拉单选 2:下拉多选 3:联合下拉单选 4:联合下拉多选 5:占位标签)
+     * 控件类型
      */
     private Integer controlType;
 
-    /**
-     * 输入框的格式
-     */
-    private Integer inputFormat;
 
     /**
      * 子类型,(31:既往史 32:家族史 33:个人史 34:月经史 35:婚育史)
@@ -73,14 +69,10 @@ public class QuestionInfo implements Serializable {
     private Integer subType;
 
     /**
-     * 组合项标识(0:单项  1:组合项)
+     * 标签标识(0:单项  1:组合项 2:填充项)
      */
-    private String isGroup;
+    private String tagType;
 
-    /**
-     * 添加换行符(0:不换行,1:换行)
-     */
-    private String addLine;
 
     /**
      * 前置内容
@@ -107,16 +99,18 @@ public class QuestionInfo implements Serializable {
      */
     private String judgeType;
 
-    /**
-     * 标签关联questions
-     */
-    private String tagQuestions;
 
     /**
      * 是否显示 + (0:不显示 1 :显示)
      */
     private String copyType;
 
+
+    /**
+     * 文本生成规则
+     */
+    private Integer textGenerate;
+
     /**
      * 备注
      */

+ 7 - 1
icss-service/src/main/java/com/diagbot/entity/QuestionMapping.java

@@ -74,7 +74,13 @@ public class QuestionMapping implements Serializable {
     /**
      * 主症状和伴随症状对应的question类型(0:症状公用 1:主症状特有 2:伴随症状特有 )
      */
-    private Integer type;
+    private Integer symptomType;
+
+    /**
+     * 互斥类型
+     */
+    private Integer exclusionType;
+
 
     /**
      * 备注

+ 214 - 0
icss-service/src/main/java/com/diagbot/entity/TemplateInfo.java

@@ -0,0 +1,214 @@
+package com.diagbot.entity;
+
+import java.io.Serializable;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+/**
+ * <p>
+ * 模板表
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-19
+ */
+@TableName("icss_template_info")
+public class TemplateInfo 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 doctorId;
+
+    /**
+     * 医生科室id
+     */
+    private Long hospitalDeptId;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 分类(1:结构化模板,2:文本输入模板)
+     */
+    private String type;
+
+    /**
+     * 预览文字
+     */
+    private String preview;
+
+    /**
+     * 内容JSON字符串(模板内容)
+     */
+    private String dataJson;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    public Long getDoctorId() {
+        return doctorId;
+    }
+
+    public void setDoctorId(Long doctorId) {
+        this.doctorId = doctorId;
+    }
+   
+    public Long getHospitalDeptId() {
+		return hospitalDeptId;
+	}
+
+	public void setHospitalDeptId(Long hospitalDeptId) {
+		this.hospitalDeptId = hospitalDeptId;
+	}
+
+	public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+    public String getPreview() {
+        return preview;
+    }
+
+    public void setPreview(String preview) {
+        this.preview = preview;
+    }
+    public String getDataJson() {
+        return dataJson;
+    }
+
+    public void setDataJson(String dataJson) {
+        this.dataJson = dataJson;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "TemplateInfo{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", name=" + name +
+        ", doctorId=" + doctorId +
+        ", hospitalDeptId=" + hospitalDeptId +
+        ", hospitalId=" + hospitalId +
+        ", type=" + type +
+        ", preview=" + preview +
+        ", dataJson=" + dataJson +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 170 - 0
icss-service/src/main/java/com/diagbot/entity/TranFieldInfo.java

@@ -0,0 +1,170 @@
+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 wangyu
+ * @since 2018-11-21
+ */
+public class TranFieldInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 唯一主键(通常是医院编码:hospitalId)
+     */
+    private String uuid;
+
+    /**
+     * icss需要的字段
+     */
+    private String icssField;
+
+    /**
+     * 医院个性化字段
+     */
+    private String hisField;
+
+    /**
+     * 状态
+     */
+    private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public 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 getUuid() {
+        return uuid;
+    }
+
+    public void setUuid(String uuid) {
+        this.uuid = uuid;
+    }
+    public String getIcssField() {
+        return icssField;
+    }
+
+    public void setIcssField(String icssField) {
+        this.icssField = icssField;
+    }
+    public String getHisField() {
+        return hisField;
+    }
+
+    public void setHisField(String hisField) {
+        this.hisField = hisField;
+    }
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "TranFieldInfo{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", uuid=" + uuid +
+        ", icssField=" + icssField +
+        ", hisField=" + hisField +
+        ", status=" + status +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 24 - 0
icss-service/src/main/java/com/diagbot/entity/wrapper/QuestionInfoWrapper.java

@@ -0,0 +1,24 @@
+package com.diagbot.entity.wrapper;
+
+import com.diagbot.entity.QuestionInfo;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 标签扩展表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-11-15
+ */
+@Getter
+@Setter
+public class QuestionInfoWrapper extends QuestionInfo {
+
+    private Integer position; //显示位置
+    private Integer exclusionType; //互斥类型
+    private Integer symptomType; //主症状和伴随症状对应的question类型
+    private Integer formPosition; //填写单显示位置
+
+}

+ 49 - 0
icss-service/src/main/java/com/diagbot/enums/IntroducePositionEnum.java

@@ -0,0 +1,49 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:提示信息展示位置
+ * @Author:zhaops
+ * @time: 2018/11/23 10:12
+ */
+public enum IntroducePositionEnum implements KeyedNamed {
+    Right(1, "右侧"),
+    All(0, "右侧+全文");
+
+    @Setter
+    private Integer key;
+
+    @Setter
+    private String name;
+
+    IntroducePositionEnum(Integer key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static IntroducePositionEnum getEnum(Integer key) {
+        for (IntroducePositionEnum item : IntroducePositionEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(Integer key) {
+        IntroducePositionEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 54 - 0
icss-service/src/main/java/com/diagbot/enums/QuestionTypeEnum.java

@@ -0,0 +1,54 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:标签类型
+ * @Author:zhaops
+ * @time: 2018/11/21 11:39
+ */
+public enum QuestionTypeEnum implements KeyedNamed {
+    Mainsuit(1, "主诉"),
+    Symptom(2, "现病史"),
+    Other(3, "其他史"),
+    Vital(4, "查体"),
+    Lis(5, "化验"),
+    Pacs(6, "辅检"),
+    Disease(7, "诊断");
+
+    @Setter
+    private Integer key;
+
+    @Setter
+    private String name;
+
+    QuestionTypeEnum(Integer key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static QuestionTypeEnum getEnum(Integer key) {
+        for (QuestionTypeEnum item : QuestionTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(Integer key) {
+        QuestionTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 34 - 0
icss-service/src/main/java/com/diagbot/facade/DeptInfoFacade.java

@@ -0,0 +1,34 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.DeptInfoDTO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.DeptInfoServiceImpl;
+import com.diagbot.vo.DeptInfoVO;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/19 19:21
+ */
+@Component
+public class DeptInfoFacade extends DeptInfoServiceImpl {
+
+    /**
+     *  获取科室信息
+     * @param deptInfoVO
+     * @return
+     */
+    public RespDTO<List<DeptInfoDTO>> getDeptInfo(DeptInfoVO deptInfoVO) {
+        List<DeptInfoDTO> deptInfoDTOList = this.getDeptInfos(deptInfoVO.getDeptCode(),deptInfoVO.getHosptialCode());
+        if(deptInfoDTOList == null || deptInfoDTOList.size() == 0){
+            throw new CommonException(CommonErrorCode.NOT_EXISTS,
+                    "获取科室信息失败");
+        }
+        return RespDTO.onSuc(deptInfoDTOList);
+    }
+}

+ 13 - 0
icss-service/src/main/java/com/diagbot/facade/DeptVitalFacade.java

@@ -0,0 +1,13 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.DeptVitalServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2018/11/20 17:16
+ */
+@Component
+public class DeptVitalFacade extends DeptVitalServiceImpl {
+}

+ 34 - 0
icss-service/src/main/java/com/diagbot/facade/DoctorInfoFacade.java

@@ -0,0 +1,34 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.DoctorInfoDTO;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.DoctorInfoServiceImpl;
+import com.diagbot.vo.DoctorInfoVO;
+import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/19 19:49
+ */
+@Component
+public class DoctorInfoFacade extends DoctorInfoServiceImpl {
+
+    /**
+     * 获取医生信息
+     * @param doctorInfoVo
+     * @return
+     */
+    public List<DoctorInfoDTO> getDoctorInfo(@RequestBody DoctorInfoVO doctorInfoVo) {
+        List<DoctorInfoDTO> doctorInfoDTOList = this.getDoctorInfos(doctorInfoVo.getDoctorCode(),doctorInfoVo.getHosptialCode(),doctorInfoVo.getDeptCode());
+        if(doctorInfoDTOList == null || doctorInfoDTOList.size() == 0){
+            throw new CommonException(CommonErrorCode.NOT_EXISTS,
+                    "获取医生信息失败");
+        }
+        return doctorInfoDTOList;
+    }
+}

+ 33 - 0
icss-service/src/main/java/com/diagbot/facade/HospitalInfoFacade.java

@@ -0,0 +1,33 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.HospitalInfoDTO;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.HospitalInfoServiceImpl;
+import com.diagbot.vo.HospitalInfoVO;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/22 13:43
+ */
+@Component
+public class HospitalInfoFacade extends HospitalInfoServiceImpl {
+
+    /**
+     * 获取医院信息
+     * @param hospitalInfoVO
+     * @return
+     */
+    public List<HospitalInfoDTO> getHospitalInfo(HospitalInfoVO hospitalInfoVO) {
+        List<HospitalInfoDTO> hospitalInfoDTOList = this.getHospitalInfos(hospitalInfoVO);
+        if(hospitalInfoDTOList == null || hospitalInfoDTOList.size() == 0){
+            throw new CommonException(CommonErrorCode.NOT_EXISTS,
+                    "获取医院信息失败");
+        }
+        return hospitalInfoDTOList;
+    }
+}

+ 43 - 4
icss-service/src/main/java/com/diagbot/facade/IntroduceInfoFacade.java

@@ -5,11 +5,14 @@ import com.diagbot.dto.IntroduceDTO;
 import com.diagbot.entity.IntroduceDetail;
 import com.diagbot.entity.IntroduceInfo;
 import com.diagbot.entity.IntroduceMap;
+import com.diagbot.entity.QuestionInfo;
 import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.QuestionTypeEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.service.impl.IntroduceInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
+import com.diagbot.util.StringUtil;
 import com.diagbot.vo.IntroduceByQuestionVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -27,15 +30,19 @@ public class IntroduceInfoFacade extends IntroduceInfoServiceImpl {
     IntroduceMapFacade introduceMapFacade;
     @Autowired
     IntroduceDetailFacade introduceDetailFacade;
+    @Autowired
+    QuestionFacade questionFacade;
 
     /**
-     * 根据标签获取提示信息
+     * 根据标签id获取提示信息
      *
      * @param introduceByQuestionVO
      * @return
      */
-    public IntroduceDTO getByQuestion(IntroduceByQuestionVO introduceByQuestionVO) {
-
+    public IntroduceDTO getByQuestionId(IntroduceByQuestionVO introduceByQuestionVO) {
+        if (introduceByQuestionVO.getQuestionId() == null) {
+            throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "请输入标签id");
+        }
         QueryWrapper<IntroduceMap> introduceMapQueryWrapper = new QueryWrapper<>();
         introduceMapQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
                 eq("question_id", introduceByQuestionVO.getQuestionId()).
@@ -49,6 +56,38 @@ public class IntroduceInfoFacade extends IntroduceInfoServiceImpl {
         return introduceDTO;
     }
 
+    /**
+     * 根据标签名称获取提示信息
+     *
+     * @param introduceByQuestionVO
+     * @return
+     */
+    public IntroduceDTO getByQuestionName(IntroduceByQuestionVO introduceByQuestionVO) {
+        if (StringUtil.isBlank(introduceByQuestionVO.getTagName())) {
+            throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "请输入标签名称");
+        }
+        QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
+        questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("tag_name", introduceByQuestionVO.getTagName())
+                .eq("type", QuestionTypeEnum.Disease.getKey());
+        QuestionInfo questionInfo = questionFacade.getOne(questionInfoQueryWrapper);
+        if (questionInfo == null) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "标签不存在");
+        }
+
+        QueryWrapper<IntroduceMap> introduceMapQueryWrapper = new QueryWrapper<>();
+        introduceMapQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
+                eq("question_id", questionInfo.getId()).
+                eq("type", introduceByQuestionVO.getType());
+        IntroduceMap introduceMap = introduceMapFacade.getOne(introduceMapQueryWrapper);
+        if (introduceMap == null) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "提示信息未维护");
+        }
+
+        IntroduceDTO introduceDTO = this.getRecordById(introduceMap.getIntroduceId());
+        return introduceDTO;
+    }
+
     /**
      * 根据id获取提示信息
      *
@@ -72,4 +111,4 @@ public class IntroduceInfoFacade extends IntroduceInfoServiceImpl {
         introduceDTO.setIntroduceDetailList(introduceDetailList);
         return introduceDTO;
     }
-}
+}

+ 43 - 0
icss-service/src/main/java/com/diagbot/facade/ModuleDetailFacade.java

@@ -0,0 +1,43 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.ModuleInfoDTO;
+import com.diagbot.entity.ModuleInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.impl.ModuleDetailServiceImpl;
+import com.diagbot.util.BeanUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description: 模型明细务层
+ * @author: zhoutg
+ * @time: 2018/8/6 9:11
+ */
+@Component
+public class ModuleDetailFacade extends ModuleDetailServiceImpl {
+
+
+    /**
+     * 返回所有的模型结构
+     *
+     * @return 模型结构
+     */
+    public List<ModuleInfoDTO> getAll() {
+        List<ModuleInfoDTO> data = new ArrayList<>();
+        QueryWrapper queryWrapper = new QueryWrapper();
+        queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
+        List<ModuleInfo> list =  this.list(queryWrapper);
+        data = BeanUtil.listCopyTo(list, ModuleInfoDTO.class);
+        for(ModuleInfoDTO bean : data) {
+            QueryWrapper wrapper = new QueryWrapper();
+            wrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
+            wrapper.eq("module_id", bean.getId());
+            wrapper.orderByAsc("order_no");
+        }
+        return data;
+    }
+
+}

+ 67 - 0
icss-service/src/main/java/com/diagbot/facade/ModuleFacade.java

@@ -0,0 +1,67 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.ModuleDetailDTO;
+import com.diagbot.dto.ModuleInfoDTO;
+import com.diagbot.entity.ModuleDetail;
+import com.diagbot.entity.ModuleInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.impl.ModuleInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.vo.ModuleVO;
+import com.diagbot.vo.QuestionIdsVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description: 模型业务层
+ * @author: zhoutg
+ * @time: 2018/8/6 9:11
+ */
+@Component
+public class ModuleFacade extends ModuleInfoServiceImpl {
+
+    @Autowired
+    ModuleDetailFacade moduleDetailFacade;
+    @Autowired
+    QuestionFacade questionFacade;
+
+    /**
+     * 返回所有的模型结构
+     *
+     * @return 模型结构
+     */
+    public List<ModuleInfoDTO> getAll(ModuleVO moduleVO) {
+        List<ModuleInfoDTO> data = new ArrayList<>();
+        QueryWrapper queryWrapper = new QueryWrapper();
+        queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
+        List<ModuleInfo> list =  this.list(queryWrapper);
+        data = BeanUtil.listCopyTo(list, ModuleInfoDTO.class);
+        for (ModuleInfoDTO bean : data) {
+            QueryWrapper wrapper = new QueryWrapper();
+            wrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
+            wrapper.eq("module_id", bean.getId());
+            wrapper.orderByAsc("order_no");
+            List<ModuleDetail> moduleDetailList = moduleDetailFacade.list(wrapper);
+            List<ModuleDetailDTO> moduleDetailDTOList = BeanUtil.listCopyTo(moduleDetailList, ModuleDetailDTO.class);
+            bean.setModuleDetailDTOList(moduleDetailDTOList);
+            StringBuffer sb = new StringBuffer();
+            for (ModuleDetailDTO detailDTO : moduleDetailDTOList) {
+                sb.append(detailDTO.getQuestionId()).append(",");
+            }
+            if (ListUtil.isNotEmpty(moduleDetailDTOList)) {
+                QuestionIdsVO questionIdsVO = new QuestionIdsVO();
+                questionIdsVO.setIds(sb.toString().substring(0, sb.toString().length()-1));
+                questionIdsVO.setSexType(moduleVO.getSexType());
+                questionIdsVO.setAge(moduleVO.getAge());
+                bean.setQuestionList(questionFacade.getByIds(questionIdsVO));
+            }
+        }
+        return data;
+    }
+
+}

+ 50 - 0
icss-service/src/main/java/com/diagbot/facade/PatientInfoFacade.java

@@ -0,0 +1,50 @@
+package com.diagbot.facade;
+
+import java.util.List;
+
+import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import com.diagbot.dto.GetTopPatientInfoDTO;
+import com.diagbot.dto.PatientInfoDTO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.PatientInfoServiceImpl;
+import com.diagbot.vo.GetTopPatientInfoVO;
+import com.diagbot.vo.PatientInfoVO;
+
+/**
+ * @Description: 患者业务逻辑
+ * @author: wangyu
+ * @time: 2018/11/19 13:19
+ */
+@Component
+public class PatientInfoFacade extends PatientInfoServiceImpl {
+
+    /**
+     * 获取患者信息
+     * @param patientInfoVO
+     * @return
+     */
+    public List<PatientInfoDTO> getPatientInfo(@RequestBody PatientInfoVO patientInfoVO) {
+        List<PatientInfoDTO> patientInfoDTOList = this.getPatientInfos(patientInfoVO.getPatientCode(),patientInfoVO.getHosptialCode());
+        if(patientInfoDTOList == null || patientInfoDTOList.size() == 0){
+            throw new CommonException(CommonErrorCode.NOT_EXISTS,
+                    "获取患者信息失败");
+        }
+        return patientInfoDTOList;
+    }
+    
+    /**
+     * 页面顶部病人医生科室信息查询
+     * @param getTopPatientInfoVO
+     * @return
+     */
+    public GetTopPatientInfoDTO getTopPatientInfo(@RequestBody GetTopPatientInfoVO getTopPatientInfoVO) {
+    	return baseMapper.getTopPatientInfo(getTopPatientInfoVO);
+    }
+    
+    
+    
+}

+ 42 - 0
icss-service/src/main/java/com/diagbot/facade/PrintRecordFacade.java

@@ -0,0 +1,42 @@
+package com.diagbot.facade;
+
+import com.diagbot.util.DateUtil;
+import org.springframework.stereotype.Component;
+
+import com.diagbot.entity.PrintRecord;
+import com.diagbot.service.impl.PrintRecordServiceImpl;
+import com.diagbot.vo.PrintRecordsVO;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: 打印记录
+ * @date 2018年11月19日 上午10:04:42
+ */
+@Component
+public class PrintRecordFacade extends PrintRecordServiceImpl{
+
+	/**
+	 * 保存打印记录
+	 * @param printRecordsVO
+	 * @return boolean
+	 */
+	public boolean savePrintRecord(PrintRecordsVO printRecordsVO) {
+		//获取传入的参数值,保存在数据表中
+		PrintRecord printRecord = new PrintRecord();
+		printRecord.setCreator(printRecordsVO.getDoctorId().toString());//创建人id
+		printRecord.setDoctorId(printRecordsVO.getDoctorId());//医生
+		printRecord.setGmtCreate(DateUtil.now());//创建时间
+		printRecord.setName(printRecordsVO.getName());//打印的名称
+		printRecord.setHospitalDeptId(printRecordsVO.getHospitalDeptId());//部门id
+		printRecord.setHospitalId(printRecordsVO.getHospitalId());//医院id
+		printRecord.setInquiryCode(printRecordsVO.getInquiryCode());//就诊号
+		printRecord.setPatientId(printRecordsVO.getPatientId());//患者id
+		printRecord.setContent(printRecordsVO.getContent());//文件展现
+		printRecord.setDataJson(printRecordsVO.getDataJson());//打印数据json
+		boolean res = save(printRecord);
+		return res;
+	}
+
+	
+}

+ 198 - 0
icss-service/src/main/java/com/diagbot/facade/PushFacade.java

@@ -0,0 +1,198 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.client.AIServiceClient;
+import com.diagbot.client.bean.FeatureRate;
+import com.diagbot.client.bean.Response;
+import com.diagbot.client.bean.ResponseData;
+import com.diagbot.client.bean.SearchData;
+import com.diagbot.dto.PushDTO;
+import com.diagbot.dto.QuestionDTO;
+import com.diagbot.entity.DeptInfo;
+import com.diagbot.entity.DeptVital;
+import com.diagbot.entity.QuestionInfo;
+import com.diagbot.entity.VitalOrder;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.QuestionTypeEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.vo.PushVO;
+import com.diagbot.vo.QuestionVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2018/11/20 11:18
+ */
+@Component
+public class PushFacade {
+    @Autowired
+    private AIServiceClient aiServiceClient;
+    @Autowired
+    private QuestionFacade questionFacade;
+    @Autowired
+    private DeptInfoFacade deptInfoFacade;
+    @Autowired
+    private DeptVitalFacade deptVitalFacade;
+    @Autowired
+    private VitalOrderFacade vitalOrderFacade;
+
+    /**
+     * 推理接口
+     *
+     * @param pushVO
+     * @return
+     */
+    public ResponseData pushAI(PushVO pushVO) {
+        SearchData searchData = new SearchData();
+        searchData.setAge(pushVO.getAge());
+        searchData.setSymptom(pushVO.getSymptom());
+        searchData.setVital(pushVO.getVital());
+        searchData.setLis(pushVO.getLis());
+        searchData.setPacs(pushVO.getPacs());
+        searchData.setPast(pushVO.getPast());
+        searchData.setOther(pushVO.getOther());
+        switch (pushVO.getSex()) {
+            case 1:
+                searchData.setSex("M");
+                break;
+            case 2:
+                searchData.setSex("F");
+                break;
+            case 3:
+                searchData.setSex("A");
+                break;
+            default:
+                throw new CommonException(CommonErrorCode.PARAM_ERROR, "性别参数错误");
+        }
+
+        searchData.setFeatureType(pushVO.getFeatureType());
+        searchData.setSysCode("1");
+        searchData.setLength(10);
+
+        Response<ResponseData> res = aiServiceClient.bayesPageData(searchData);
+        return res.getData();
+    }
+
+    /**
+     * 内部推理
+     *
+     * @param pushVO
+     * @return
+     */
+    public PushDTO pushInner(PushVO pushVO) {
+        PushDTO pushDTO = new PushDTO();
+        ResponseData data = pushAI(pushVO);
+
+        String featureType = pushVO.getFeatureType();
+        String[] featureTypes = featureType.split(",|,");
+        Set<String> featureTypeSet = new HashSet(Arrays.asList(featureTypes));
+
+        List<FeatureRate> symptom = data.getSymptom();
+        List<FeatureRate> dis = data.getDis();
+        List<FeatureRate> pacs = data.getPacs();
+        List<FeatureRate> labs = data.getLabs();
+
+        Map<String, Object> symptomMap = list2Map(symptom);
+        Map<String, Object> vitalMap = new HashMap<>();
+        Map<String, Object> disMap = list2Map(dis);
+        Map<String, Object> labMap = list2Map(labs);
+        Map<String, Object> pacsMap = list2Map(pacs);
+
+        if (featureTypeSet.contains(QuestionTypeEnum.Lis.getKey())) {
+            pushDTO.setLabMap(labMap);
+        } else if (featureTypeSet.contains(QuestionTypeEnum.Pacs.getKey())) {
+            pushDTO.setPacsMap(pacsMap);
+        } else if (featureTypeSet.contains(QuestionTypeEnum.Disease.getKey())) {
+            pushDTO.setDisMap(disMap);
+        }
+        //症状(主诉 type=1;现病史 type=2) 返回 tagName+填写单
+        else if (featureTypeSet.contains(QuestionTypeEnum.Mainsuit.getKey()) || featureTypeSet.contains(QuestionTypeEnum.Symptom.getKey())) {
+            QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper();
+            questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
+                    in("tag_name", symptomMap.keySet()).
+                    eq("type", QuestionTypeEnum.Symptom.getKey());
+            List<QuestionInfo> questionInfoList = questionFacade.list(questionInfoQueryWrapper);
+            Map<String, QuestionInfo> questionInfoMap = EntityUtil.makeEntityMap(questionInfoList, "tagName");
+            for (Map.Entry<String, Object> entry : symptomMap.entrySet()) {
+                if (questionInfoMap.get(entry.getKey()) != null) {
+                    QuestionVO questionVO = new QuestionVO();
+                    questionVO.setAge(pushVO.getAge());
+                    questionVO.setSexType(pushVO.getSex());
+                    questionVO.setId(questionInfoMap.get(entry.getKey()).getId());
+                    entry.setValue(questionFacade.getById(questionVO));
+                }
+            }
+            pushDTO.setSymptomMap(symptomMap);
+        }
+        //查体 返回模板
+        else if (featureTypeSet.contains(QuestionTypeEnum.Vital.getKey()) && dis != null && dis.size() > 0) {
+            String deptName = dis.get(0).getExtraProperty();
+            QueryWrapper<DeptInfo> deptInfoQueryWrapper = new QueryWrapper<>();
+            deptInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
+                    eq("name", deptName);
+            DeptInfo deptInfo = deptInfoFacade.getOne(deptInfoQueryWrapper);
+            if (deptInfo == null) {
+                throw new CommonException(CommonErrorCode.NOT_EXISTS, "科室信息不存在");
+            }
+
+            QueryWrapper<DeptVital> deptVitalQueryWrapper = new QueryWrapper<>();
+            deptVitalQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
+                    eq("dept_id", deptInfo.getId());
+            List<DeptVital> deptVitalList = deptVitalFacade.list(deptVitalQueryWrapper);
+            if (deptVitalList.size() > 0) {
+                Map<Long, DeptVital> deptVitalMap = EntityUtil.makeEntityMap(deptVitalList, "vitalId");
+                //排序
+                QueryWrapper<VitalOrder> vitalOrderQueryWrapper = new QueryWrapper<>();
+                vitalOrderQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
+                        in("question_id", deptVitalMap.keySet()).
+                        orderByAsc("order_no");
+                List<VitalOrder> vitalOrderList = vitalOrderFacade.list(vitalOrderQueryWrapper);
+                Map<Long, VitalOrder> vitalOrderMap = EntityUtil.makeEntityMap(vitalOrderList, "question_id");
+                //标签列表
+                /*QueryWrapper<QuestionInfo> vitalQueryWrapper = new QueryWrapper<>();
+                vitalQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
+                        in("id", deptVitalMap.keySet());
+                List<QuestionInfo> vitalList = questionFacade.list(vitalQueryWrapper);
+                Map<Long, QuestionInfo> vitalQuestionMap = EntityUtil.makeEntityMap(vitalList, "id");*/
+                for (Map.Entry<Long, VitalOrder> entry : vitalOrderMap.entrySet()) {
+                    QuestionVO questionVO = new QuestionVO();
+                    questionVO.setAge(pushVO.getAge());
+                    questionVO.setSexType(pushVO.getSex());
+                    questionVO.setId(entry.getKey());
+                    QuestionDTO questionDTO = questionFacade.getById(questionVO);
+                    //QuestionInfo vitalQuestion = vitalQuestionMap.get(entry.getKey());
+                    if (questionDTO != null) {
+                        vitalMap.put(questionDTO.getTagName(), questionDTO);
+                    }
+                }
+                pushDTO.setVitalMap(vitalMap);
+            }
+        }
+        return pushDTO;
+    }
+
+    /**
+     * 将list 转换成 map
+     *
+     * @param list
+     * @return
+     */
+    public Map<String, Object> list2Map(List<FeatureRate> list) {
+        Map<String, Object> map = new HashMap<>();
+        for (FeatureRate featureRate : list) {
+            map.put(featureRate.getFeatureName(), null);
+        }
+        return map;
+    }
+}

+ 28 - 1
icss-service/src/main/java/com/diagbot/facade/QuestionFacade.java

@@ -3,10 +3,13 @@ package com.diagbot.facade;
 import com.diagbot.dto.QuestionDTO;
 import com.diagbot.entity.QuestionDetail;
 import com.diagbot.entity.QuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
 import com.diagbot.enums.ControlTypeEnum;
 import com.diagbot.service.impl.QuestionInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.ListUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.vo.QuestionIdsVO;
 import com.diagbot.vo.QuestionVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -56,7 +59,7 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
 //        res.setQuestionRelationList(questionRelationDTO);
 
         //获取子标签
-        List<QuestionInfo> questionMapping = this.getByQuestionMapping(paramMap);
+        List<QuestionInfoWrapper> questionMapping = this.getByQuestionMapping(paramMap);
         List<QuestionDTO> sonQuestionList = BeanUtil.listCopyTo(questionMapping, QuestionDTO.class);
         res.setQuestionMapping(sonQuestionList);
         //获取子标签的明细项
@@ -69,4 +72,28 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
         return res;
     }
 
+
+
+    /**
+     * 查询多个id返回标签内容
+     *
+     * @param questionIdsVO 获取标签内容参数
+     * @return 标签内容
+     */
+    public Map<Long, Object> getByIds(QuestionIdsVO questionIdsVO) {
+        Map<Long, Object> 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));
+            questionVO.setAge(questionIdsVO.getAge());
+            questionVO.setSexType(questionIdsVO.getAge());
+            QuestionDTO item = this.getById(questionVO);
+            data.put(item.getId(), item);
+        }
+        return data;
+    }
 }

+ 145 - 0
icss-service/src/main/java/com/diagbot/facade/TemplateInfoFacade.java

@@ -0,0 +1,145 @@
+package com.diagbot.facade;
+
+import java.util.List;
+
+import org.springframework.stereotype.Component;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.diagbot.dto.TemplateInfoDTO;
+import com.diagbot.entity.TemplateInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.TemplateInfoServiceImpl;
+import com.diagbot.util.DateUtil;
+import com.diagbot.vo.TemplateInfoRevampVO;
+import com.diagbot.vo.TemplateInfoVO;
+import com.diagbot.vo.TemplateInfosIdVO;
+import com.diagbot.vo.TemplateInfosVO;
+
+/**
+ * @author wangfeng
+ * @Description: 病例模板
+ * @date 2018年11月16日 上午11:24:36
+ */
+@Component
+public class TemplateInfoFacade extends TemplateInfoServiceImpl {
+
+	/**
+	 * 
+	 * @param templateInfo
+	 * @return 医生病例模板信息
+	 */
+	public List<TemplateInfoDTO> findByDoctorIdTemplates(TemplateInfoVO templateInfoVO) {
+		//根据传入的医生id和部门id还有医院id在数据表中查出相应的模板数据
+		TemplateInfo templateInfo = new TemplateInfo();
+		templateInfo.setDoctorId(templateInfoVO.getDoctorId());//医生id
+		templateInfo.setHospitalDeptId(templateInfoVO.getHospitalDeptId());//部门id
+		templateInfo.setHospitalId(templateInfoVO.getHospitalId());//医院id
+		List<TemplateInfoDTO> data = findByDoctorIdTemplate(templateInfo);
+		
+		return data;
+	}
+
+	/**
+	 * 根据模板id 修改模板名
+	 * 
+	 * @param templateInfoRevampVO
+	 * @return
+	 */
+	public boolean updateByIdUsName(TemplateInfoRevampVO templateInfoRevampVO) {
+		//1.先判断数据是否存在有效
+		QueryWrapper<TemplateInfo> templateInfoFand = new QueryWrapper<>();
+		templateInfoFand.eq("is_deleted", IsDeleteEnum.N.getKey())
+		                .eq("id", templateInfoRevampVO.getId());
+		TemplateInfo data = getOne(templateInfoFand);
+		if (data == null) {
+			throw new CommonException(CommonErrorCode.NOT_EXISTS, "该模板不存在");
+		}
+		//2.再判断该医生下模板名是否重复重在
+		QueryWrapper<TemplateInfo> templates = new QueryWrapper<>();
+		       templates.eq("name", templateInfoRevampVO.getModeName())
+		                .eq("doctor_id", templateInfoRevampVO.getDoctorId())
+				        .eq("hospital_dept_id", templateInfoRevampVO.getHospitalDeptId())
+				        .eq("hospital_id", templateInfoRevampVO.getHospitalId())
+				        .eq("is_deleted", IsDeleteEnum.N.getKey());
+		TemplateInfo datas = getOne(templates);
+		if (datas != null) {
+			throw new CommonException(CommonErrorCode.NOT_EXISTS, "该模板名已存在");
+		}
+		//3.修改表数据的模板名字
+		TemplateInfo templateInfo = new TemplateInfo();
+		templateInfo.setId(templateInfoRevampVO.getId());//模板id
+		templateInfo.setName(templateInfoRevampVO.getModeName());//模板名称
+		templateInfo.setGmtModified(DateUtil.now());//修改时间
+		boolean res = updateById(templateInfo);
+		if (!res) {
+			throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL);
+		}
+		
+		return res;
+	}
+
+	/**
+	 * 保存模板
+	 * 
+	 * @param templateInfoRevampVO
+	 * @return
+	 */
+	public boolean saveTemplateInfo(TemplateInfosVO templateInfosVO) {
+        //1.判断该医生下是否存在模板名相同的数据
+		TemplateInfo templateInfo = new TemplateInfo();
+		QueryWrapper<TemplateInfo> templateInfoFand = new QueryWrapper<>();
+		templateInfoFand.eq("name", templateInfosVO.getModeName())
+		                .eq("doctor_id", templateInfosVO.getDoctorId())
+				        .eq("hospital_dept_id", templateInfosVO.getHospitalDeptId())
+				        .eq("hospital_id", templateInfosVO.getHospitalId())
+				        .eq("is_deleted", IsDeleteEnum.N.getKey());
+		TemplateInfo data = getOne(templateInfoFand);
+		if (data != null) {
+			throw new CommonException(CommonErrorCode.NOT_EXISTS, "该模板名存在");
+		}
+		//2.获取传入的数据,保存到数据表中。
+		templateInfo.setCreator(templateInfosVO.getDoctorId().toString());//创建人id
+		templateInfo.setDoctorId(templateInfosVO.getDoctorId());//医生id
+		templateInfo.setGmtCreate(DateUtil.now());//创建时间
+		templateInfo.setHospitalDeptId(templateInfosVO.getHospitalDeptId());//部门id
+		templateInfo.setHospitalId(templateInfosVO.getHospitalId());//医院id
+		templateInfo.setPreview(templateInfosVO.getPreview());//文本的展示
+		templateInfo.setDataJson(templateInfosVO.getDataJson());//页面json
+		templateInfo.setName(templateInfosVO.getModeName());//模板名称
+		templateInfo.setType(templateInfosVO.getModeType());//模板类型
+		boolean res = save(templateInfo);
+		if (!res) {
+			throw new CommonException(CommonErrorCode.INSERT_DATA_FAILED);
+		}
+		
+		return res;
+	}
+
+	/**
+	 * 根据模板id批量删除模板
+	 * 
+	 * @param templateInfosIdVO
+	 * @return
+	 */
+	public boolean cancelTemplateInfo(TemplateInfosIdVO templateInfosIdVO) {
+		//1.获取传入的ids数据
+		String ids = templateInfosIdVO.getIds();
+		//2.截取到最后一个
+		String substring = ids.substring(0, ids.length());
+		//System.out.println(substring);
+		//3.以逗号分割
+		String[] splitIds = substring.split(",");
+		//把分割的id数据传入对象中,在表中批量删除
+		UpdateWrapper<TemplateInfo> templateInfoNew = new UpdateWrapper<>();
+		templateInfoNew.in("id", splitIds)
+		               .eq("is_deleted", IsDeleteEnum.N.getKey())
+		               .set("is_deleted",IsDeleteEnum.Y.getKey());
+		boolean res = update(new TemplateInfo(), templateInfoNew);
+		
+		return res;
+	}
+
+}

+ 34 - 0
icss-service/src/main/java/com/diagbot/facade/TranFieldInfoFacade.java

@@ -0,0 +1,34 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.TranFieldInfoServiceImpl;
+import com.diagbot.vo.TranFieldInfoVO;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/21 14:13
+ */
+@Component
+public class TranFieldInfoFacade extends TranFieldInfoServiceImpl {
+
+
+    /**
+     * 根据uuid获取相关信息
+     * @param info
+     * @return
+     */
+    public List<TranFieldInfoDTO> getInfoByUuid(TranFieldInfoVO info){
+        List<TranFieldInfoDTO> tranFieldInfoDTOList = this.getInfosByUuid(info);
+        if(tranFieldInfoDTOList == null || tranFieldInfoDTOList.size() == 0){
+            throw new CommonException(CommonErrorCode.NOT_EXISTS,
+                    "获取信息失败");
+        }
+        return tranFieldInfoDTOList;
+    }
+}

+ 13 - 0
icss-service/src/main/java/com/diagbot/facade/VitalOrderFacade.java

@@ -0,0 +1,13 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.VitalOrderServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2018/11/20 17:17
+ */
+@Component
+public class VitalOrderFacade extends VitalOrderServiceImpl {
+}

+ 27 - 0
icss-service/src/main/java/com/diagbot/mapper/DeptInfoMapper.java

@@ -0,0 +1,27 @@
+package com.diagbot.mapper;
+
+import com.diagbot.dto.DeptInfoDTO;
+import com.diagbot.entity.DeptInfo;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 科室信息表 Mapper 接口
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-19
+ */
+public interface DeptInfoMapper extends BaseMapper<DeptInfo> {
+
+    /**
+     *  获取科室信息
+     * @param deptCode
+     * @param hospitalCode
+     * @return
+     */
+    public List<DeptInfoDTO> getDeptInfos(@Param("deptCode")String deptCode, @Param("hospitalCode")String hospitalCode);
+}

+ 28 - 0
icss-service/src/main/java/com/diagbot/mapper/DoctorInfoMapper.java

@@ -0,0 +1,28 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.DoctorInfoDTO;
+import com.diagbot.entity.DoctorInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医生信息表 Mapper 接口
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+public interface DoctorInfoMapper extends BaseMapper<DoctorInfo> {
+
+    /**
+     *  获取医生信息
+     * @param doctorCode
+     * @param hospitalCode
+     * @param deptCode
+     * @return
+     */
+    public List<DoctorInfoDTO> getDoctorInfos(@Param("doctorCode") String doctorCode, @Param("hospitalCode")String hospitalCode, @Param("deptCode")String deptCode);
+}

+ 16 - 0
icss-service/src/main/java/com/diagbot/mapper/HospitalDeptMapper.java

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.HospitalDept;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 医院科室信息表 Mapper 接口
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+public interface HospitalDeptMapper extends BaseMapper<HospitalDept> {
+
+}

+ 27 - 0
icss-service/src/main/java/com/diagbot/mapper/HospitalInfoMapper.java

@@ -0,0 +1,27 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.HospitalInfoDTO;
+import com.diagbot.entity.HospitalInfo;
+import com.diagbot.vo.HospitalInfoVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医院信息表 Mapper 接口
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+public interface HospitalInfoMapper extends BaseMapper<HospitalInfo> {
+
+
+    /**
+     * 获取医院信息
+     * @param hospitalInfoVO
+     * @return
+     */
+    public List<HospitalInfoDTO> getHospitalInfos(HospitalInfoVO hospitalInfoVO);
+}

+ 16 - 0
icss-service/src/main/java/com/diagbot/mapper/ModuleDetailMapper.java

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.ModuleDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 模型明细表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-11-22
+ */
+public interface ModuleDetailMapper extends BaseMapper<ModuleDetail> {
+
+}

+ 33 - 0
icss-service/src/main/java/com/diagbot/mapper/PatientInfoMapper.java

@@ -0,0 +1,33 @@
+package com.diagbot.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.GetTopPatientInfoDTO;
+import com.diagbot.dto.PatientInfoDTO;
+import com.diagbot.entity.PatientInfo;
+import com.diagbot.vo.GetTopPatientInfoVO;
+
+/**
+ * @Description: 患者信息
+ * @Author: wangyu
+ * @Date: 13:09 2018/11/19
+ */
+public interface PatientInfoMapper extends BaseMapper<PatientInfo> {
+    /**
+     * 获取患者信息
+     * @param patientCode,hospitalCode
+     * @return
+     */
+    public List<PatientInfoDTO> getPatientInfos(@Param("patientCode") String patientCode, @Param("hospitalCode") String hospitalCode);
+    
+    /**
+     * 顶部病人医生科室信息查询
+     * @param getTopPatientInfoVO
+     * @return
+     */
+    GetTopPatientInfoDTO getTopPatientInfo(@RequestBody GetTopPatientInfoVO getTopPatientInfoVO);
+}

+ 16 - 0
icss-service/src/main/java/com/diagbot/mapper/PrintRecordMapper.java

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.PrintRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 打印记录表 Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-19
+ */
+public interface PrintRecordMapper extends BaseMapper<PrintRecord> {
+
+}

+ 2 - 1
icss-service/src/main/java/com/diagbot/mapper/QuestionInfoMapper.java

@@ -2,6 +2,7 @@ package com.diagbot.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.diagbot.entity.QuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
 
 import java.util.List;
 import java.util.Map;
@@ -30,7 +31,7 @@ public interface QuestionInfoMapper extends BaseMapper<QuestionInfo> {
      * @param map 参数
      * @return
      */
-    public List<QuestionInfo> getByQuestionMapping(Map map);
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map);
 
     /**
      *  根据questionRelation获取标签信息

+ 22 - 0
icss-service/src/main/java/com/diagbot/mapper/TemplateInfoMapper.java

@@ -0,0 +1,22 @@
+package com.diagbot.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.TemplateInfoDTO;
+import com.diagbot.entity.TemplateInfo;
+
+/**
+ * <p>
+ * 模板表 Mapper 接口
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-16
+ */
+public interface TemplateInfoMapper extends BaseMapper<TemplateInfo> {
+	
+	//根据医生id查询该医生保存的病例模板
+	public List<TemplateInfoDTO> findByDoctorIdTemplate(TemplateInfo templateInfo);
+
+}

+ 21 - 0
icss-service/src/main/java/com/diagbot/mapper/TranFieldInfoMapper.java

@@ -0,0 +1,21 @@
+package com.diagbot.mapper;
+
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.entity.TranFieldInfo;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.vo.TranFieldInfoVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 字段对应表 Mapper 接口
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-21
+ */
+public interface TranFieldInfoMapper extends BaseMapper<TranFieldInfo> {
+
+    public List<TranFieldInfoDTO> getInfosByUuid(TranFieldInfoVO tranFieldInfoVO);
+}

+ 26 - 0
icss-service/src/main/java/com/diagbot/service/DeptInfoService.java

@@ -0,0 +1,26 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.DeptInfoDTO;
+import com.diagbot.entity.DeptInfo;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 科室信息表 服务类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-19
+ */
+public interface DeptInfoService extends IService<DeptInfo> {
+
+    /**
+     *  获取科室信息
+     * @param deptCode
+     * @param hospitalCode
+     * @return
+     */
+    public List<DeptInfoDTO> getDeptInfos(String deptCode,String hospitalCode);
+}

+ 28 - 0
icss-service/src/main/java/com/diagbot/service/DoctorInfoService.java

@@ -0,0 +1,28 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.DoctorInfoDTO;
+import com.diagbot.entity.DoctorInfo;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医生信息表 服务类
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+public interface DoctorInfoService extends IService<DoctorInfo> {
+
+
+    /**
+     *  获取医生信息
+     * @param doctorCode
+     * @param hospitalCode
+     * @param deptCode
+     * @return
+     */
+    public List<DoctorInfoDTO> getDoctorInfos(String doctorCode, String hospitalCode, String deptCode);
+}

+ 16 - 0
icss-service/src/main/java/com/diagbot/service/HospitalDeptService.java

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.HospitalDept;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 医院科室信息表 服务类
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+public interface HospitalDeptService extends IService<HospitalDept> {
+
+}

+ 26 - 0
icss-service/src/main/java/com/diagbot/service/HospitalInfoService.java

@@ -0,0 +1,26 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.HospitalInfoDTO;
+import com.diagbot.entity.HospitalInfo;
+import com.diagbot.vo.HospitalInfoVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医院信息表 服务类
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+public interface HospitalInfoService extends IService<HospitalInfo> {
+
+    /**
+     * 获取医院信息
+     * @param hospitalInfoVO
+     * @return
+     */
+    public List<HospitalInfoDTO> getHospitalInfos(HospitalInfoVO hospitalInfoVO);
+}

+ 16 - 0
icss-service/src/main/java/com/diagbot/service/ModuleDetailService.java

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.ModuleDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 模型明细表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-11-22
+ */
+public interface ModuleDetailService extends IService<ModuleDetail> {
+
+}

+ 20 - 0
icss-service/src/main/java/com/diagbot/service/PatientInfoService.java

@@ -0,0 +1,20 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.PatientInfoDTO;
+import com.diagbot.entity.PatientInfo;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 患者信息表 服务类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-19
+ */
+public interface PatientInfoService extends IService<PatientInfo> {
+
+    public List<PatientInfoDTO> getPatientInfos(String patientCode, String hospitalCode);
+}

+ 16 - 0
icss-service/src/main/java/com/diagbot/service/PrintRecordService.java

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.PrintRecord;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 打印记录表 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-19
+ */
+public interface PrintRecordService extends IService<PrintRecord> {
+
+}

+ 2 - 1
icss-service/src/main/java/com/diagbot/service/QuestionInfoService.java

@@ -2,6 +2,7 @@ package com.diagbot.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.diagbot.entity.QuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
 
 import java.util.List;
 import java.util.Map;
@@ -29,7 +30,7 @@ public interface QuestionInfoService extends IService<QuestionInfo> {
      * @param map 参数
      * @return
      */
-    public List<QuestionInfo> getByQuestionMapping(Map map);
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map);
 
 
     /**

+ 25 - 0
icss-service/src/main/java/com/diagbot/service/TemplateInfoService.java

@@ -0,0 +1,25 @@
+package com.diagbot.service;
+
+import com.diagbot.dto.TemplateInfoDTO;
+import com.diagbot.entity.TemplateInfo;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 模板表 服务类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-16
+ */
+public interface TemplateInfoService extends IService<TemplateInfo> {
+	
+	//根据医生id查询该医生保存的病例模板
+	public List<TemplateInfoDTO> findByDoctorIdTemplate(TemplateInfo templateInfo);
+	
+	public boolean updateById(TemplateInfo templateInfo);
+
+}

+ 21 - 0
icss-service/src/main/java/com/diagbot/service/TranFieldInfoService.java

@@ -0,0 +1,21 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.entity.TranFieldInfo;
+import com.diagbot.vo.TranFieldInfoVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 字段对应表 服务类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-21
+ */
+public interface TranFieldInfoService extends IService<TranFieldInfo> {
+
+    public List<TranFieldInfoDTO> getInfosByUuid(TranFieldInfoVO tranFieldInfoVO);
+}

+ 27 - 0
icss-service/src/main/java/com/diagbot/service/impl/DeptInfoServiceImpl.java

@@ -0,0 +1,27 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.dto.DeptInfoDTO;
+import com.diagbot.entity.DeptInfo;
+import com.diagbot.mapper.DeptInfoMapper;
+import com.diagbot.service.DeptInfoService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 科室信息表 服务实现类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-19
+ */
+@Service
+public class DeptInfoServiceImpl extends ServiceImpl<DeptInfoMapper, DeptInfo> implements DeptInfoService {
+
+    @Override
+    public List<DeptInfoDTO> getDeptInfos(String deptCode, String hospitalCode) {
+        return baseMapper.getDeptInfos(deptCode,hospitalCode);
+    }
+}

+ 27 - 0
icss-service/src/main/java/com/diagbot/service/impl/DoctorInfoServiceImpl.java

@@ -0,0 +1,27 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.dto.DoctorInfoDTO;
+import com.diagbot.entity.DoctorInfo;
+import com.diagbot.mapper.DoctorInfoMapper;
+import com.diagbot.service.DoctorInfoService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医生信息表 服务实现类
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+@Service
+public class DoctorInfoServiceImpl extends ServiceImpl<DoctorInfoMapper, DoctorInfo> implements DoctorInfoService {
+
+    @Override
+    public List<DoctorInfoDTO> getDoctorInfos(String doctorCode, String hospitalCode, String deptCode) {
+        return baseMapper.getDoctorInfos(doctorCode,hospitalCode,deptCode);
+    }
+}

+ 20 - 0
icss-service/src/main/java/com/diagbot/service/impl/HospitalDeptServiceImpl.java

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.HospitalDept;
+import com.diagbot.mapper.HospitalDeptMapper;
+import com.diagbot.service.HospitalDeptService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 医院科室信息表 服务实现类
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+@Service
+public class HospitalDeptServiceImpl extends ServiceImpl<HospitalDeptMapper, HospitalDept> implements HospitalDeptService {
+
+}

+ 28 - 0
icss-service/src/main/java/com/diagbot/service/impl/HospitalInfoServiceImpl.java

@@ -0,0 +1,28 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.HospitalInfoDTO;
+import com.diagbot.entity.HospitalInfo;
+import com.diagbot.mapper.HospitalInfoMapper;
+import com.diagbot.service.HospitalInfoService;
+import com.diagbot.vo.HospitalInfoVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 医院信息表 服务实现类
+ * </p>
+ *
+ * @author rengb
+ * @since 2018-11-19
+ */
+@Service
+public class HospitalInfoServiceImpl extends ServiceImpl<HospitalInfoMapper, HospitalInfo> implements HospitalInfoService {
+
+    @Override
+    public List<HospitalInfoDTO> getHospitalInfos(HospitalInfoVO hospitalInfoVO) {
+        return baseMapper.getHospitalInfos(hospitalInfoVO);
+    }
+}

+ 20 - 0
icss-service/src/main/java/com/diagbot/service/impl/ModuleDetailServiceImpl.java

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.ModuleDetail;
+import com.diagbot.mapper.ModuleDetailMapper;
+import com.diagbot.service.ModuleDetailService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 模型明细表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-11-22
+ */
+@Service
+public class ModuleDetailServiceImpl extends ServiceImpl<ModuleDetailMapper, ModuleDetail> implements ModuleDetailService {
+
+}

+ 27 - 0
icss-service/src/main/java/com/diagbot/service/impl/PatientInfoServiceImpl.java

@@ -0,0 +1,27 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.dto.PatientInfoDTO;
+import com.diagbot.entity.PatientInfo;
+import com.diagbot.mapper.PatientInfoMapper;
+import com.diagbot.service.PatientInfoService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 患者信息表 服务实现类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-19
+ */
+@Service
+public class PatientInfoServiceImpl extends ServiceImpl<PatientInfoMapper, PatientInfo> implements PatientInfoService {
+
+    @Override
+    public List<PatientInfoDTO> getPatientInfos(String patientCode, String hospitalCode) {
+        return baseMapper.getPatientInfos(patientCode,hospitalCode);
+    }
+}

+ 20 - 0
icss-service/src/main/java/com/diagbot/service/impl/PrintRecordServiceImpl.java

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.PrintRecord;
+import com.diagbot.mapper.PrintRecordMapper;
+import com.diagbot.service.PrintRecordService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 打印记录表 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-19
+ */
+@Service
+public class PrintRecordServiceImpl extends ServiceImpl<PrintRecordMapper, PrintRecord> implements PrintRecordService {
+
+}

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

@@ -1,9 +1,10 @@
 package com.diagbot.service.impl;
 
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.diagbot.entity.QuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
 import com.diagbot.mapper.QuestionInfoMapper;
 import com.diagbot.service.QuestionInfoService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -26,7 +27,7 @@ public class QuestionInfoServiceImpl extends ServiceImpl<QuestionInfoMapper, Que
     }
 
     @Override
-    public List<QuestionInfo> getByQuestionMapping(Map map) {
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map) {
         return baseMapper.getByQuestionMapping(map);
     }
 

+ 34 - 0
icss-service/src/main/java/com/diagbot/service/impl/TemplateInfoServiceImpl.java

@@ -0,0 +1,34 @@
+package com.diagbot.service.impl;
+
+import java.util.List;
+
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.TemplateInfoDTO;
+import com.diagbot.entity.TemplateInfo;
+import com.diagbot.mapper.TemplateInfoMapper;
+import com.diagbot.service.TemplateInfoService;
+
+/**
+ * <p>
+ * 模板表 服务实现类
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-16
+ */
+@Service
+public class TemplateInfoServiceImpl extends ServiceImpl<TemplateInfoMapper, TemplateInfo> implements TemplateInfoService {
+
+	/**
+	 * 根据医生id查询该医生保存的病例模板
+	 */
+	@Override
+	public List<TemplateInfoDTO> findByDoctorIdTemplate(TemplateInfo templateInfo) {
+		
+		 return baseMapper.findByDoctorIdTemplate(templateInfo);
+	}
+	
+	
+}

+ 28 - 0
icss-service/src/main/java/com/diagbot/service/impl/TranFieldInfoServiceImpl.java

@@ -0,0 +1,28 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.entity.TranFieldInfo;
+import com.diagbot.mapper.TranFieldInfoMapper;
+import com.diagbot.service.TranFieldInfoService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.vo.TranFieldInfoVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 字段对应表 服务实现类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-21
+ */
+@Service
+public class TranFieldInfoServiceImpl extends ServiceImpl<TranFieldInfoMapper, TranFieldInfo> implements TranFieldInfoService {
+
+    @Override
+    public List<TranFieldInfoDTO> getInfosByUuid(TranFieldInfoVO tranFieldInfoVO) {
+        return baseMapper.getInfosByUuid(tranFieldInfoVO);
+    }
+}

+ 20 - 0
icss-service/src/main/java/com/diagbot/vo/DeptInfoVO.java

@@ -0,0 +1,20 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/19 18:58
+ */
+@Getter
+@Setter
+public class DeptInfoVO {
+    @NotNull(message = "请输入科室编码")
+    private String deptCode;
+    @NotNull(message = "请输入医院编码")
+    private String hosptialCode;
+}

+ 22 - 0
icss-service/src/main/java/com/diagbot/vo/DoctorInfoVO.java

@@ -0,0 +1,22 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/19 19:38
+ */
+@Getter
+@Setter
+public class DoctorInfoVO {
+    @NotNull(message = "请输入科室编码")
+    private String deptCode;
+    @NotNull(message = "请输入医院编码")
+    private String hosptialCode;
+    @NotNull(message = "请输入医生编码")
+    private String doctorCode;
+}

+ 44 - 0
icss-service/src/main/java/com/diagbot/vo/GetTopPatientInfoVO.java

@@ -0,0 +1,44 @@
+/**
+ * 
+ */
+package com.diagbot.vo;
+
+import javax.validation.constraints.NotBlank;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description
+ * @author rgb
+ * @time 2018年11月19日下午4:58:37
+ */
+@Getter
+@Setter
+public class GetTopPatientInfoVO {
+	
+	/**
+	 * 医院编号
+	 */
+	@NotBlank(message="医院编号必填")
+	private String hospitalCode;
+	
+	/**
+	 * 医院科室编号
+	 */
+	@NotBlank(message="医院科室编号必填")
+	private String hospitalDeptCode;
+	
+	/**
+	 * 医院医生编号
+	 */
+	@NotBlank(message="医院医生编号必填")
+	private String doctorCode;
+	
+	/**
+	 * 医院患者编号
+	 */
+	@NotBlank(message="医院患者编号必填")
+	private String patientCode;
+
+}

+ 27 - 0
icss-service/src/main/java/com/diagbot/vo/HospitalInfoVO.java

@@ -0,0 +1,27 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/22 13:42
+ */
+@Getter
+@Setter
+public class HospitalInfoVO {
+
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 医院编码
+     */
+    @NotNull(message = "请输入医院编码")
+    private String code;
+}

+ 2 - 1
icss-service/src/main/java/com/diagbot/vo/IntroduceByQuestionVO.java

@@ -13,8 +13,9 @@ import javax.validation.constraints.NotNull;
 @Getter
 @Setter
 public class IntroduceByQuestionVO {
-    @NotNull(message = "请输入标签id")
     private Long questionId;
+    private String tagName;
     @NotNull(message = "请输入标签类型")
     private Integer type;
+
 }

+ 16 - 0
icss-service/src/main/java/com/diagbot/vo/ModuleVO.java

@@ -0,0 +1,16 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description: 模型入参
+ * @author: zhoutg
+ * @time: 2018/8/6 10:16
+ */
+@Getter
+@Setter
+public class ModuleVO {
+    private Integer sexType;
+    private Integer age;
+}

+ 20 - 0
icss-service/src/main/java/com/diagbot/vo/PatientInfoVO.java

@@ -0,0 +1,20 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/19 11:14
+ */
+@Getter
+@Setter
+public class PatientInfoVO {
+    @NotNull(message = "请输入病人编码")
+    private String patientCode;
+    @NotNull(message = "请输入医院编码")
+    private String hosptialCode;
+}

+ 63 - 0
icss-service/src/main/java/com/diagbot/vo/PrintRecordsVO.java

@@ -0,0 +1,63 @@
+package com.diagbot.vo;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: 保存打印记录
+ * @date 2018年11月19日 上午10:25:00
+ */
+@Getter
+@Setter
+public class PrintRecordsVO {
+	/**
+	 * 名称
+	 */
+	@NotBlank(message = "请输打印的名称")
+	private String name;
+	/**
+     * 医生id
+     */
+	@NotNull(message = "请输入医生id")
+    private Long doctorId;
+
+    /**
+     * 医院编码
+     */
+	@NotNull(message = "请输入医院id")
+    private Long hospitalId;
+
+    /**
+     * 患者id
+     */
+	@NotNull(message = "请输入患者id")
+    private Long patientId;
+	/**
+     * 医院部门id
+     */
+	@NotNull(message = "请输入医院部门id")
+	private Long hospitalDeptId;
+    /**
+     * 问诊号
+     */
+	@NotBlank(message = "请输入就诊号")
+    private String inquiryCode;
+
+    /**
+     * 文本内容
+     */
+	@NotBlank(message = "请输入文本内容")
+    private String content;
+
+    /**
+     * 内容JSON字符串(打印页面展示)
+     */
+	@NotBlank(message = "请输入内容JSON字符串")
+    private String dataJson;
+
+}

+ 28 - 0
icss-service/src/main/java/com/diagbot/vo/PushVO.java

@@ -0,0 +1,28 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2018/11/20 13:38
+ */
+@Getter
+@Setter
+public class PushVO {
+    @NotNull(message = "请输入年龄")
+    private Integer age;
+    @NotNull(message = "请输入性别")
+    private Integer sex;
+    private String symptom;
+    private String diag;
+    private String vital;
+    private String lis;
+    private String pacs;
+    private String past;
+    private String other;
+    private String featureType;
+}

+ 17 - 0
icss-service/src/main/java/com/diagbot/vo/QuestionIdsVO.java

@@ -0,0 +1,17 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: zhoutg
+ * @time: 2018/8/6 10:16
+ */
+@Getter
+@Setter
+public class QuestionIdsVO {
+    private String ids;
+    private Integer sexType;
+    private Integer age;
+}

+ 39 - 0
icss-service/src/main/java/com/diagbot/vo/TemplateInfoRevampVO.java

@@ -0,0 +1,39 @@
+package com.diagbot.vo;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: 修改模板名入参
+ * @date 2018年11月16日 下午2:41:01
+ */
+@Getter
+@Setter
+public class TemplateInfoRevampVO {
+	@NotNull(message = "请输入模板id")
+	private Long id;//模板id
+	@NotBlank(message = "请输入模板名")
+	private String modeName;//模板名
+	/**
+     * 医生id
+     */
+	@NotNull(message = "请输入医生id")
+    private Long doctorId;
+
+    /**
+     * 医院编码
+     */
+	@NotNull(message = "请输入医院Id")
+    private Long hospitalId;
+	/**
+	 * 部门id
+	 */
+	@NotNull(message = "请输入部门id")
+	private Long hospitalDeptId;//部门id
+	
+}

+ 28 - 0
icss-service/src/main/java/com/diagbot/vo/TemplateInfoVO.java

@@ -0,0 +1,28 @@
+package com.diagbot.vo;
+
+import javax.validation.constraints.NotNull;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class TemplateInfoVO {
+	
+	/**
+     * 医生id
+     */
+	@NotNull(message = "请输入医生id")
+    private Long doctorId;
+
+    /**
+     * 医院编码
+     */
+	@NotNull(message = "请输入医院Id")
+    private Long hospitalId;
+	/**
+	 * 部门id
+	 */
+	@NotNull(message = "请输入部门id")
+	private Long hospitalDeptId;//部门id
+}

+ 19 - 0
icss-service/src/main/java/com/diagbot/vo/TemplateInfosIdVO.java

@@ -0,0 +1,19 @@
+package com.diagbot.vo;
+
+import javax.validation.constraints.NotBlank;
+
+import lombok.Getter;
+import lombok.Setter;
+/***
+ * 
+ * @author wangfeng
+ * @Description: 批量删除
+ * @date 2018年11月16日 下午4:57:25
+ */
+@Getter
+@Setter
+public class TemplateInfosIdVO {
+	@NotBlank(message = "请输入模板id")
+	private String ids;
+
+}

+ 0 - 0
icss-service/src/main/java/com/diagbot/vo/TemplateInfosVO.java


Some files were not shown because too many files changed in this diff