Sfoglia il codice sorgente

Merge branch 'dev/diagbotcloud20190918_vital' into dev/diagbotcloud20190924_diagnose2

gaodm 5 anni fa
parent
commit
b21e46f44a
100 ha cambiato i file con 3804 aggiunte e 1378 eliminazioni
  1. 60 0
      aipt-service/src/main/java/com/diagbot/dto/VersionDetailDTO.java
  2. 48 0
      aipt-service/src/main/java/com/diagbot/dto/VersionWrapperDTO.java
  3. 1 1
      icss-service/src/main/java/com/diagbot/entity/VersionDetail.java
  4. 16 3
      icss-service/src/main/java/com/diagbot/entity/VersionInfo.java
  5. 50 50
      icss-service/src/main/java/com/diagbot/facade/VersionDetailFacaed.java
  6. 69 0
      aipt-service/src/main/java/com/diagbot/facade/VersionInfoFacade.java
  7. 0 0
      aipt-service/src/main/java/com/diagbot/mapper/VersionDetailMapper.java
  8. 0 0
      aipt-service/src/main/java/com/diagbot/mapper/VersionInfoMapper.java
  9. 0 0
      aipt-service/src/main/java/com/diagbot/service/VersionDetailService.java
  10. 0 0
      aipt-service/src/main/java/com/diagbot/service/VersionInfoService.java
  11. 0 0
      aipt-service/src/main/java/com/diagbot/service/impl/VersionDetailServiceImpl.java
  12. 0 0
      aipt-service/src/main/java/com/diagbot/service/impl/VersionInfoServiceImpl.java
  13. 18 0
      aipt-service/src/main/java/com/diagbot/vo/VersionVO.java
  14. 1 5
      aipt-service/src/main/java/com/diagbot/web/ConceptDetailController.java
  15. 0 2
      aipt-service/src/main/java/com/diagbot/web/DisTypeController.java
  16. 41 0
      aipt-service/src/main/java/com/diagbot/web/VersionInfoController.java
  17. 0 0
      aipt-service/src/main/resources/mapper/VersionDetailMapper.xml
  18. 0 0
      aipt-service/src/main/resources/mapper/VersionInfoMapper.xml
  19. 1 1
      aipt-service/src/test/java/com/diagbot/CodeGeneration.java
  20. 1 1
      common/pom.xml
  21. 52 0
      common/src/main/java/com/diagbot/enums/ProductTypeEnum.java
  22. 8 0
      data-service/src/main/java/com/diagbot/client/AiptServiceClient.java
  23. 14 17
      data-service/src/main/java/com/diagbot/client/TranServiceClient.java
  24. 11 0
      data-service/src/main/java/com/diagbot/client/hystrix/AiptServiceHystrix.java
  25. 6 10
      data-service/src/main/java/com/diagbot/client/hystrix/TranServiceHystrix.java
  26. 60 0
      data-service/src/main/java/com/diagbot/dto/VersionDetailDTO.java
  27. 48 0
      data-service/src/main/java/com/diagbot/dto/VersionWrapperDTO.java
  28. 34 0
      data-service/src/main/java/com/diagbot/facade/VersionInfoFacade.java
  29. 18 0
      data-service/src/main/java/com/diagbot/vo/VersionVO.java
  30. 39 0
      data-service/src/main/java/com/diagbot/web/VersionInfoController.java
  31. 67 0
      docs/016.20190827全部产品线版本控制/init_med.sql
  32. 945 0
      docs/016.20190827全部产品线版本控制/init_user.sql
  33. 8 0
      icss-service/src/main/java/com/diagbot/client/AiptServiceClient.java
  34. 12 0
      icss-service/src/main/java/com/diagbot/client/hystrix/AiptServiceHystrix.java
  35. 3 0
      icss-service/src/main/java/com/diagbot/dto/ConceptPushDTO.java
  36. 4 1
      icss-service/src/main/java/com/diagbot/dto/QuestionPushDTO.java
  37. 12 34
      icss-service/src/main/java/com/diagbot/facade/VersionInfoFacade.java
  38. 2 0
      icss-service/src/main/java/com/diagbot/vo/TemplateInfoPageVO.java
  39. 18 0
      icss-service/src/main/java/com/diagbot/vo/VersionVO.java
  40. 20 19
      icss-service/src/main/java/com/diagbot/web/TemplateInfoController.java
  41. 3 0
      icss-service/src/main/resources/mapper/TemplateInfoMapper.xml
  42. 1 0
      icssman-service/src/main/java/com/diagbot/dto/QuestionDTO.java
  43. 1 1
      icssman-service/src/main/java/com/diagbot/facade/CacheFacade.java
  44. 47 3
      icssman-service/src/main/java/com/diagbot/facade/QuestionFacade.java
  45. 2 0
      icssman-service/src/main/java/com/diagbot/mapper/QuestionInfoMapper.java
  46. 7 0
      icssman-service/src/main/java/com/diagbot/service/QuestionInfoService.java
  47. 5 0
      icssman-service/src/main/java/com/diagbot/service/impl/QuestionInfoServiceImpl.java
  48. 22 0
      icssman-service/src/main/java/com/diagbot/vo/KLQuestionVO.java
  49. 11 2
      icssman-service/src/main/java/com/diagbot/web/CacheController.java
  50. 3 2
      icssman-service/src/main/java/com/diagbot/web/QuestionInfoController.java
  51. 40 0
      icssman-service/src/main/resources/mapper/QuestionInfoMapper.xml
  52. 4 4
      knowledgeman-service/src/main/java/com/diagbot/client/ICSSManServiceClient.java
  53. 5 5
      knowledgeman-service/src/main/java/com/diagbot/client/hystrix/ICSSManServiceHystrix.java
  54. 2 0
      knowledgeman-service/src/main/java/com/diagbot/config/ResourceServerConfigurer.java
  55. 2 0
      knowledgeman-service/src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java
  56. 2 5
      knowledgeman-service/src/main/java/com/diagbot/dto/LisMappingPageDTO.java
  57. 10 8
      knowledgeman-service/src/main/java/com/diagbot/dto/MultContactListDTO.java
  58. 21 6
      knowledgeman-service/src/main/java/com/diagbot/dto/RelationContactListDTO.java
  59. 60 60
      icssman-service/src/main/java/com/diagbot/dto/VersionDetailDTO.java
  60. 60 0
      knowledgeman-service/src/main/java/com/diagbot/dto/VersionDetailSpecDTO.java
  61. 47 0
      knowledgeman-service/src/main/java/com/diagbot/dto/VersionSpecDTO.java
  62. 61 51
      icssman-service/src/main/java/com/diagbot/dto/VersionWrapperDTO.java
  63. 1 1
      icssman-service/src/main/java/com/diagbot/entity/VersionDetail.java
  64. 19 6
      icssman-service/src/main/java/com/diagbot/entity/VersionInfo.java
  65. 18 0
      knowledgeman-service/src/main/java/com/diagbot/entity/wrapper/LisMappingWrapper.java
  66. 51 0
      knowledgeman-service/src/main/java/com/diagbot/enums/RelationModelTypeEnum.java
  67. 396 265
      knowledgeman-service/src/main/java/com/diagbot/facade/ConceptFacade.java
  68. 66 8
      knowledgeman-service/src/main/java/com/diagbot/facade/LisMappingFacade.java
  69. 13 36
      knowledgeman-service/src/main/java/com/diagbot/facade/MultContactFacade.java
  70. 92 43
      knowledgeman-service/src/main/java/com/diagbot/facade/RelationContactFacade.java
  71. 275 223
      icssman-service/src/main/java/com/diagbot/facade/VersionDetailFacade.java
  72. 322 248
      icssman-service/src/main/java/com/diagbot/facade/VersionInfoFacade.java
  73. 13 1
      knowledgeman-service/src/main/java/com/diagbot/mapper/LisMappingMapper.java
  74. 23 8
      knowledgeman-service/src/main/java/com/diagbot/mapper/RelationMapper.java
  75. 0 0
      knowledgeman-service/src/main/java/com/diagbot/mapper/VersionDetailMapper.java
  76. 0 0
      knowledgeman-service/src/main/java/com/diagbot/mapper/VersionInfoMapper.java
  77. 14 2
      knowledgeman-service/src/main/java/com/diagbot/service/LisMappingService.java
  78. 0 0
      knowledgeman-service/src/main/java/com/diagbot/service/VersionDetailService.java
  79. 0 0
      knowledgeman-service/src/main/java/com/diagbot/service/VersionInfoService.java
  80. 16 5
      knowledgeman-service/src/main/java/com/diagbot/service/impl/EnumsDataServiceImpl.java
  81. 15 1
      knowledgeman-service/src/main/java/com/diagbot/service/impl/LisMappingServiceImpl.java
  82. 0 0
      knowledgeman-service/src/main/java/com/diagbot/service/impl/VersionDetailServiceImpl.java
  83. 0 0
      knowledgeman-service/src/main/java/com/diagbot/service/impl/VersionInfoServiceImpl.java
  84. 40 0
      knowledgeman-service/src/main/java/com/diagbot/vo/DeleteRelationContactVO.java
  85. 6 0
      knowledgeman-service/src/main/java/com/diagbot/vo/GetAllForRelationVO.java
  86. 6 0
      knowledgeman-service/src/main/java/com/diagbot/vo/GetConceptDetailListVO.java
  87. 17 0
      knowledgeman-service/src/main/java/com/diagbot/vo/IdListVO.java
  88. 22 0
      knowledgeman-service/src/main/java/com/diagbot/vo/KLQuestionVO.java
  89. 0 38
      knowledgeman-service/src/main/java/com/diagbot/vo/MultContactListVO.java
  90. 46 0
      knowledgeman-service/src/main/java/com/diagbot/vo/OnlyByRootListVO.java
  91. 11 3
      knowledgeman-service/src/main/java/com/diagbot/vo/RelationContactDetailVO.java
  92. 0 37
      knowledgeman-service/src/main/java/com/diagbot/vo/RelationContactListVO.java
  93. 4 4
      knowledgeman-service/src/main/java/com/diagbot/vo/RelationNodeVO.java
  94. 56 0
      knowledgeman-service/src/main/java/com/diagbot/vo/SingleRelationListVO.java
  95. 19 21
      icssman-service/src/main/java/com/diagbot/vo/VersionDetailIdVO.java
  96. 47 48
      icssman-service/src/main/java/com/diagbot/vo/VersionDetailVO.java
  97. 48 44
      icssman-service/src/main/java/com/diagbot/vo/VersionInfoAllVO.java
  98. 26 26
      icssman-service/src/main/java/com/diagbot/vo/VersionInfoAndDetailIdVO.java
  99. 19 19
      icssman-service/src/main/java/com/diagbot/vo/VersionInfoIdVO.java
  100. 0 0
      icssman-service/src/main/java/com/diagbot/vo/VersionInfoVO.java

+ 60 - 0
aipt-service/src/main/java/com/diagbot/dto/VersionDetailDTO.java

@@ -0,0 +1,60 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:12:12
+ */
+@Getter
+@Setter
+public class VersionDetailDTO {
+	
+	private Long id;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+   // private String creator;
+
+  
+    /**
+     * 版本主表id
+     */
+    private Long versionId;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 描述
+     */
+    private String description;
+
+    /**
+     * 排序号
+     */
+    private String orderNo;
+
+    /**
+     * 1:启动,0:不启用
+     */
+  //  private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 48 - 0
aipt-service/src/main/java/com/diagbot/dto/VersionWrapperDTO.java

@@ -0,0 +1,48 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:09:33
+ */
+@Getter
+@Setter
+public class VersionWrapperDTO {
+	
+	private Long id;
+	/**
+	 * 记录创建时间
+	 */
+	private Date gmtCreate;
+
+	/**
+	 * 创建人,0表示无创建人值
+	 */
+	private String creator;
+
+	/**
+	 * 名称
+	 */
+	private String name;
+
+	private Date refreshTime;
+
+	/**
+	 * 1:启动,0:不启用
+	 */
+	private String status;
+
+	private List<VersionDetailDTO> detail;
+	/**
+	 * 备注
+	 */
+	private String remark;
+
+}

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

@@ -15,7 +15,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
  * @author wangfeng
  * @since 2018-11-20
  */
-@TableName("icss_version_detail")
+@TableName("kl_version_detail")
 public class VersionDetail implements Serializable {
 
     private static final long serialVersionUID = 1L;

+ 16 - 3
icss-service/src/main/java/com/diagbot/entity/VersionInfo.java

@@ -12,10 +12,10 @@ import com.baomidou.mybatisplus.annotation.TableName;
  * 版本信息(关于)
  * </p>
  *
- * @author wangfeng
- * @since 2018-11-20
+ * @author gaodm
+ * @since 2019-08-07
  */
-@TableName("icss_version_info")
+@TableName("kl_version_info")
 public class VersionInfo implements Serializable {
 
     private static final long serialVersionUID = 1L;
@@ -48,6 +48,11 @@ public class VersionInfo implements Serializable {
      */
     private String modifier;
 
+    /**
+     * 产品类型(1:云平台内部;2:云平台外部;3:icss;4:智能分诊;5:数据服务模式;6:智能预问诊)
+     */
+    private Integer productType;
+
     /**
      * 名称
      */
@@ -107,6 +112,13 @@ public class VersionInfo implements Serializable {
     public void setModifier(String modifier) {
         this.modifier = modifier;
     }
+    public Integer getProductType() {
+        return productType;
+    }
+
+    public void setProductType(Integer productType) {
+        this.productType = productType;
+    }
     public String getName() {
         return name;
     }
@@ -145,6 +157,7 @@ public class VersionInfo implements Serializable {
         ", gmtModified=" + gmtModified +
         ", creator=" + creator +
         ", modifier=" + modifier +
+        ", productType=" + productType +
         ", name=" + name +
         ", refreshTime=" + refreshTime +
         ", status=" + status +

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

@@ -1,50 +1,50 @@
-package com.diagbot.facade;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.diagbot.dto.VersionDetailDTO;
-import com.diagbot.entity.VersionDetail;
-import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.enums.StatusEnum;
-import com.diagbot.service.impl.VersionDetailServiceImpl;
-import com.diagbot.util.BeanUtil;
-import org.springframework.stereotype.Component;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 版本详情
- *
- * @author wangfeng
- * @Description: TODO
- * @date 2018年11月21日 上午11:38:40
- */
-@Component
-public class VersionDetailFacaed extends VersionDetailServiceImpl {
-
-    /**
-     * 根据版本id查询版本详情
-     *
-     * @param id
-     * @return
-     */
-    public List<VersionDetailDTO> getById(Long id) {
-        QueryWrapper<VersionDetail> versionDetailQuery = new QueryWrapper<>();
-        Map<String, Object> mapAll = new HashMap<>();
-        mapAll.put("is_deleted", IsDeleteEnum.N.getKey());
-        mapAll.put("version_id", id);
-        mapAll.put("STATUS", StatusEnum.Enable.getKey());
-        versionDetailQuery.allEq(mapAll).orderByAsc("order_no");
-
-        VersionDetail versionDetail = new VersionDetail();
-        versionDetail.setVersionId(id);
-        List<VersionDetail> datas = list(versionDetailQuery);
-        List<VersionDetailDTO> dataNew = new ArrayList<VersionDetailDTO>();
-        //过滤字段
-        dataNew = BeanUtil.listCopyTo(datas, VersionDetailDTO.class);
-        return dataNew;
-
-    }
-}
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.VersionDetailDTO;
+import com.diagbot.entity.VersionDetail;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.StatusEnum;
+import com.diagbot.service.impl.VersionDetailServiceImpl;
+import com.diagbot.util.BeanUtil;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 版本详情
+ *
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:38:40
+ */
+@Component
+public class VersionDetailFacade extends VersionDetailServiceImpl {
+
+    /**
+     * 根据版本id查询版本详情
+     *
+     * @param id
+     * @return
+     */
+    public List<VersionDetailDTO> getById(Long id) {
+        QueryWrapper<VersionDetail> versionDetailQuery = new QueryWrapper<>();
+        Map<String, Object> mapAll = new HashMap<>();
+        mapAll.put("is_deleted", IsDeleteEnum.N.getKey());
+        mapAll.put("version_id", id);
+        mapAll.put("STATUS", StatusEnum.Enable.getKey());
+        versionDetailQuery.allEq(mapAll).orderByAsc("order_no");
+
+        VersionDetail versionDetail = new VersionDetail();
+        versionDetail.setVersionId(id);
+        List<VersionDetail> datas = list(versionDetailQuery);
+        List<VersionDetailDTO> dataNew = new ArrayList<VersionDetailDTO>();
+        //过滤字段
+        dataNew = BeanUtil.listCopyTo(datas, VersionDetailDTO.class);
+        return dataNew;
+
+    }
+}

+ 69 - 0
aipt-service/src/main/java/com/diagbot/facade/VersionInfoFacade.java

@@ -0,0 +1,69 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.VersionDetailDTO;
+import com.diagbot.dto.VersionWrapperDTO;
+import com.diagbot.entity.VersionInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.StatusEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.VersionInfoServiceImpl;
+import com.diagbot.util.IntegerUtil;
+import com.diagbot.vo.VersionVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description: 版本信息
+ * @date 2018年11月21日 上午11:07:01
+ */
+@Component
+public class VersionInfoFacade extends VersionInfoServiceImpl {
+
+    @Autowired
+    VersionDetailFacade versionDetailFacade;
+
+
+    /**
+     * 查询版本信息
+     *
+     * @return
+     */
+    public VersionWrapperDTO getVersionInfoAll(VersionVO versionVO) {
+        //入参配置验证
+        if (null == versionVO) {
+            throw new CommonException(CommonErrorCode.PARAM_IS_NULL);
+        }
+
+        if (IntegerUtil.isNull(versionVO.getProductType())) {
+            throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "产品类型不能为空!");
+        }
+        //查询最新的一条版本信息
+        QueryWrapper<VersionInfo> versionInfoQuery = new QueryWrapper<>();
+        versionInfoQuery.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("product_type", versionVO.getProductType())
+                .eq("STATUS", StatusEnum.Enable.getKey())
+                .orderByDesc("gmt_modified");
+
+        VersionInfo versionInfo = getOne(versionInfoQuery);
+        VersionWrapperDTO versionList = new VersionWrapperDTO();
+
+        if (versionInfo != null) {
+            //当查出的数据不为空时,取到版本id,再去版本明细表中查询详细的信息
+            long id = versionInfo.getId();
+            List<VersionDetailDTO> detail = versionDetailFacade.getById(id);
+            //System.out.println(detail.toString());
+            versionList.setId(versionInfo.getId());
+            versionList.setName(versionInfo.getName());
+            versionList.setRefreshTime(versionInfo.getRefreshTime());
+            versionList.setStatus(versionInfo.getStatus());
+            versionList.setDetail(detail);
+        }
+
+        return versionList;
+    }
+}

icss-service/src/main/java/com/diagbot/mapper/VersionDetailMapper.java → aipt-service/src/main/java/com/diagbot/mapper/VersionDetailMapper.java


icss-service/src/main/java/com/diagbot/mapper/VersionInfoMapper.java → aipt-service/src/main/java/com/diagbot/mapper/VersionInfoMapper.java


icss-service/src/main/java/com/diagbot/service/VersionDetailService.java → aipt-service/src/main/java/com/diagbot/service/VersionDetailService.java


icss-service/src/main/java/com/diagbot/service/VersionInfoService.java → aipt-service/src/main/java/com/diagbot/service/VersionInfoService.java


icss-service/src/main/java/com/diagbot/service/impl/VersionDetailServiceImpl.java → aipt-service/src/main/java/com/diagbot/service/impl/VersionDetailServiceImpl.java


icss-service/src/main/java/com/diagbot/service/impl/VersionInfoServiceImpl.java → aipt-service/src/main/java/com/diagbot/service/impl/VersionInfoServiceImpl.java


+ 18 - 0
aipt-service/src/main/java/com/diagbot/vo/VersionVO.java

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description: 版本信息
+ * @author: gaodm
+ * @time: 2019/8/7 13:26
+ */
+@Getter
+@Setter
+public class VersionVO {
+    /**
+     * 产品类型(1:云平台内部;2:云平台外部;3:icss;4:智能分诊;5:数据服务模式;6:智能预问诊)
+     */
+    private Integer productType;
+}

+ 1 - 5
aipt-service/src/main/java/com/diagbot/web/ConceptDetailController.java

@@ -1,15 +1,11 @@
 package com.diagbot.web;
 
-
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.ConceptIntroduceDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.ConceptDetailFacade;
-import com.diagbot.util.ParamConvertUtil;
-import com.diagbot.vo.ConceptBaseVO;
 import com.diagbot.vo.ConceptIntroduceVO;
 import com.diagbot.vo.ExistListByConceptIdsVO;
-import com.sun.org.apache.xpath.internal.operations.Bool;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -56,7 +52,7 @@ public class ConceptDetailController {
     @PostMapping("/exist")
     @SysLogger("exist")
     @ApiIgnore
-    public RespDTO<Bool> exist(@Valid @RequestBody ConceptIntroduceVO conceptIntroduceVO) {
+    public RespDTO<Boolean> exist(@Valid @RequestBody ConceptIntroduceVO conceptIntroduceVO) {
         Boolean data = conceptDetailFacade.exist(conceptIntroduceVO);
         return RespDTO.onSuc(data);
     }

+ 0 - 2
aipt-service/src/main/java/com/diagbot/web/DisTypeController.java

@@ -1,11 +1,9 @@
 package com.diagbot.web;
 
-
 import com.diagbot.dto.DisTypeDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.DisTypeFacade;
 import com.diagbot.vo.DisTypeVO;
-import com.sun.org.apache.xpath.internal.operations.Bool;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;

+ 41 - 0
aipt-service/src/main/java/com/diagbot/web/VersionInfoController.java

@@ -0,0 +1,41 @@
+package com.diagbot.web;
+
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.VersionWrapperDTO;
+import com.diagbot.facade.VersionInfoFacade;
+import com.diagbot.vo.VersionVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 版本信息(关于) 前端控制器
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-20
+ */
+@RestController
+@RequestMapping("/versionInfo")
+@Api(value = "版本信息(关于)API[by:wangfeng]", tags = { "WF——版本信息(关于)API" })
+@SuppressWarnings("unchecked")
+public class VersionInfoController {
+
+    @Autowired
+    VersionInfoFacade versionInfoFacade;
+
+    @ApiOperation(value = "获取版本信息[by:wangfeng]", notes = "获取版本信息")
+    @PostMapping("/getVersionInfoAlls")
+    @SysLogger("getVersionInfoAlls")
+    public RespDTO<VersionWrapperDTO> getVersionInfoAlls(@RequestBody VersionVO versionVO) {
+        VersionWrapperDTO data = versionInfoFacade.getVersionInfoAll(versionVO);
+        return RespDTO.onSuc(data);
+    }
+
+}

icss-service/src/main/resources/mapper/VersionDetailMapper.xml → aipt-service/src/main/resources/mapper/VersionDetailMapper.xml


icss-service/src/main/resources/mapper/VersionInfoMapper.xml → aipt-service/src/main/resources/mapper/VersionInfoMapper.xml


+ 1 - 1
aipt-service/src/test/java/com/diagbot/CodeGeneration.java

@@ -56,7 +56,7 @@ public class CodeGeneration {
         StrategyConfig strategy = new StrategyConfig();
         strategy.setTablePrefix(new String[] { "kl_" });// 此处可以修改为您的表前缀
         strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略
-        strategy.setInclude(new String[] { "kl_concept" }); // 需要生成的表
+        strategy.setInclude(new String[] { "kl_version_info" }); // 需要生成的表
 
         strategy.setSuperServiceClass(null);
         strategy.setSuperServiceImplClass(null);

+ 1 - 1
common/pom.xml

@@ -79,7 +79,7 @@
         <dependency>
             <groupId>com.alibaba</groupId>
             <artifactId>fastjson</artifactId>
-            <version>1.2.56</version>
+            <version>1.2.60</version>
             <scope>compile</scope>
         </dependency>
 

+ 52 - 0
common/src/main/java/com/diagbot/enums/ProductTypeEnum.java

@@ -0,0 +1,52 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description: 产品类型
+ * @author: gaodm
+ * @time: 2018/9/14 9:15
+ */
+public enum ProductTypeEnum implements KeyedNamed {
+    DIAGBOTCLOUD_INNER(1, "云平台内部"),
+    DIAGBOTCLOUD_OUTER(2, "云平台外部"),
+    ICSS(3, "ICSS"),
+    TRIAGE(4, "智能分诊"),
+    DATA(5, "数据服务模式"),
+    PREC(6, "智能预问诊");
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    ProductTypeEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static ProductTypeEnum getEnum(int key) {
+        for (ProductTypeEnum item : ProductTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        ProductTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 8 - 0
data-service/src/main/java/com/diagbot/client/AiptServiceClient.java

@@ -8,7 +8,9 @@ import com.diagbot.dto.ConceptIntroduceDTO;
 import com.diagbot.dto.DisclaimerInformationDTO;
 import com.diagbot.dto.PushDTO;
 import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.VersionWrapperDTO;
 import com.diagbot.vo.ConceptIntroduceVO;
+import com.diagbot.vo.VersionVO;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -72,4 +74,10 @@ public interface AiptServiceClient {
      */
     @PostMapping(value = "/conceptDetail/getConceptDetail")
     RespDTO<ConceptIntroduceDTO> getConceptDetail(@Valid @RequestBody ConceptIntroduceVO conceptIntroduceVO);
+
+    /**
+     * 获取版本信息
+     */
+    @PostMapping("/versionInfo/getVersionInfoAlls")
+    RespDTO<VersionWrapperDTO> getVersionInfoAlls(@RequestBody VersionVO versionVO);
 }

+ 14 - 17
data-service/src/main/java/com/diagbot/client/TranServiceClient.java

@@ -1,19 +1,17 @@
 package com.diagbot.client;
 
-import java.util.List;
-
-import javax.validation.Valid;
-
+import com.diagbot.client.hystrix.TranServiceHystrix;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.SysSetInfoDTO;
+import com.diagbot.vo.HospitalSetVO;
 import com.diagbot.vo.MrVO;
 import com.diagbot.vo.PushJoinVO;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
-import com.diagbot.client.hystrix.TranServiceHystrix;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.SysSetInfoDTO;
-import com.diagbot.vo.HospitalSetVO;
+import javax.validation.Valid;
+import java.util.List;
 
 /**
  * @Description: 调用信息对接层服务
@@ -23,17 +21,16 @@ import com.diagbot.vo.HospitalSetVO;
 @FeignClient(value = "tran-service", fallback = TranServiceHystrix.class)
 public interface TranServiceClient {
 
-	/**
-	 * 
-	 * @param hospitalSetVO
-	 * @return
-	 */
+    /**
+     * @param hospitalSetVO
+     * @return
+     */
     @PostMapping("/sysSet/getSysSetInfoDatas")
     RespDTO<List<SysSetInfoDTO>> getSysSetInfoDatas(@Valid @RequestBody HospitalSetVO hospitalSetVO);
 
-	@PostMapping("/mr/createMr")
-	RespDTO<String> createMr(@RequestBody PushJoinVO pushJoinVO);
+    @PostMapping("/mr/createMr")
+    RespDTO<String> createMr(@RequestBody PushJoinVO pushJoinVO);
 
-	@PostMapping("/mr/getMr")
-	RespDTO<PushJoinVO> getMr(@RequestBody @Valid MrVO mrVO);
+    @PostMapping("/mr/getMr")
+    RespDTO<PushJoinVO> getMr(@RequestBody @Valid MrVO mrVO);
 }

+ 11 - 0
data-service/src/main/java/com/diagbot/client/hystrix/AiptServiceHystrix.java

@@ -8,7 +8,9 @@ import com.diagbot.dto.ConceptIntroduceDTO;
 import com.diagbot.dto.DisclaimerInformationDTO;
 import com.diagbot.dto.PushDTO;
 import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.VersionWrapperDTO;
 import com.diagbot.vo.ConceptIntroduceVO;
+import com.diagbot.vo.VersionVO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -90,4 +92,13 @@ public class AiptServiceHystrix implements AiptServiceClient {
         log.error("【hystrix】调用{}异常", "getConceptDetail");
         return null;
     }
+
+    /**
+     * 获取版本信息
+     */
+    @Override
+    public RespDTO<VersionWrapperDTO> getVersionInfoAlls(VersionVO versionVO) {
+        log.error("【hystrix】调用{}异常", "getVersionInfoAlls");
+        return null;
+    }
 }

+ 6 - 10
data-service/src/main/java/com/diagbot/client/hystrix/TranServiceHystrix.java

@@ -1,22 +1,18 @@
 package com.diagbot.client.hystrix;
 
-import java.util.List;
-
-import javax.validation.Valid;
-
-import com.diagbot.vo.MrVO;
-import com.diagbot.vo.PushJoinVO;
-import org.springframework.stereotype.Component;
-
 import com.diagbot.client.TranServiceClient;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.SysSetInfoDTO;
 import com.diagbot.vo.HospitalSetVO;
-
+import com.diagbot.vo.MrVO;
+import com.diagbot.vo.PushJoinVO;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestBody;
 
+import javax.validation.Valid;
+import java.util.List;
+
 /**
  * @Description: 调用信息对接层服务
  * @author: gaodm

+ 60 - 0
data-service/src/main/java/com/diagbot/dto/VersionDetailDTO.java

@@ -0,0 +1,60 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:12:12
+ */
+@Getter
+@Setter
+public class VersionDetailDTO {
+	
+	private Long id;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+   // private String creator;
+
+  
+    /**
+     * 版本主表id
+     */
+    private Long versionId;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 描述
+     */
+    private String description;
+
+    /**
+     * 排序号
+     */
+    private String orderNo;
+
+    /**
+     * 1:启动,0:不启用
+     */
+  //  private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 48 - 0
data-service/src/main/java/com/diagbot/dto/VersionWrapperDTO.java

@@ -0,0 +1,48 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:09:33
+ */
+@Getter
+@Setter
+public class VersionWrapperDTO {
+	
+	private Long id;
+	/**
+	 * 记录创建时间
+	 */
+	private Date gmtCreate;
+
+	/**
+	 * 创建人,0表示无创建人值
+	 */
+	private String creator;
+
+	/**
+	 * 名称
+	 */
+	private String name;
+
+	private Date refreshTime;
+
+	/**
+	 * 1:启动,0:不启用
+	 */
+	private String status;
+
+	private List<VersionDetailDTO> detail;
+	/**
+	 * 备注
+	 */
+	private String remark;
+
+}

+ 34 - 0
data-service/src/main/java/com/diagbot/facade/VersionInfoFacade.java

@@ -0,0 +1,34 @@
+package com.diagbot.facade;
+
+import com.diagbot.client.AiptServiceClient;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.VersionWrapperDTO;
+import com.diagbot.enums.ProductTypeEnum;
+import com.diagbot.util.RespDTOUtil;
+import com.diagbot.vo.VersionVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author wangfeng
+ * @Description: 版本信息
+ * @date 2018年11月21日 上午11:07:01
+ */
+@Component
+public class VersionInfoFacade {
+
+    @Autowired
+    private AiptServiceClient aiptServiceClient;
+    /**
+     * 查询版本信息
+     *
+     * @return
+     */
+    public VersionWrapperDTO getVersionInfoAll() {
+        VersionVO versionVO = new VersionVO();
+        versionVO.setProductType(ProductTypeEnum.DATA.getKey());
+        RespDTO<VersionWrapperDTO> res = aiptServiceClient.getVersionInfoAlls(versionVO);
+        RespDTOUtil.respNGDealCover(res, "获取不到版本信息!");
+        return res.data;
+    }
+}

+ 18 - 0
data-service/src/main/java/com/diagbot/vo/VersionVO.java

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description: 版本信息
+ * @author: gaodm
+ * @time: 2019/8/7 13:26
+ */
+@Getter
+@Setter
+public class VersionVO {
+    /**
+     * 产品类型(1:云平台内部;2:云平台外部;3:icss;4:智能分诊;5:数据服务模式;6:智能预问诊)
+     */
+    private Integer productType;
+}

+ 39 - 0
data-service/src/main/java/com/diagbot/web/VersionInfoController.java

@@ -0,0 +1,39 @@
+package com.diagbot.web;
+
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.VersionWrapperDTO;
+import com.diagbot.facade.VersionInfoFacade;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 版本信息(关于) 前端控制器
+ * </p>
+ *
+ * @author wangfeng
+ * @since 2018-11-20
+ */
+@RestController
+@RequestMapping("/versionInfo")
+@Api(value = "版本信息(关于)API[by:wangfeng]", tags = { "WF——版本信息(关于)API" })
+@SuppressWarnings("unchecked")
+public class VersionInfoController {
+
+    @Autowired
+    VersionInfoFacade versionInfoFacade;
+
+    @ApiOperation(value = "获取版本信息[by:wangfeng]", notes = "获取版本信息")
+    @PostMapping("/getVersionInfoAlls")
+    @SysLogger("getVersionInfoAlls")
+    public RespDTO<VersionWrapperDTO> getVersionInfoAlls() {
+        VersionWrapperDTO data = versionInfoFacade.getVersionInfoAll();
+        return RespDTO.onSuc(data);
+    }
+
+}

+ 67 - 0
docs/016.20190827全部产品线版本控制/init_med.sql

@@ -0,0 +1,67 @@
+use `med`;
+-- ----------------------------
+-- Table structure for kl_version_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `kl_version_detail`;
+CREATE TABLE `kl_version_detail` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `version_id` bigint(30) DEFAULT NULL COMMENT '版本主表id',
+  `title` varchar(200) DEFAULT NULL COMMENT '标题',
+  `description` text COMMENT '描述',
+  `order_no` varchar(5) DEFAULT NULL COMMENT '排序号',
+  `status` varchar(5) DEFAULT NULL COMMENT '1:启动,0:不启用',
+  `remark` varchar(128) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8 COMMENT='版本详情(关于)';
+
+-- ----------------------------
+-- Table structure for kl_version_info
+-- ----------------------------
+DROP TABLE IF EXISTS `kl_version_info`;
+CREATE TABLE `kl_version_info` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `product_type` int(11) NOT NULL DEFAULT '0' COMMENT '产品类型(1:云平台内部;2:云平台外部;3:icss;4:智能分诊;5:数据服务模式;6:智能预问诊)',
+  `name` varchar(200) DEFAULT NULL COMMENT '名称',
+  `refresh_time` date DEFAULT NULL,
+  `status` varchar(5) DEFAULT NULL COMMENT '1:启动,0:不启用',
+  `remark` varchar(128) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8 COMMENT='版本信息(关于)';
+
+INSERT INTO `med`.`kl_version_info` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `refresh_time`, `status`, `remark`) SELECT `id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `refresh_time`, `status`, `remark` FROM `sys-icss`.`icss_version_info`;
+
+UPDATE `med`.`kl_version_info` SET `product_type` = 3;
+
+INSERT INTO `med`.`kl_version_detail` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `version_id`, `title`, `description`, `order_no`, `status`, `remark`) SELECT `id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `version_id`, `title`, `description`, `order_no`, `status`, `remark` FROM `sys-icss`.`icss_version_detail`;
+
+UPDATE `kl_version_info`
+SET `status` = 0
+WHERE
+	id NOT IN (
+		SELECT
+			b.id
+		FROM
+			(
+				SELECT
+					max(a.id) AS id,
+					product_type
+				FROM
+					`kl_version_info` a
+				GROUP BY
+					product_type
+			) b
+	);
+
+use `sys-icss`;
+DROP TABLE IF EXISTS `icss_version_info`;
+DROP TABLE IF EXISTS `icss_version_detail`;

+ 945 - 0
docs/016.20190827全部产品线版本控制/init_user.sql

@@ -0,0 +1,945 @@
+use `sys-user`;
+/*
+Navicat MySQL Data Transfer
+
+Source Server         : 2.236平台开发环境
+Source Server Version : 50725
+Source Host           : 192.168.2.236:3306
+Source Database       : sys-user
+
+Target Server Type    : MYSQL
+Target Server Version : 50725
+File Encoding         : 65001
+
+Date: 2019-09-16 14:16:58
+*/
+
+SET FOREIGN_KEY_CHECKS=0;
+
+-- ----------------------------
+-- Table structure for sys_menu
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_menu`;
+CREATE TABLE `sys_menu` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `name` varchar(255) NOT NULL DEFAULT '' COMMENT '菜单名称',
+  `parent_id` bigint(20) NOT NULL DEFAULT '-1' COMMENT '-1:表示顶级,其他值表示上级菜单的id',
+  `code` varchar(255) NOT NULL DEFAULT '' COMMENT '编码,与前端对应',
+  `order_no` int(11) NOT NULL DEFAULT '0' COMMENT '排序,从小到大',
+  `remark` varchar(255) NOT NULL DEFAULT '' COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=61 DEFAULT CHARSET=utf8 COMMENT='系统菜单';
+
+-- ----------------------------
+-- Records of sys_menu
+-- ----------------------------
+INSERT INTO `sys_menu` VALUES ('1', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '控制台', '-1', 'YH-KZT', '1', '用户-控制台');
+INSERT INTO `sys_menu` VALUES ('2', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '更多服务', '-1', 'YH-GDFW', '2', '用户-更多服务');
+INSERT INTO `sys_menu` VALUES ('3', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '机构中心', '-1', 'YH-JGZX', '3', '用户-机构中心');
+INSERT INTO `sys_menu` VALUES ('4', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '账号信息', '3', 'YH-JGZX-ZHXX', '1', '用户-机构中心-账号信息');
+INSERT INTO `sys_menu` VALUES ('5', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '已开通产品', '3', 'YH-JGZX-YKTCP', '2', '用户-机构中心-已开通产品');
+INSERT INTO `sys_menu` VALUES ('6', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '安全设置', '3', 'YH-JGZX-AQSZ', '5', '用户-机构中心-安全设置');
+INSERT INTO `sys_menu` VALUES ('9', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '管理服务端', '3', 'YH-JGZX-GLFFD', '3', '用户-机构中心-管理服务端');
+INSERT INTO `sys_menu` VALUES ('10', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心', '-1', 'LT-KHZX', '2', '朗通-客户中心');
+INSERT INTO `sys_menu` VALUES ('11', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '机构信息', '10', 'LT-KHZX-JGXX', '2', '朗通-客户中心-机构信息');
+INSERT INTO `sys_menu` VALUES ('12', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '控制台', '-1', 'LT-KZT', '1', '朗通-控制台');
+INSERT INTO `sys_menu` VALUES ('14', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '已生成令牌', '3', 'YH-JGZX-YSCLP', '4', '用户-机构中心-已生成令牌');
+INSERT INTO `sys_menu` VALUES ('15', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '注册用户', '10', 'LT-KHZX-ZCYH', '1', '朗通-客户中心-注册用户');
+INSERT INTO `sys_menu` VALUES ('16', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '审核超管信息', '10', 'LT-KHZX-CGXX', '3', '朗通-客户中心-超管信息');
+INSERT INTO `sys_menu` VALUES ('17', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '订单系统', '-1', 'LT-DDXT', '3', '朗通-订单系统');
+INSERT INTO `sys_menu` VALUES ('18', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '产品申请列表', '17', 'LT-DDXT-CPXSQLB', '1', '朗通-订单系统-产品申请列表');
+INSERT INTO `sys_menu` VALUES ('19', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '产品线管理', '-1', 'LT-CPXGL', '4', '朗通-产品线管理');
+INSERT INTO `sys_menu` VALUES ('20', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '个人中心', '-1', 'LT-GRZX', '99', '朗通-个人中心');
+INSERT INTO `sys_menu` VALUES ('21', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '已认证超管信息', '10', 'LT-YRZCGXX', '0', '朗通-客户中心-已认证超管信息');
+INSERT INTO `sys_menu` VALUES ('22', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '产品续费列表', '17', 'LT-CPXFLB', '2', '朗通-订单系统-产品续费列表');
+INSERT INTO `sys_menu` VALUES ('23', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护', '-1', 'LT-YXSJWH', '5', '朗通-ICSS数据维护');
+INSERT INTO `sys_menu` VALUES ('24', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '标签组维护', '23', 'LT-YXSJWH-BQZWH', '10', '朗通-ICSS数据维护-标签组维护');
+INSERT INTO `sys_menu` VALUES ('25', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '独立类型标签维护', '23', 'LT-YXSJWH-DLLXBQWH', '20', '朗通-ICSS数据维护-独立类型标签维护');
+INSERT INTO `sys_menu` VALUES ('27', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '别名维护', '23', 'LT-YXSJWH-BMWH', '25', '朗通-ICSS数据维护-别名维护');
+INSERT INTO `sys_menu` VALUES ('28', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '模版维护', '23', 'LT-YXSJWH-MBWH', '30', '朗通-ICSS数据维护-模版维护');
+INSERT INTO `sys_menu` VALUES ('30', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'icss科室维护', '23', 'LT-YXSJWH-KSWH', '40', '朗通-ICSS数据维护-icss科室维护');
+INSERT INTO `sys_menu` VALUES ('31', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '常见选项维护', '23', 'LT-YXSJWH-CJXXWH', '45', '朗通-ICSS数据维护-常见选项维护');
+INSERT INTO `sys_menu` VALUES ('33', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '免责声明维护', '38', 'LT-YXSJKWH-MZSMWH', '90', '朗通-医学术语库维护-免责声明维护');
+INSERT INTO `sys_menu` VALUES ('34', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '版本信息维护', '60', 'LT-GBBXXWH-BBXXWH', '60', '朗通-各版本信息维护-版本信息维护');
+INSERT INTO `sys_menu` VALUES ('35', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '查体模板维护', '23', 'LT-YXSJWH-CTMBWH', '40', '朗通-ICSS数据维护-查体模板维护');
+INSERT INTO `sys_menu` VALUES ('37', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '提示信息维护', '23', 'LT-YXSJWH-TSXXWH', '50', '朗通-ICSS数据维护-提示信息维护');
+INSERT INTO `sys_menu` VALUES ('38', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护', '-1', 'LT-YXSYKWH', '6', '朗通-医学术语库维护');
+INSERT INTO `sys_menu` VALUES ('39', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语命名维护', '38', 'LT-YXSYKWH-YXSYMMWH', '10', '朗通-医学术语库维护-医学术语命名维护');
+INSERT INTO `sys_menu` VALUES ('40', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '术语医学属性维护', '38', 'LT-YXSYKWH-SYYXSXWH', '2', '朗通-医学术语库维护-术语医学属性维护');
+INSERT INTO `sys_menu` VALUES ('41', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语关系维护', '38', 'LT-YXSYKWH-YXSYGXWH', '20', '朗通-医学术语库维护-医学术语关系维护');
+INSERT INTO `sys_menu` VALUES ('42', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语静态知识维护', '38', 'LT-YXSYKWH-YXSYJTZSWH', '50', '朗通-医学术语库维护-医学术语静态知识维护');
+INSERT INTO `sys_menu` VALUES ('43', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '化验大小项与公表项对应维护', '23', 'LT-YXSJWH-HYDXXYGBXDY', '50', '朗通-ICSS数据维护-化验大小项与公表项对应维护');
+INSERT INTO `sys_menu` VALUES ('44', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '慢病管理与评估维护', '23', 'LT-YXSJWH-MBGLYPG', '75', '朗通-ICSS数据维护-慢病管理与评估维护');
+INSERT INTO `sys_menu` VALUES ('45', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '慢病指标值关联维护', '38', 'LT-YXSYKWH-MBZBZGLWH', '70', '朗通-医学术语库维护-慢病指标值关联维护');
+INSERT INTO `sys_menu` VALUES ('48', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '量表结构维护', '38', 'LT-YXSYKWH-LBJGWH', '60', '朗通-医学术语库维护-量表结构维护');
+INSERT INTO `sys_menu` VALUES ('49', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语类型维护', '38', 'LT-YXSYKWH-YXSYLXWH', '5', '朗通-医学术语库维护-医学术语类型维护');
+INSERT INTO `sys_menu` VALUES ('50', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '化验子项维护', '38', 'LT-YXSYKWH-HYZXWH', '80', '朗通-医学术语库维护-化验子项维护');
+INSERT INTO `sys_menu` VALUES ('51', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语关联维护', '38', 'LT-YXSYKWH-YXSYGLWH', '30', '朗通-医学术语库维护-医学术语关联维护');
+INSERT INTO `sys_menu` VALUES ('52', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '分诊人体图数据维护', '38', 'LT-YXSYKWH-YXSYDCGLWH', '40', '朗通-医学术语库维护-医学术语多层关联维护');
+INSERT INTO `sys_menu` VALUES ('53', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护', '-1', 'LT-YWZSJWH', '8', '朗通-预问诊数据维护');
+INSERT INTO `sys_menu` VALUES ('54', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '独立填写单维护', '53', 'LT-YWZSJWH-DLTXDWH', '1', '朗通-预问诊数据维护-独立填写单维护');
+INSERT INTO `sys_menu` VALUES ('55', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '组合填写单维护', '53', 'LT-YWZSJWH-ZHTXDWH', '2', '朗通-预问诊数据维护-组合填写单维护');
+INSERT INTO `sys_menu` VALUES ('56', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '模版维护', '53', 'LT-YWZSJWH-MBWH', '3', '朗通-预问诊数据维护-模版维护');
+INSERT INTO `sys_menu` VALUES ('57', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护', '-1', 'LT-ZDYJWH', '10', '朗通-诊断依据维护');
+INSERT INTO `sys_menu` VALUES ('58', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据数据维护', '57', 'LT-ZDYJWH-ZDYJSJWH', '10', '朗通-诊断依据维护-诊断依据数据维护');
+INSERT INTO `sys_menu` VALUES ('59', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '问题词数据维护', '57', 'LT-ZDYJWH-WTCSJWH', '20', '朗通-诊断依据维护-问题词数据维护');
+INSERT INTO `sys_menu` VALUES ('60', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护', '-1', 'LT-GBBXXWH', '11', '朗通-各版本信息维护');
+
+-- ----------------------------
+-- Table structure for sys_menu_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_menu_permission`;
+CREATE TABLE `sys_menu_permission` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `menu_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '菜单id',
+  `permission_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '系统资源id',
+  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=247 DEFAULT CHARSET=utf8 COMMENT='菜单和系统资源的映射表';
+
+-- ----------------------------
+-- Records of sys_menu_permission
+-- ----------------------------
+INSERT INTO `sys_menu_permission` VALUES ('11', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '8', '朗通-客户中心-获取用户信息列表');
+INSERT INTO `sys_menu_permission` VALUES ('12', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '12', '朗通-客户中心-修改用户和机构信息');
+INSERT INTO `sys_menu_permission` VALUES ('13', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '14', '朗通-客户中心-根据用户Id删除');
+INSERT INTO `sys_menu_permission` VALUES ('14', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '18', '朗通-客户中心-模糊查询机构信息');
+INSERT INTO `sys_menu_permission` VALUES ('15', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '19', '朗通-客户中心-添加机构信息');
+INSERT INTO `sys_menu_permission` VALUES ('16', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '20', '朗通-客户中心-添加用户信息和绑定机构');
+INSERT INTO `sys_menu_permission` VALUES ('17', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '22', '朗通-客户中心-审核用户信息接口');
+INSERT INTO `sys_menu_permission` VALUES ('25', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '15', '用户-机构中心-已开通产品-关联产品与用户服务端');
+INSERT INTO `sys_menu_permission` VALUES ('26', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '16', '用户-机构中心-已开通产品-删除产品与用户服务端的关联');
+INSERT INTO `sys_menu_permission` VALUES ('27', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '17', '用户-机构中心-已开通产品-获取当前登录用户产品服务分页列表');
+INSERT INTO `sys_menu_permission` VALUES ('28', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '9', '24', '用户-机构中心-管理服务端-新增服务端');
+INSERT INTO `sys_menu_permission` VALUES ('29', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '9', '25', '用户-机构中心-管理服务端-修改服务端');
+INSERT INTO `sys_menu_permission` VALUES ('30', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '9', '26', '用户-机构中心-管理服务端-获取当前登录用户的服务列表');
+INSERT INTO `sys_menu_permission` VALUES ('31', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '9', '27', '用户-机构中心-管理服务端-获取当前登录用户的服务分页列表');
+INSERT INTO `sys_menu_permission` VALUES ('35', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '31', '朗通-客户中心-根据用户id和产品id,修改开通时间');
+INSERT INTO `sys_menu_permission` VALUES ('36', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '28', '朗通-客户中心-根据用户id查询已开通的功能');
+INSERT INTO `sys_menu_permission` VALUES ('37', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '29', '朗通-客户中心-根据用户id和产品id,启用和停用功能');
+INSERT INTO `sys_menu_permission` VALUES ('38', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '30', '朗通-客户中心-根据用户id和产品id,删除开通信息');
+INSERT INTO `sys_menu_permission` VALUES ('39', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '32', '朗通-客户中心-根据时间导出用户和机构信息');
+INSERT INTO `sys_menu_permission` VALUES ('40', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '9', '用户-机构中心-账户信息-获取当前用户信息');
+INSERT INTO `sys_menu_permission` VALUES ('41', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '10', '用户-机构中心-账户信息-用户认证');
+INSERT INTO `sys_menu_permission` VALUES ('42', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '11', '用户-机构中心-账户信息-获取当前用户认证状态');
+INSERT INTO `sys_menu_permission` VALUES ('43', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '14', '33', '用户-机构中心-已经生成令牌-生成令牌');
+INSERT INTO `sys_menu_permission` VALUES ('44', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '14', '34', '用户-机构中心-已经生成令牌-禁用令牌');
+INSERT INTO `sys_menu_permission` VALUES ('45', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '14', '35', '用户-机构中心-已经生成令牌-启用令牌');
+INSERT INTO `sys_menu_permission` VALUES ('46', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '14', '36', '用户-机构中心-已经生成令牌-删除令牌');
+INSERT INTO `sys_menu_permission` VALUES ('47', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '12', '37', '朗通-控制台-待审核订单个数');
+INSERT INTO `sys_menu_permission` VALUES ('48', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '12', '38', '朗通-控制台-待认证账号数量');
+INSERT INTO `sys_menu_permission` VALUES ('49', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '39', '用户-控制台-账号认证进度');
+INSERT INTO `sys_menu_permission` VALUES ('50', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '40', '用户-控制台-产品认证进度');
+INSERT INTO `sys_menu_permission` VALUES ('51', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '41', '用户-控制台-已开通产品');
+INSERT INTO `sys_menu_permission` VALUES ('52', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '42', '用户-控制台-可试用产品');
+INSERT INTO `sys_menu_permission` VALUES ('53', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '43', '用户-控制台-产品立即试用接口');
+INSERT INTO `sys_menu_permission` VALUES ('54', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '44', '用户-控制台-可展示的选项卡');
+INSERT INTO `sys_menu_permission` VALUES ('55', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '45', '用户-控制台-账户信息');
+INSERT INTO `sys_menu_permission` VALUES ('56', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '46', '朗通-客户中心-查询所有用户已开通的功能');
+INSERT INTO `sys_menu_permission` VALUES ('57', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '47', '朗通-客户中心-查询用户信息和机构信息开通产品');
+INSERT INTO `sys_menu_permission` VALUES ('58', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '20', '48', '朗通-个人中心-重置密码');
+INSERT INTO `sys_menu_permission` VALUES ('59', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '51', '用户-更多服务-根据用户id获取产品信息');
+INSERT INTO `sys_menu_permission` VALUES ('60', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '52', '用户-更多服务-开通产品');
+INSERT INTO `sys_menu_permission` VALUES ('61', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '19', '53', '朗通-产品线管理-添加产品');
+INSERT INTO `sys_menu_permission` VALUES ('62', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '9', '54', '用户-机构中心-管理服务端-删除服务端');
+INSERT INTO `sys_menu_permission` VALUES ('63', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '21', '用户-机构中心-已开通产品-查询当前登录用户已开通产品列表');
+INSERT INTO `sys_menu_permission` VALUES ('64', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '64', '朗通-客户中心-分页查询注册用户信息接口');
+INSERT INTO `sys_menu_permission` VALUES ('65', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '65', '朗通-客户中心-分页查询机构信息接口');
+INSERT INTO `sys_menu_permission` VALUES ('66', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '66', '朗通-客户中心-分页查询已认证用户信息和机构信息及开通产品接口');
+INSERT INTO `sys_menu_permission` VALUES ('67', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '67', '朗通-客户中心-分页查询认证中的用户信息接口');
+INSERT INTO `sys_menu_permission` VALUES ('68', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '71', '客户中心-导出用户信息');
+INSERT INTO `sys_menu_permission` VALUES ('69', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '72', '客户中心-导出机构信息');
+INSERT INTO `sys_menu_permission` VALUES ('70', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '73', '客户中心-导出认证中用户的信息:');
+INSERT INTO `sys_menu_permission` VALUES ('71', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '74', '客户中心-导出已认证用户的信息');
+INSERT INTO `sys_menu_permission` VALUES ('72', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '76', '客户中心-超管修改用户信息接口');
+INSERT INTO `sys_menu_permission` VALUES ('73', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '77', '客户中心-超管修改机构信息接口');
+INSERT INTO `sys_menu_permission` VALUES ('74', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '14', '79', '用户-机构中心-已经生成令牌-获取令牌');
+INSERT INTO `sys_menu_permission` VALUES ('75', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '83', '客户中心-认证用户信息和机构信息不通过接口(新)');
+INSERT INTO `sys_menu_permission` VALUES ('76', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '84', '客户中心-认证用户信息和机构信息通过接口(新)');
+INSERT INTO `sys_menu_permission` VALUES ('77', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '85', '客户中心-查询用户续费数量');
+INSERT INTO `sys_menu_permission` VALUES ('78', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '10', '86', '客户中心-查询用户是否有待审核的产品数量');
+INSERT INTO `sys_menu_permission` VALUES ('79', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '25', '88', 'ICSS数据维护-独立标签维护-新增|修改');
+INSERT INTO `sys_menu_permission` VALUES ('80', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '25', '89', 'ICSS数据维护-独立标签维护-删除');
+INSERT INTO `sys_menu_permission` VALUES ('81', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '25', '90', 'ICSS数据维护-独立标签维护-分页列表');
+INSERT INTO `sys_menu_permission` VALUES ('82', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '24', '91', 'ICSS数据维护-标签组维护-新增|修改');
+INSERT INTO `sys_menu_permission` VALUES ('83', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '24', '92', 'ICSS数据维护-标签组维护-删除');
+INSERT INTO `sys_menu_permission` VALUES ('84', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '24', '93', 'ICSS数据维护-标签组维护-分页列表');
+INSERT INTO `sys_menu_permission` VALUES ('85', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '24', '94', 'ICSS数据维护-标签组维护-获取特殊标签(同伴|无)');
+INSERT INTO `sys_menu_permission` VALUES ('86', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '24', '95', 'ICSS数据维护-标签组维护-根据id返回内容');
+INSERT INTO `sys_menu_permission` VALUES ('87', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '24', '96', 'ICSS数据维护-标签组维护-根据多个id返回内容');
+INSERT INTO `sys_menu_permission` VALUES ('88', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '24', '98', 'ICSS数据维护-标签组维护-检索');
+INSERT INTO `sys_menu_permission` VALUES ('92', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '30', '99', 'ICSS数据维护-科室维护-修改');
+INSERT INTO `sys_menu_permission` VALUES ('93', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '30', '100', 'ICSS数据维护-科室维护-删除');
+INSERT INTO `sys_menu_permission` VALUES ('94', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '30', '101', 'ICSS数据维护-科室维护-查询');
+INSERT INTO `sys_menu_permission` VALUES ('95', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '30', '102', 'ICSS数据维护-科室维护-详情');
+INSERT INTO `sys_menu_permission` VALUES ('96', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '30', '104', 'ICSS数据维护-科室维护-添加');
+INSERT INTO `sys_menu_permission` VALUES ('97', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '27', '105', 'ICSS数据维护-别名维护-新增|修改');
+INSERT INTO `sys_menu_permission` VALUES ('98', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '27', '106', 'ICSS数据维护-别名维护-详情');
+INSERT INTO `sys_menu_permission` VALUES ('99', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '27', '107', 'ICSS数据维护-别名维护-删除');
+INSERT INTO `sys_menu_permission` VALUES ('100', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '27', '108', 'ICSS数据维护-别名维护-导入');
+INSERT INTO `sys_menu_permission` VALUES ('101', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '27', '109', 'ICSS数据维护-别名维护-列表');
+INSERT INTO `sys_menu_permission` VALUES ('102', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '110', 'ICSS数据维护-模板维护-添加');
+INSERT INTO `sys_menu_permission` VALUES ('103', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '111', 'ICSS数据维护-模板维护-修改');
+INSERT INTO `sys_menu_permission` VALUES ('104', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '112', 'ICSS数据维护-模板维护-删除');
+INSERT INTO `sys_menu_permission` VALUES ('105', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '113', 'ICSS数据维护-模板维护-获取标签池信息');
+INSERT INTO `sys_menu_permission` VALUES ('106', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '114', 'ICSS数据维护-模板维护-获取子模板信息');
+INSERT INTO `sys_menu_permission` VALUES ('107', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '115', 'ICSS数据维护-模板维护-获取模板列表');
+INSERT INTO `sys_menu_permission` VALUES ('108', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '116', 'ICSS数据维护-模板维护-获取模板明细信息');
+INSERT INTO `sys_menu_permission` VALUES ('109', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '117', 'ICSS数据维护-模板维护-获取单个模板信息(修改用)');
+INSERT INTO `sys_menu_permission` VALUES ('110', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '31', '118', 'ICSS数据维护-常见症状维护-添加和修改');
+INSERT INTO `sys_menu_permission` VALUES ('111', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '31', '119', 'ICSS数据维护-常见选项维护-删除');
+INSERT INTO `sys_menu_permission` VALUES ('112', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '31', '120', 'ICSS数据维护-常见选项维护-获取科室名称');
+INSERT INTO `sys_menu_permission` VALUES ('113', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '31', '121', 'ICSS数据维护-常见选项维护-获取标签信息');
+INSERT INTO `sys_menu_permission` VALUES ('114', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '31', '122', 'ICSS数据维护-常见选项维护-根据科室获取常用标签信息(修改和详情用)');
+INSERT INTO `sys_menu_permission` VALUES ('115', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '31', '123', 'ICSS数据维护-常见选项维护-获取科室信息(常见症状维护系统页面查询)');
+INSERT INTO `sys_menu_permission` VALUES ('116', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '33', '124', 'ICSS数据维护-免责申明-获取免责申明详情');
+INSERT INTO `sys_menu_permission` VALUES ('117', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '33', '125', 'ICSS数据维护-免责申明-增加免责申明详情');
+INSERT INTO `sys_menu_permission` VALUES ('118', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '33', '126', 'ICSS数据维护-免责申明-修改免责申明详情');
+INSERT INTO `sys_menu_permission` VALUES ('119', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '33', '127', 'ICSS数据维护-免责申明-删除免责申明详情');
+INSERT INTO `sys_menu_permission` VALUES ('120', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '33', '128', 'ICSS数据维护-免责申明-启用免责申明详情 ');
+INSERT INTO `sys_menu_permission` VALUES ('121', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '33', '129', 'ICSS数据维护-免责申明-停用免责申明详情');
+INSERT INTO `sys_menu_permission` VALUES ('122', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '34', '130', '各版本信息维护-版本信息维护-获取版本信息');
+INSERT INTO `sys_menu_permission` VALUES ('123', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '34', '131', '各版本信息维护-版本信息维护-保存版本信息');
+INSERT INTO `sys_menu_permission` VALUES ('124', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '34', '132', '各版本信息维护-版本信息维护-更新版本信息');
+INSERT INTO `sys_menu_permission` VALUES ('125', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '34', '133', '各版本信息维护-版本信息维护-删除版本信息');
+INSERT INTO `sys_menu_permission` VALUES ('126', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '34', '134', '各版本信息维护-版本信息维护-更新版本详情信息');
+INSERT INTO `sys_menu_permission` VALUES ('127', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '34', '135', '各版本信息维护-版本信息维护-删除版本详情信息');
+INSERT INTO `sys_menu_permission` VALUES ('128', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '34', '136', '各版本信息维护-版本信息维护-增加版本详情信息');
+INSERT INTO `sys_menu_permission` VALUES ('129', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '35', '137', 'ICSS数据维护-查体模板维护-查体模板列表');
+INSERT INTO `sys_menu_permission` VALUES ('130', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '35', '138', 'ICSS数据维护-查体模板维护-保存');
+INSERT INTO `sys_menu_permission` VALUES ('131', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '35', '139', 'ICSS数据维护-查体模板维护-根据科室删除');
+INSERT INTO `sys_menu_permission` VALUES ('132', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '35', '140', 'ICSS数据维护-查体模板维护-获取未维护的科室(新增)');
+INSERT INTO `sys_menu_permission` VALUES ('133', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '35', '141', 'ICSS数据维护-查体模板维护-获取未维护的科室(修改)');
+INSERT INTO `sys_menu_permission` VALUES ('134', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '35', '142', 'ICSS数据维护-查体模板维护-根据科室获取查体模板');
+INSERT INTO `sys_menu_permission` VALUES ('153', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '34', '161', '各版本信息维护-版本信息维护-根据版本id获取版本详情信息');
+INSERT INTO `sys_menu_permission` VALUES ('154', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '39', '162', '医学术语库维护-医学术语命名维护-获取所有医学术语命名');
+INSERT INTO `sys_menu_permission` VALUES ('155', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '39', '163', '医学术语库维护-医学术语命名维护-获取医学术语命名列表');
+INSERT INTO `sys_menu_permission` VALUES ('156', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '39', '164', '医学术语库维护-医学术语命名维护-医学术语命名删除');
+INSERT INTO `sys_menu_permission` VALUES ('157', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '39', '165', '医学术语库维护-医学术语命名维护-获取医学术语命名详情');
+INSERT INTO `sys_menu_permission` VALUES ('158', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '40', '166', '医学术语库维护-术语医学属性维护-获取医学术语信息');
+INSERT INTO `sys_menu_permission` VALUES ('159', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '40', '167', '医学术语库维护-术语医学属性维护-保存医学术语信息');
+INSERT INTO `sys_menu_permission` VALUES ('160', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '40', '168', '医学术语库维护-术语医学属性维护-更新医学术语信息');
+INSERT INTO `sys_menu_permission` VALUES ('161', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '40', '169', '医学术语库维护-术语医学属性维护-删除医学术语信息');
+INSERT INTO `sys_menu_permission` VALUES ('162', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '41', '170', '医学术语库维护-医学术语关系维护-获取医学术语关系列表');
+INSERT INTO `sys_menu_permission` VALUES ('163', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '41', '171', '医学术语库维护-医学术语关系维护-医学术语关系删除');
+INSERT INTO `sys_menu_permission` VALUES ('164', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '41', '172', '医学术语库维护-医学术语关系维护-获取医学术语关系详情');
+INSERT INTO `sys_menu_permission` VALUES ('165', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '42', '173', '医学术语库维护-医学术语静态知识维护-获取医学术语静态知识列表');
+INSERT INTO `sys_menu_permission` VALUES ('166', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '42', '174', '医学术语库维护-医学术语静态知识维护-医学术语静态知识删除');
+INSERT INTO `sys_menu_permission` VALUES ('167', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '42', '175', '医学术语库维护-医学术语静态知识维护-获取医学术语静态知识详情');
+INSERT INTO `sys_menu_permission` VALUES ('168', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '42', '176', '医学术语库维护-医学术语静态知识维护-医学术语静态知识添加或者编辑');
+INSERT INTO `sys_menu_permission` VALUES ('169', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '27', '177', 'ICSS数据维护-别名维护-标签搜索');
+INSERT INTO `sys_menu_permission` VALUES ('170', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '43', '178', 'ICSS数据维护-化验大小项与公表项对应维护-分页列表');
+INSERT INTO `sys_menu_permission` VALUES ('171', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '43', '179', 'ICSS数据维护-化验大小项与公表项对应维护-保存');
+INSERT INTO `sys_menu_permission` VALUES ('172', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '43', '180', 'ICSS数据维护-化验大小项与公表项对应维护-是否已存在');
+INSERT INTO `sys_menu_permission` VALUES ('173', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '43', '181', 'ICSS数据维护-化验大小项与公表项对应维护-删除(单条)');
+INSERT INTO `sys_menu_permission` VALUES ('174', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '43', '182', 'ICSS数据维护-化验大小项与公表项对应维护-删除(批量)');
+INSERT INTO `sys_menu_permission` VALUES ('175', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '183', 'ICSS数据维护-获取模板type');
+INSERT INTO `sys_menu_permission` VALUES ('176', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '44', '184', 'ICSS数据维护-慢病评估维护-分页模糊查询标签组维护接口');
+INSERT INTO `sys_menu_permission` VALUES ('177', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '44', '185', 'ICSS数据维护-慢病评估维护-获取慢病标签组维护');
+INSERT INTO `sys_menu_permission` VALUES ('178', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '44', '186', 'ICSS数据维护-慢病评估维护-慢病评估维护——修改管理评估');
+INSERT INTO `sys_menu_permission` VALUES ('179', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '44', '187', 'ICSS数据维护-慢病评估维护-慢病评估维护——添加管理评估');
+INSERT INTO `sys_menu_permission` VALUES ('180', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '44', '188', 'ICSS数据维护-慢病评估维护-删除慢病标签组维护');
+INSERT INTO `sys_menu_permission` VALUES ('181', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '45', '189', 'ICSS数据维护-慢病指标值关联维护-分页模糊查询慢病指标值关联维护');
+INSERT INTO `sys_menu_permission` VALUES ('182', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '45', '190', 'ICSS数据维护-慢病指标值关联维护-获取慢病指标值关联维护');
+INSERT INTO `sys_menu_permission` VALUES ('183', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '45', '191', 'ICSS数据维护-慢病指标值关联维护-慢病指标值关联维护——修改关联');
+INSERT INTO `sys_menu_permission` VALUES ('184', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '45', '192', 'ICSS数据维护-慢病指标值关联维护-慢病指标值关联维护——添加关联');
+INSERT INTO `sys_menu_permission` VALUES ('185', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '45', '193', 'ICSS数据维护-慢病指标值关联维护-删除慢病指标值关联维护');
+INSERT INTO `sys_menu_permission` VALUES ('190', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '40', '209', '医学术语库维护-术语医学属性维护-术语医学属性excel文件导入');
+INSERT INTO `sys_menu_permission` VALUES ('191', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '41', '210', '医学术语库维护-医学术语关系维护-医学术语关系添加或者编辑');
+INSERT INTO `sys_menu_permission` VALUES ('192', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '41', '211', '医学术语库维护-医学术语关系维护-医学术语关系excel文件导入');
+INSERT INTO `sys_menu_permission` VALUES ('193', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '39', '213', '医学术语库维护-医学术语命名维护-医学术语命名添加或者编辑');
+INSERT INTO `sys_menu_permission` VALUES ('194', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '39', '214', '医学术语库维护-医学术语命名维护-医学术语命名excel文件导入');
+INSERT INTO `sys_menu_permission` VALUES ('195', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '49', '215', '医学术语库维护-医学术语类型维护-获取所有术语类型');
+INSERT INTO `sys_menu_permission` VALUES ('196', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '49', '216', '医学术语库维护-医学术语类型维护-获取术语类型列表');
+INSERT INTO `sys_menu_permission` VALUES ('197', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '49', '217', '医学术语库维护-医学术语类型维护-术语类型添加');
+INSERT INTO `sys_menu_permission` VALUES ('198', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '41', '218', '医学术语库维护-医学术语关系维护-获取所有关系类型');
+INSERT INTO `sys_menu_permission` VALUES ('199', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '40', '219', '医学术语库维护-术语医学属性维护-获取所有部位');
+INSERT INTO `sys_menu_permission` VALUES ('200', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '40', '220', '医学术语库维护-术语医学属性维护-获取术语医学属性所需全部科室');
+INSERT INTO `sys_menu_permission` VALUES ('201', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '48', '221', '医学术语库维护-量表结构维护-新增|修改');
+INSERT INTO `sys_menu_permission` VALUES ('202', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '48', '222', '医学术语库维护-量表结构维护-分页列表');
+INSERT INTO `sys_menu_permission` VALUES ('203', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '48', '224', '医学术语库维护-量表结构维护-删除|恢复');
+INSERT INTO `sys_menu_permission` VALUES ('204', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '48', '225', '医学术语库维护-量表结构维护-根据id返回内容');
+INSERT INTO `sys_menu_permission` VALUES ('205', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '48', '91', '医学数据维护-标签组维护-新增|修改');
+INSERT INTO `sys_menu_permission` VALUES ('206', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '39', '223', '医学术语库维护-医学术语命名维护-获取所有化验公表项');
+INSERT INTO `sys_menu_permission` VALUES ('207', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '228', 'ICSS数据维护-模板维护-获取所有科室和疾病信息');
+INSERT INTO `sys_menu_permission` VALUES ('208', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '44', '230', 'ICSS数据维护-慢病评估维护-慢病疾病标签查询');
+INSERT INTO `sys_menu_permission` VALUES ('209', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '45', '229', 'ICSS数据维护-慢病指标值关联维护-慢病指标疾病标签查询');
+INSERT INTO `sys_menu_permission` VALUES ('210', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '24', '231', 'ICSS数据维护-标签组维护-子标签检索');
+INSERT INTO `sys_menu_permission` VALUES ('211', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '28', '232', 'ICSS数据维护-模板维护-获取标签和模板关联信息(删除标签时校验用)');
+INSERT INTO `sys_menu_permission` VALUES ('212', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '35', '233', 'ICSS数据维护-查体模板维护-查询科室下拉列表(查询页面)');
+INSERT INTO `sys_menu_permission` VALUES ('213', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '48', '227', '医学术语库维护-量表结构维护-检索');
+INSERT INTO `sys_menu_permission` VALUES ('214', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '39', '234', '医学术语库维护-医学术语命名维护-获取所有概念(术语关系维护时筛选使用)');
+INSERT INTO `sys_menu_permission` VALUES ('215', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '50', '235', '医学术语库维护-化验子项维护-列表');
+INSERT INTO `sys_menu_permission` VALUES ('216', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '50', '236', '医学术语库维护-化验子项维护-添加或者编辑');
+INSERT INTO `sys_menu_permission` VALUES ('217', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '50', '237', '医学术语库维护-化验子项维护-详情');
+INSERT INTO `sys_menu_permission` VALUES ('218', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '50', '238', '医学术语库维护-化验子项维护-删除或者恢复');
+INSERT INTO `sys_menu_permission` VALUES ('219', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '51', '239', '医学术语库维护-医学术语关联维护-列表');
+INSERT INTO `sys_menu_permission` VALUES ('220', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '51', '240', '医学术语库维护-医学术语关联维护-添加或者编辑');
+INSERT INTO `sys_menu_permission` VALUES ('221', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '51', '241', '医学术语库维护-医学术语关联维护-详情');
+INSERT INTO `sys_menu_permission` VALUES ('222', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '51', '242', '医学术语库维护-医学术语关联维护-删除或者恢复');
+INSERT INTO `sys_menu_permission` VALUES ('223', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '52', '243', '医学术语库维护-医学术语多层关联维护-列表');
+INSERT INTO `sys_menu_permission` VALUES ('224', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '52', '244', '医学术语库维护-医学术语多层关联维护-添加或者编辑');
+INSERT INTO `sys_menu_permission` VALUES ('225', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '52', '245', '医学术语库维护-医学术语多层关联维护-详情');
+INSERT INTO `sys_menu_permission` VALUES ('226', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '52', '246', '医学术语库维护-医学术语多层关联维护-删除或者恢复');
+INSERT INTO `sys_menu_permission` VALUES ('227', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '42', '247', '医学术语库维护-医学术语静态知识维护-内容检索');
+INSERT INTO `sys_menu_permission` VALUES ('228', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '56', '260', '预问诊数据维护-模板维护-模板新增');
+INSERT INTO `sys_menu_permission` VALUES ('230', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '56', '262', '预问诊数据维护-模板维护-模板删除');
+INSERT INTO `sys_menu_permission` VALUES ('231', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '56', '263', '预问诊数据维护-模板维护-获取模板列表');
+INSERT INTO `sys_menu_permission` VALUES ('232', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '56', '264', '预问诊数据维护-模板维护-修改时获取已经添加过的标签');
+INSERT INTO `sys_menu_permission` VALUES ('233', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '56', '265', '预问诊数据维护-模板维护-获取单个模板(修改用)');
+INSERT INTO `sys_menu_permission` VALUES ('234', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '56', '266', '预问诊数据维护-模板维护-获取模板类型(修改时取类型)');
+INSERT INTO `sys_menu_permission` VALUES ('235', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '56', '267', '预问诊数据维护-模板维护-获取所有科室信息(主页下拉用)');
+INSERT INTO `sys_menu_permission` VALUES ('236', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '56', '268', '预问诊数据维护-模板维护-获取标签和模板关联信息');
+INSERT INTO `sys_menu_permission` VALUES ('237', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '58', '272', '诊断依据维护-诊断依据数据维护-分页');
+INSERT INTO `sys_menu_permission` VALUES ('238', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '58', '273', '诊断依据维护-诊断依据数据维护-删除');
+INSERT INTO `sys_menu_permission` VALUES ('239', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '58', '274', '诊断依据维护-诊断依据数据维护-诊断检索');
+INSERT INTO `sys_menu_permission` VALUES ('240', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '58', '275', '诊断依据维护-诊断依据数据维护-校验数据');
+INSERT INTO `sys_menu_permission` VALUES ('241', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '58', '276', '诊断依据维护-诊断依据数据维护-校验所有数据');
+INSERT INTO `sys_menu_permission` VALUES ('242', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '58', '277', '诊断依据维护-诊断依据数据维护-更新图谱');
+INSERT INTO `sys_menu_permission` VALUES ('243', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '58', '278', '诊断依据维护-诊断依据数据维护-获取详情');
+INSERT INTO `sys_menu_permission` VALUES ('244', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '58', '270', '诊断依据维护-导出诊断依据');
+INSERT INTO `sys_menu_permission` VALUES ('245', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '59', '269', '诊断依据维护-导出诊断依据问题词');
+INSERT INTO `sys_menu_permission` VALUES ('246', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '59', '271', '诊断依据维护-诊断依据问题词数据维护-分页查询');
+
+-- ----------------------------
+-- Table structure for sys_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_permission`;
+CREATE TABLE `sys_permission` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '资源ID',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `name` varchar(255) NOT NULL DEFAULT '' COMMENT '资源名称',
+  `permissionUrl` varchar(255) NOT NULL DEFAULT '' COMMENT '资源Url',
+  `method` varchar(255) NOT NULL DEFAULT 'ALL' COMMENT '资源允许的请求方式',
+  `descritpion` varchar(255) NOT NULL DEFAULT '' COMMENT '资源描述',
+  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=279 DEFAULT CHARSET=utf8 COMMENT='系统资源表';
+
+-- ----------------------------
+-- Records of sys_permission
+-- ----------------------------
+INSERT INTO `sys_permission` VALUES ('8', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '获取用户信息列表', '/userInfo/getUserInfoPag', 'ALL', '朗通-客户中心-获取用户信息列表', null);
+INSERT INTO `sys_permission` VALUES ('9', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-账户信息-获取当前用户信息', '/userAuthentication/getuserAuthenticationInfo', 'ALL', '用户-机构中心-账户信息-获取当前用户信息', null);
+INSERT INTO `sys_permission` VALUES ('10', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-账户信息-用户认证', '/userAuthentication/userAuthentication', 'ALL', '用户-机构中心-账户信息-用户认证', null);
+INSERT INTO `sys_permission` VALUES ('11', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-账户信息-获取当前用户认证状态', '/userAuthentication/getUserAuthenticationStatus', 'ALL', '用户-机构中心-账户信息-获取当前用户认证状态', null);
+INSERT INTO `sys_permission` VALUES ('12', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '修改用户和机构信息', '/userInfo/updateUserInfoAll', 'ALL', '朗通-客户中心-修改用户和机构信息', null);
+INSERT INTO `sys_permission` VALUES ('14', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '根据用户Id删除', '/userInfo/updateDeleted', 'ALL', '朗通-客户中心-根据用户Id删除', null);
+INSERT INTO `sys_permission` VALUES ('15', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已开通产品-关联产品与用户服务端', '/productService/genProductService', 'ALL', '用户-机构中心-已开通产品-关联产品与用户服务端', null);
+INSERT INTO `sys_permission` VALUES ('16', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已开通产品-删除产品与用户服务端的关联', '/productService/deleteProductService', 'ALL', '用户-机构中心-已开通产品-删除产品与用户服务端的关联', null);
+INSERT INTO `sys_permission` VALUES ('17', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已开通产品-获取当前登录用户产品服务分页列表', '/productService/getProductServiceByCurrentUser', 'ALL', '用户-机构中心-已开通产品-获取当前登录用户产品服务分页列表', null);
+INSERT INTO `sys_permission` VALUES ('18', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '模糊查询机构信息', '/userInfo/findOrganization', 'ALL', '朗通-客户中心-模糊查询机构信息', null);
+INSERT INTO `sys_permission` VALUES ('19', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '添加机构信息', '/userInfo/addOrganization', 'ALL', '朗通-客户中心-添加机构信息', null);
+INSERT INTO `sys_permission` VALUES ('20', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '添加用户信息和绑定机构', '/userInfo/addUserInfo', 'ALL', '朗通-客户中心-添加用户信息和绑定机构', null);
+INSERT INTO `sys_permission` VALUES ('21', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已开通产品-查询当前登录用户已开通产品列表', '/diagLantoneProduct/opendedProductByCurrentUser', 'ALL', '用户-机构中心-已开通产品-查询当前登录用户已开通产品列表', null);
+INSERT INTO `sys_permission` VALUES ('22', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '审核用户信息接口', '/userInfo/auditUserInfoAll', 'ALL', '朗通-客户中心-审核用户信息接口', null);
+INSERT INTO `sys_permission` VALUES ('24', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-管理服务端-新增服务端', '/serviceInfo/createService', 'ALL', '用户-机构中心-管理服务端-新增服务端', null);
+INSERT INTO `sys_permission` VALUES ('25', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-管理服务端-修改服务端', '/serviceInfo/updateService', 'ALL', '用户-机构中心-管理服务端-修改服务端', null);
+INSERT INTO `sys_permission` VALUES ('26', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-管理服务端-获取当前登录用户的服务列表', '/serviceInfo/getServiceListByCurrentUser', 'ALL', '用户-机构中心-管理服务端-获取当前登录用户的服务列表', null);
+INSERT INTO `sys_permission` VALUES ('27', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-管理服务端-获取当前登录用户的服务分页列表', '/serviceInfo/getServiceListPageByCurrentUser', 'ALL', '用户-机构中心-管理服务端-获取当前登录用户的服务分页列表', null);
+INSERT INTO `sys_permission` VALUES ('28', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '根据用户id查询已开通的功能', '/productOrder/getInformationAvailableByUserId', 'ALL', '朗通-客户中心-根据用户id查询已开通的功能', null);
+INSERT INTO `sys_permission` VALUES ('29', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '根据用户id和产品id,启用和停用功能', '/productOrder/startAndendByuserId', 'ALL', '朗通-客户中心-根据用户id和产品id,启用和停用功能', null);
+INSERT INTO `sys_permission` VALUES ('30', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '根据用户id和产品id,删除开通信息', '/productOrder/delInformationAvailable', 'ALL', '朗通-客户中心-根据用户id和产品id,删除开通信息', null);
+INSERT INTO `sys_permission` VALUES ('31', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '根据用户id和产品id,修改开通时间', '/productOrder/modifyOpeningTime', 'ALL', '朗通-客户中心-根据用户id和产品id,修改开通时间', null);
+INSERT INTO `sys_permission` VALUES ('32', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '根据时间导出用户和机构信息', '/report/exportUserInfoAll', 'ALL', '朗通-客户中心-根据时间导出用户和机构信息', null);
+INSERT INTO `sys_permission` VALUES ('33', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已经生成令牌-生成令牌', '/serviceToken/createServiceToken', 'ALL', '用户-机构中心-已经生成令牌-生成令牌', null);
+INSERT INTO `sys_permission` VALUES ('34', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已经生成令牌-禁用令牌', '/serviceToken/disableToken', 'ALL', '用户-机构中心-已经生成令牌-禁用令牌', null);
+INSERT INTO `sys_permission` VALUES ('35', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已经生成令牌-启用令牌', '/serviceToken/enableToken', 'ALL', '用户-机构中心-已经生成令牌-启用令牌', null);
+INSERT INTO `sys_permission` VALUES ('36', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已经生成令牌-删除令牌', '/serviceToken/deleteTokenByProductServiceId', 'ALL', '用户-机构中心-已经生成令牌-删除令牌', null);
+INSERT INTO `sys_permission` VALUES ('37', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-控制台-待审核订单个数', '/productOrder/waitExamOrderCou', 'ALL', '朗通-控制台-待审核订单个数', null);
+INSERT INTO `sys_permission` VALUES ('38', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-控制台-待认证账号数量', '/userAuthentication/waitAuthen', 'ALL', '朗通-控制台-待认证账号数量', null);
+INSERT INTO `sys_permission` VALUES ('39', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-控制台-账号认证进度', '/userAuthentication/queryAuthProgress', 'ALL', '用户-控制台-账号认证进度', null);
+INSERT INTO `sys_permission` VALUES ('40', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-控制台-产品认证进度', '/productOrder/productAuthProgress', 'ALL', '用户-控制台-产品认证进度', null);
+INSERT INTO `sys_permission` VALUES ('41', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-控制台-已开通产品', '/productOrder/getConsoleOpened', 'ALL', '用户-控制台-已开通产品', null);
+INSERT INTO `sys_permission` VALUES ('42', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-控制台-可试用产品', '/productOrder/getConsoleOnTrial', 'ALL', '用户-控制台-可试用产品', null);
+INSERT INTO `sys_permission` VALUES ('43', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-控制台-产品立即试用接口', '/productOrder/openUpOnTrial', 'ALL', '用户-控制台-产品立即试用接口', null);
+INSERT INTO `sys_permission` VALUES ('44', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-控制台-可展示的选项卡', '/productOrder/enShowOption', 'ALL', '用户-控制台-可展示的选项卡', null);
+INSERT INTO `sys_permission` VALUES ('45', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-控制台-账户信息', '/user/getConsoleUserInfo', 'ALL', '用户-控制台-账户信息', null);
+INSERT INTO `sys_permission` VALUES ('46', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '查询所有用户已开通的功能', '/productOrder/getInformationAvailableAll', 'ALL', '朗通-客户中心-查询所有用户已开通的功能', null);
+INSERT INTO `sys_permission` VALUES ('47', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '查询用户信息和机构信息开通产品', '/userInfo/getUserOrganProductAll', 'ALL', '朗通-客户中心-查询用户信息和机构信息开通产品', null);
+INSERT INTO `sys_permission` VALUES ('48', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-个人中心-修改密码', '/user/midifyPassword', 'ALL', '朗通-个人中心-修改密码', null);
+INSERT INTO `sys_permission` VALUES ('51', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-更多服务-显示产品', '/morServices/showProductInfo', 'ALL', '用户-更多服务-显示产品', null);
+INSERT INTO `sys_permission` VALUES ('52', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-更多服务-开通产品', '/morServices/addOrder', 'ALL', '用户-更多服务-开通产品', null);
+INSERT INTO `sys_permission` VALUES ('53', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品线管理-添加产品', '/diagLantoneProduct/addProducts', 'ALL', '朗通-产品线管理-添加产品', null);
+INSERT INTO `sys_permission` VALUES ('54', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-管理服务端-删除服务端', '/serviceInfo/delService', 'ALL', '用户-机构中心-管理服务端-删除服务端', null);
+INSERT INTO `sys_permission` VALUES ('55', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品线管理-查询', '/diagLantoneProduct/selectProduct', 'ALL', '朗通-产品线管理-查询', null);
+INSERT INTO `sys_permission` VALUES ('56', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品线管理-修改', '/diagLantoneProduct/updateProduct', 'ALL', '朗通-产品线管理-修改', null);
+INSERT INTO `sys_permission` VALUES ('57', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品线管理-(启用/禁用)', '/diagLantoneProduct/updateServiceStatus', 'ALL', '朗通-产品线管理-(启用/禁用)', null);
+INSERT INTO `sys_permission` VALUES ('58', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品线管理-删除', '/diagLantoneProduct/deleteProduct', 'ALL', '朗通-产品线管理-删除', null);
+INSERT INTO `sys_permission` VALUES ('59', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品线管理-详情', '/diagLantoneProduct/opendedProduct', 'ALL', '朗通-产品线管理-详情', null);
+INSERT INTO `sys_permission` VALUES ('60', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品申请-显示所有订单明细', '/diagOrderDetails/getAllOrderDetials', 'ALL', '朗通-产品申请-显示所有订单明细', null);
+INSERT INTO `sys_permission` VALUES ('61', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品申请-审核', '/diagOrderDetails/auditStatus', 'ALL', '朗通-产品申请-审核', null);
+INSERT INTO `sys_permission` VALUES ('62', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-产品申请-显示所有订单', '/productOrder/getAllProductOrder', 'ALL', '朗通-产品申请-显示所有订单', null);
+INSERT INTO `sys_permission` VALUES ('63', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '默认-获取用户、机构、菜单信息', '/user/getUserOrgMenu', 'ALL', '全部用户-获取用户、机构、菜单信息', null);
+INSERT INTO `sys_permission` VALUES ('64', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-客户中心-分页查询注册用户信息接口', '/userInfo/queryUserInformation', 'ALL', '朗通-客户中心-分页查询注册用户信息接口', null);
+INSERT INTO `sys_permission` VALUES ('65', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-客户中心-分页查询机构信息接口', '/userInfo/queryMechanismInformation', 'ALL', '朗通-客户中心-分页查询机构信息接口', null);
+INSERT INTO `sys_permission` VALUES ('66', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-客户中心-分页查询已认证用户信息和机构信息及开通产品接口', '/userInfo/queryVerifiedUserOrganizationProduct', 'ALL', '朗通-客户中心-分页查询已认证用户信息和机构信息及开通产品接口', null);
+INSERT INTO `sys_permission` VALUES ('67', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-客户中心-分页查询认证中的用户信息接口', '/userInfo/queryAuthentication', 'ALL', '朗通-客户中心-分页查询认证中的用户信息接口', null);
+INSERT INTO `sys_permission` VALUES ('68', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '\r\n导出产品申请相关信息', '/reporExcel/exportProductOrderInfo', 'ALL', '导出产品申请相关信息', null);
+INSERT INTO `sys_permission` VALUES ('69', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-个人中心-获取个人信息', '/user/getPersonInfo', 'ALL', '朗通-个人中心-获取个人信息', null);
+INSERT INTO `sys_permission` VALUES ('70', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '朗通-个人中心-修改个人信息', '/user/updatePersonInfo', 'ALL', '朗通-个人中心-修改个人信息', null);
+INSERT INTO `sys_permission` VALUES ('71', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-导出用户信息', '/report/exportUserInfo', 'ALL', '客户中心-导出用户信息', null);
+INSERT INTO `sys_permission` VALUES ('72', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-导出机构信息', '/report/exportOrganization', 'ALL', '客户中心-导出机构信息', null);
+INSERT INTO `sys_permission` VALUES ('73', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-导出认证中用户的信息:', '/report/exportKema', 'ALL', '客户中心-导出认证中用户的信息:', null);
+INSERT INTO `sys_permission` VALUES ('74', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-导出已认证用户的信息', '/report/exportVerified', 'ALL', '客户中心-导出已认证用户的信息', null);
+INSERT INTO `sys_permission` VALUES ('75', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户更多服务-产品续费', '/morServices/addRenewalsInfo', 'ALL', '用户更多服务-产品续费', null);
+INSERT INTO `sys_permission` VALUES ('76', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-超管修改用户信息接口', '/userInfo/updateUserInfo', 'ALL', '客户中心-超管修改用户信息接口', null);
+INSERT INTO `sys_permission` VALUES ('77', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-超管修改机构信息接口', '/userInfo/updateOrganizations', 'ALL', '客户中心-超管修改机构信息接口', null);
+INSERT INTO `sys_permission` VALUES ('78', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '续费管理-显示', '/userRenewals/renewalsInfos', 'ALL', '续费管理-显示', null);
+INSERT INTO `sys_permission` VALUES ('79', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '用户-机构中心-已经生成令牌-获取令牌', '/serviceToken/getTokenByProductServiceId', 'ALL', '用户-机构中心-已经生成令牌-获取令牌', null);
+INSERT INTO `sys_permission` VALUES ('80', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '续费管理-删除', '/userRenewals/deleteRenewalsInfos', 'ALL', '续费管理-删除', null);
+INSERT INTO `sys_permission` VALUES ('81', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '续费管理-续费', '/productOrder/modifyOpeningTime', 'ALL', '续费管理-续费', null);
+INSERT INTO `sys_permission` VALUES ('82', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '续费管理-取消续费', '/userRenewals/cancelRenewalsInfos', 'ALL', '续费管理-取消续费', null);
+INSERT INTO `sys_permission` VALUES ('83', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-认证用户信息和机构信息不通过接口(新)', '/userInfo/auditUserInfoAllNopass', 'ALL', '客户中心-认证用户信息和机构信息不通过接口(新)', null);
+INSERT INTO `sys_permission` VALUES ('84', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-认证用户信息和机构信息通过接口(新)', '/userInfo/auditUserInfoAllPass', 'ALL', '客户中心-认证用户信息和机构信息通过接口(新)', null);
+INSERT INTO `sys_permission` VALUES ('85', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-查询用户续费数量', '/productOrder/getUserWaitingRenewal', 'ALL', '客户中心-查询用户续费数量', null);
+INSERT INTO `sys_permission` VALUES ('86', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-查询用户是否有待审核的产品数量', '/productOrder/getOrderByUserToAudit', 'ALL', '客户中心-查询用户是否有待审核的产品数量', null);
+INSERT INTO `sys_permission` VALUES ('87', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '客户中心-已开通产品状态校验', '/productOrder/openProductCheck', 'ALL', '客户中心-已开通产品状态校验', null);
+INSERT INTO `sys_permission` VALUES ('88', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-独立标签维护-新增|修改', '/questionInfo/saveOrUpdate', 'ALL', 'ICSS数据维护-独立标签维护-新增|修改', null);
+INSERT INTO `sys_permission` VALUES ('89', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-独立标签维护-删除', '/questionInfo/delete', 'ALL', 'ICSS数据维护-独立标签维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('90', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-独立标签维护-分页列表', '/questionInfo/list', 'ALL', 'ICSS数据维护-独立标签维护-分页列表', null);
+INSERT INTO `sys_permission` VALUES ('91', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-标签组维护-新增|修改', '/questionInfo/saveOrUpdate', 'ALL', 'ICSS数据维护-标签组维护-新增|修改', null);
+INSERT INTO `sys_permission` VALUES ('92', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-标签组维护-删除', '/questionInfo/delete', 'ALL', 'ICSS数据维护-标签组维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('93', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-标签组维护-分页列表', '/questionInfo/list', 'ALL', 'ICSS数据维护-标签组维护-分页列表', null);
+INSERT INTO `sys_permission` VALUES ('94', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-标签组维护-获取特殊标签(同伴|无)', '/questionInfo/getSpecial', 'ALL', 'ICSS数据维护-标签组维护-获取特殊标签(同伴|无)', null);
+INSERT INTO `sys_permission` VALUES ('95', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-标签组维护-根据id返回内容', '/questionInfo/getById', 'ALL', 'ICSS数据维护-标签组维护-根据id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('96', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-标签组维护-根据多个id返回内容', '/questionInfo/getByIds', 'ALL', 'ICSS数据维护-标签组维护-根据多个id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('98', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-标签组维护-检索', '/questionInfo/index', 'ALL', 'ICSS数据维护-标签组维护-检索', null);
+INSERT INTO `sys_permission` VALUES ('99', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-科室维护-修改', '/deptInfo/updateDeptInfo', 'ALL', 'ICSS数据维护-科室维护-修改', null);
+INSERT INTO `sys_permission` VALUES ('100', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-科室维护-删除', '/deptInfo/deleteDeptInfo', 'ALL', 'ICSS数据维护-科室维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('101', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-科室维护-查询', '/deptInfo/getDeptInfo', 'ALL', 'ICSS数据维护-科室维护-查询', null);
+INSERT INTO `sys_permission` VALUES ('102', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-科室维护-详情', '/deptInfo/getDeptInfoDetials', 'ALL', 'ICSS数据维护-科室维护-详情', null);
+INSERT INTO `sys_permission` VALUES ('104', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-科室维护-添加', '/deptInfo/addDeptInfo', 'ALL', 'ICSS数据维护-科室维护-添加', null);
+INSERT INTO `sys_permission` VALUES ('105', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-别名维护-新增|修改', '/retrieval/addTagRetrieval', 'ALL', 'ICSS数据维护-别名维护-新增|修改', null);
+INSERT INTO `sys_permission` VALUES ('106', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-别名维护-详情', '/retrieval/getRetrievalsByTag', 'ALL', 'ICSS数据维护-别名维护-详情', null);
+INSERT INTO `sys_permission` VALUES ('107', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-别名维护-删除', '/retrieval/delRetrievalsByQuesId', 'ALL', 'ICSS数据维护-别名维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('108', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-别名维护-导入', '/retrieval/retrievalExcelIm', 'ALL', 'ICSS数据维护-别名维护-导入', null);
+INSERT INTO `sys_permission` VALUES ('109', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-别名维护-列表', '/retrieval/retrievalList', 'ALL', 'ICSS数据维护-别名维护-列表', null);
+INSERT INTO `sys_permission` VALUES ('110', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-添加', '/moduleInfo/saveModuleInfo', 'ALL', 'ICSS数据维护-模板维护-添加', null);
+INSERT INTO `sys_permission` VALUES ('111', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-修改', '/moduleInfo/updateModuleInfo', 'ALL', 'ICSS数据维护-模板维护-修改', null);
+INSERT INTO `sys_permission` VALUES ('112', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-删除', '/moduleInfo/delete', 'ALL', 'ICSS数据维护-模板维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('113', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-获取标签池信息', '/moduleInfo/getQuestionInfos', 'ALL', 'ICSS数据维护-模板维护-获取标签池信息', null);
+INSERT INTO `sys_permission` VALUES ('114', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-获取子模板信息', '/moduleInfo/getModuleInfo', 'ALL', 'ICSS数据维护-模板维护-获取子模板信息', null);
+INSERT INTO `sys_permission` VALUES ('115', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-获取模板列表', '/moduleInfo/getModuleInfoList', 'ALL', 'ICSS数据维护-模板维护-获取模板列表', null);
+INSERT INTO `sys_permission` VALUES ('116', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-获取模板明细信息', '/moduleInfo/getModuleDetailInfo', 'ALL', 'ICSS数据维护-模板维护-获取模板明细信息', null);
+INSERT INTO `sys_permission` VALUES ('117', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-获取单个模板信息(修改用)', '/moduleInfo/getModuleInfoOne', 'ALL', 'ICSS数据维护-模板维护-获取单个模板信息(修改用)', null);
+INSERT INTO `sys_permission` VALUES ('118', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-常见症状维护-添加和修改', '/questionUsual/addQuestionUsual', 'ALL', 'ICSS数据维护-常见症状维护-添加和修改', null);
+INSERT INTO `sys_permission` VALUES ('119', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-常见症状维护-删除', '/questionUsual/deleteQuestionUsual', 'ALL', 'ICSS数据维护-常见症状维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('120', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-常见症状维护-获取科室名称', '/questionUsual/getDeptName', 'ALL', 'ICSS数据维护-常见症状维护-获取科室名称', null);
+INSERT INTO `sys_permission` VALUES ('121', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-常见症状维护-获取标签信息', '/questionUsual/getQuestionInfo', 'ALL', 'ICSS数据维护-常见症状维护-获取标签信息', null);
+INSERT INTO `sys_permission` VALUES ('122', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-常见症状维护-根据科室获取常用标签信息(修改和详情用)', '/questionUsual/getQuestionUsualByDept', 'ALL', 'ICSS数据维护-常见症状维护-根据科室获取常用标签信息(修改和详情用)', null);
+INSERT INTO `sys_permission` VALUES ('123', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-常见症状维护-获取科室信息(常见症状维护系统页面查询)', '/questionUsual/getDeptInfos', 'ALL', 'ICSS数据维护-常见症状维护-获取科室信息(常见症状维护系统页面查询)', null);
+INSERT INTO `sys_permission` VALUES ('124', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-免责申明-获取免责申明详情', '/disclaimerInformation/getDisclaimerInformations', 'ALL', 'ICSS数据维护-免责申明-获取免责申明详情', null);
+INSERT INTO `sys_permission` VALUES ('125', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-免责申明-增加免责申明详情', '/disclaimerInformation/addDisclaimerInformations', 'ALL', 'ICSS数据维护-免责申明-增加免责申明详情', null);
+INSERT INTO `sys_permission` VALUES ('126', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-免责申明-修改免责申明详情', '/disclaimerInformation/updateDisclaimerInformations', 'ALL', 'ICSS数据维护-免责申明-修改免责申明详情', null);
+INSERT INTO `sys_permission` VALUES ('127', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-免责申明-删除免责申明详情', '/disclaimerInformation/cancelDisclaimerInformations', 'ALL', 'ICSS数据维护-免责申明-删除免责申明详情', null);
+INSERT INTO `sys_permission` VALUES ('128', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-免责申明-启用免责申明详情', '/disclaimerInformation/startDisclaimerInformations', 'ALL', 'ICSS数据维护-免责申明-启用免责申明详情', null);
+INSERT INTO `sys_permission` VALUES ('129', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-免责申明-停用免责申明详情', '/disclaimerInformation/endDisclaimerInformations', 'ALL', 'ICSS数据维护-免责申明-停用免责申明详情', null);
+INSERT INTO `sys_permission` VALUES ('130', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护-版本信息维护-获取版本信息', '/versionInfo/getVersionInfoAlls', 'ALL', '各版本信息维护-版本信息维护-获取版本信息', null);
+INSERT INTO `sys_permission` VALUES ('131', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护-版本信息维护-保存版本信息', '/versionInfo/saveVersionInfoAlls', 'ALL', '各版本信息维护-版本信息维护-保存版本信息', null);
+INSERT INTO `sys_permission` VALUES ('132', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护-版本信息维护-更新版本信息', '/versionInfo/updateVersionInfoAlls', 'ALL', '各版本信息维护-版本信息维护-更新版本信息', null);
+INSERT INTO `sys_permission` VALUES ('133', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护-版本信息维护-删除版本信息', '/versionInfo/cancelVersionInfoAlls', 'ALL', '各版本信息维护-版本信息维护-删除版本信息', null);
+INSERT INTO `sys_permission` VALUES ('134', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护-版本信息维护-更新版本详情信息', '/versionDetail/updateVersionDetails', 'ALL', '各版本信息维护-版本信息维护-更新版本详情信息', null);
+INSERT INTO `sys_permission` VALUES ('135', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护-版本信息维护-删除版本详情信息', '/versionDetail/cancelVersionDetails', 'ALL', '各版本信息维护-版本信息维护-删除版本详情信息', null);
+INSERT INTO `sys_permission` VALUES ('136', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护-版本信息维护-增加版本详情信息', '/versionDetail/addVersionDetails', 'ALL', '各版本信息维护-版本信息维护-增加版本详情信息', null);
+INSERT INTO `sys_permission` VALUES ('137', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-查体模板维护-查体模板列表', '/deptVital/getDeptVitalPage', 'ALL', 'ICSS数据维护-查体模板维护-查体模板列表', null);
+INSERT INTO `sys_permission` VALUES ('138', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-查体模板维护-保存', '/deptVital/saveDeptVitals', 'ALL', 'ICSS数据维护-查体模板维护-保存', null);
+INSERT INTO `sys_permission` VALUES ('139', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-查体模板维护-根据科室删除', '/deptVital/delAllDeptVitalList', 'ALL', 'ICSS数据维护-查体模板维护-根据科室删除', null);
+INSERT INTO `sys_permission` VALUES ('140', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-查体模板维护-获取未维护的科室(新增)', '/deptVital/getDeptShortList_create', 'ALL', 'ICSS数据维护-查体模板维护-获取未维护的科室(新增)', null);
+INSERT INTO `sys_permission` VALUES ('141', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-查体模板维护-获取未维护的科室(修改)', '/deptVital/getDeptShortList_modify', 'ALL', 'ICSS数据维护-查体模板维护-获取未维护的科室(修改)', null);
+INSERT INTO `sys_permission` VALUES ('142', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-查体模板维护-根据科室获取查体模板', '/deptVital/getModuleByDeptId', 'ALL', 'ICSS数据维护-查体模板维护-根据科室获取查体模板', null);
+INSERT INTO `sys_permission` VALUES ('161', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护-版本信息维护-根据版本id获取版本详情信息', '/versionDetail/getDetailById', 'ALL', '各版本信息维护-版本信息维护-根据版本id获取版本详情信息', null);
+INSERT INTO `sys_permission` VALUES ('162', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语命名维护-获取所有医学术语命名', '/concept/getAllConcept', 'ALL', '医学术语库维护-医学术语命名维护-获取所有医学术语命名', null);
+INSERT INTO `sys_permission` VALUES ('163', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语命名维护-获取医学术语命名列表', '/concept/getAllInformation', 'ALL', '医学术语库维护-医学术语命名维护-获取医学术语命名列表', null);
+INSERT INTO `sys_permission` VALUES ('164', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语命名维护-医学术语命名删除', '/concept/removeConceptInfo', 'ALL', '医学术语库维护-医学术语命名维护-医学术语命名删除', null);
+INSERT INTO `sys_permission` VALUES ('165', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语命名维护-获取医学术语命名详情', '/concept/getConceptInfoDetail', 'ALL', '医学术语库维护-医学术语命名维护-获取医学术语命名详情', null);
+INSERT INTO `sys_permission` VALUES ('166', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-术语医学属性维护-获取术语医学属性列表', '/medical/getMedicalInfoList', 'ALL', '医学术语库维护-术语医学属性维护-获取术语医学属性列表', null);
+INSERT INTO `sys_permission` VALUES ('167', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-术语医学属性维护-获取术语医学属性详情', '/medical/getMedicalInfoDetail', 'ALL', '医学术语库维护-术语医学属性维护-获取术语医学属性详情', null);
+INSERT INTO `sys_permission` VALUES ('168', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-术语医学属性维护-术语医学属性添加或者编辑', '/medical/addMedicalInfo', 'ALL', '医学术语库维护-术语医学属性维护-术语医学属性添加或者编辑', null);
+INSERT INTO `sys_permission` VALUES ('169', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-术语医学属性维护-术语医学属性删除', '/medical/removeMedicalInfo', 'ALL', '医学术语库维护-术语医学属性维护-术语医学属性删除', null);
+INSERT INTO `sys_permission` VALUES ('170', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关系维护-获取医学术语关系列表', '/relation/getRelationInfoList', 'ALL', '医学术语库维护-医学术语关系维护-获取医学术语关系列表', null);
+INSERT INTO `sys_permission` VALUES ('171', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关系维护-医学术语关系删除', '/relation/removeRelationInfo', 'ALL', '医学术语库维护-医学术语关系维护-医学术语关系删除', null);
+INSERT INTO `sys_permission` VALUES ('172', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关系维护-获取医学术语关系详情', '/relation/getRelationInfoDetail', 'ALL', '医学术语库维护-医学术语关系维护-获取医学术语关系详情', null);
+INSERT INTO `sys_permission` VALUES ('173', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语静态知识维护-获取医学术语静态知识列表', '/conceptDetail//page', 'ALL', '医学术语库维护-医学术语静态知识维护-获取医学术语静态知识列表', null);
+INSERT INTO `sys_permission` VALUES ('174', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语静态知识维护-医学术语静态知识删除', '/conceptDetail/delete', 'ALL', '医学术语库维护-医学术语静态知识维护-医学术语静态知识删除', null);
+INSERT INTO `sys_permission` VALUES ('175', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语静态知识维护-获取医学术语静态知识详情', '/conceptDetail/getByConceptId', 'ALL', '医学术语库维护-医学术语静态知识维护-获取医学术语静态知识详情', null);
+INSERT INTO `sys_permission` VALUES ('176', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语静态知识维护-医学术语静态知识添加或者编辑', '/conceptDetail/insertOrUpdate', 'ALL', '医学术语库维护-医学术语静态知识维护-医学术语静态知识添加或者编辑', null);
+INSERT INTO `sys_permission` VALUES ('177', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-别名维护-标签搜索', '/questionInfo/indexRev', 'ALL', 'ICSS数据维护-别名维护-标签搜索', null);
+INSERT INTO `sys_permission` VALUES ('178', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-化验大小项与公表项对应维护-分页列表', '/lisMapping/getLisMappingPage', 'ALL', 'ICSS数据维护-化验大小项与公表项对应维护-分页列表', null);
+INSERT INTO `sys_permission` VALUES ('179', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-化验大小项与公表项对应维护-保存', '/lisMapping/saveLisMapping', 'ALL', 'ICSS数据维护-化验大小项与公表项对应维护-新增', null);
+INSERT INTO `sys_permission` VALUES ('180', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-化验大小项与公表项对应维护-是否已存在', '/lisMapping/hasLisMapping', 'ALL', 'ICSS数据维护-化验大小项与公表项对应维护-修改', null);
+INSERT INTO `sys_permission` VALUES ('181', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-化验大小项与公表项对应维护-删除(单条)', '/lisMapping/delLisMappingById', 'ALL', 'ICSS数据维护-化验大小项与公表项对应维护-删除(单条)', null);
+INSERT INTO `sys_permission` VALUES ('182', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-化验大小项与公表项对应维护-删除(批量)', '/lisMapping/delLisMappingByIds', 'ALL', 'ICSS数据维护-化验大小项与公表项对应维护-删除(批量)', null);
+INSERT INTO `sys_permission` VALUES ('183', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-获取模板type', '/moduleInfo/getModuleType', 'ALL', 'ICSS数据维护-获取模板type', null);
+INSERT INTO `sys_permission` VALUES ('184', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病评估维护-分页模糊查询标签组维护接口', '/evaluation/queryEvaluationModulePages', 'ALL', 'ICSS数据维护-慢病评估维护-分页模糊查询标签组维护接口', null);
+INSERT INTO `sys_permission` VALUES ('185', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病评估维护-获取慢病标签组维护', '/evaluation/getEvaluationModuleLists', 'ALL', 'ICSS数据维护-慢病评估维护-获取慢病标签组维护', null);
+INSERT INTO `sys_permission` VALUES ('186', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病评估维护-慢病评估维护——修改管理评估', '/evaluation/updateEvaluationModuleLists', 'ALL', 'ICSS数据维护-慢病评估维护-慢病评估维护——修改管理评估', null);
+INSERT INTO `sys_permission` VALUES ('187', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病评估维护-慢病评估维护——添加管理评估', '/evaluation/saveEvaluationModuleLists', 'ALL', 'ICSS数据维护-慢病评估维护-慢病评估维护——添加管理评估', null);
+INSERT INTO `sys_permission` VALUES ('188', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病评估维护-删除慢病标签组维护', '/evaluation/cancelEvaluationModuleAlls', 'ALL', 'ICSS数据维护-慢病评估维护-删除慢病标签组维护', null);
+INSERT INTO `sys_permission` VALUES ('189', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病指标值关联维护-分页模糊查询慢病指标值关联维护', '/indexConfig/queryIndexConfigPages', 'ALL', 'ICSS数据维护-慢病指标值关联维护-分页模糊查询慢病指标值关联维护', null);
+INSERT INTO `sys_permission` VALUES ('190', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病指标值关联维护-获取慢病指标值关联维护', '/indexConfig/getIndexConfigLists', 'ALL', 'ICSS数据维护-慢病指标值关联维护-获取慢病指标值关联维护', null);
+INSERT INTO `sys_permission` VALUES ('191', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病指标值关联维护-慢病指标值关联维护——修改关联', '/indexConfig/updateIndexConfigList', 'ALL', 'ICSS数据维护-慢病指标值关联维护-慢病指标值关联维护——修改关联', null);
+INSERT INTO `sys_permission` VALUES ('192', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病指标值关联维护-慢病指标值关联维护——添加关联', '/indexConfig/saveIndexConfigLists', 'ALL', 'ICSS数据维护-慢病指标值关联维护-慢病指标值关联维护——添加关联', null);
+INSERT INTO `sys_permission` VALUES ('193', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病指标值关联维护-删除慢病指标值关联维护', '/indexConfig/cancelIndexConfigAlls', 'ALL', 'ICSS数据维护-慢病指标值关联维护-删除慢病指标值关联维护', null);
+INSERT INTO `sys_permission` VALUES ('198', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-独立标签维护-获取特殊标签(同伴|无)', '/questionInfo/getSpecial', 'ALL', 'ICSS数据维护-独立标签维护-获取特殊标签(同伴|无)', null);
+INSERT INTO `sys_permission` VALUES ('199', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-独立标签维护-根据id返回内容', '/questionInfo/getById', 'ALL', 'ICSS数据维护-独立标签维护-根据id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('200', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-独立标签维护-根据多个id返回内容', '/questionInfo/getByIds', 'ALL', 'ICSS数据维护-独立标签维护-根据多个id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('201', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-独立标签维护-检索', '/questionInfo/index', 'ALL', 'ICSS数据维护-独立标签维护-检索', null);
+INSERT INTO `sys_permission` VALUES ('209', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-术语医学属性维护-术语医学属性excel文件导入', '/medical/medicalInfoExcelIm', 'ALL', '医学术语库维护-术语医学属性维护-术语医学属性excel文件导入', null);
+INSERT INTO `sys_permission` VALUES ('210', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关系维护-医学术语关系添加或者编辑', '/relation/addRelationInfo', 'ALL', '医学术语库维护-医学术语关系维护-医学术语关系添加或者编辑', null);
+INSERT INTO `sys_permission` VALUES ('211', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关系维护-医学术语关系excel文件导入', '/relation/relationInfoExcelIm', 'ALL', '医学术语库维护-医学术语关系维护-医学术语关系excel文件导入', null);
+INSERT INTO `sys_permission` VALUES ('213', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语命名维护-医学术语命名添加或者编辑', '/concept/addConceptInfo', 'ALL', '医学术语库维护-医学术语命名维护-医学术语命名添加或者编辑', null);
+INSERT INTO `sys_permission` VALUES ('214', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语命名维护-医学术语命名excel文件导入', '/concept/conceptInfoExcelIm', 'ALL', '医学术语库维护-医学术语命名维护-医学术语命名excel文件导入', null);
+INSERT INTO `sys_permission` VALUES ('215', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语类型维护-获取所有术语类型', '/lexicon/getAllLexicon', 'ALL', '医学术语库维护-医学术语类型维护-获取所有术语类型', null);
+INSERT INTO `sys_permission` VALUES ('216', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语类型维护-获取术语类型列表', '/lexicon/getLexiconList', 'ALL', '医学术语库维护-医学术语类型维护-获取术语类型列表', null);
+INSERT INTO `sys_permission` VALUES ('217', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语类型维护-术语类型添加', '/lexicon/addLexicon', 'ALL', '医学术语库维护-医学术语类型维护-术语类型添加', null);
+INSERT INTO `sys_permission` VALUES ('218', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关系维护-获取所有关系类型', '/lexiconRelationship/getAllLexiconRelationship', 'ALL', '医学术语库维护-医学术语关系维护-获取所有关系类型', null);
+INSERT INTO `sys_permission` VALUES ('219', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-术语医学属性维护-获取所有部位', '/bodypart/getAllBodypart', 'ALL', '医学术语库维护-术语医学属性维护-获取所有部位', null);
+INSERT INTO `sys_permission` VALUES ('220', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-术语医学属性维护-获取术语医学属性所需全部科室', '/medical/getAllDepts', 'ALL', '医学术语库维护-术语医学属性维护-获取术语医学属性所需全部科室', null);
+INSERT INTO `sys_permission` VALUES ('221', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-量表结构维护-新增|修改', '/scaleContent/insertOrUpdate', 'ALL', '医学术语库维护-量表结构维护-新增|修改', null);
+INSERT INTO `sys_permission` VALUES ('222', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-量表结构维护-分页列表', '/scaleContent/page', 'ALL', '医学术语库维护-量表结构维护-分页列表', null);
+INSERT INTO `sys_permission` VALUES ('223', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语命名维护-获取所有化验公表项', '/concept/getAllLisConcept', 'ALL', '医学术语库维护-医学术语命名维护-获取所有化验公表项', null);
+INSERT INTO `sys_permission` VALUES ('224', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-量表结构维护-删除|恢复', '/scaleContent/delete', 'ALL', '医学术语库维护-量表结构维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('225', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-量表结构维护-根据id返回内容', '/scaleContent/getByConceptId', 'ALL', '医学术语库维护-量表结构维护-根据id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('227', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-量表结构维护-检索', '/scaleContent/index', 'ALL', '医学术语库维护-量表结构维护-检索', null);
+INSERT INTO `sys_permission` VALUES ('228', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-获取所有科室和疾病信息', '/moduleInfo/getAllDeptAndDisInfo', 'ALL', 'ICSS数据维护-获取所有科室和疾病信息', null);
+INSERT INTO `sys_permission` VALUES ('229', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病指标值关联维护-慢病指标疾病标签查询', '/indexConfig/queryIndexConfigDiseaseNames', 'ALL', 'ICSS数据维护-慢病指标值关联维护-慢病指标疾病标签查询', null);
+INSERT INTO `sys_permission` VALUES ('230', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-慢病评估维护-慢病疾病标签查询', '/evaluation/queryEvaluationDiseaseNames', 'ALL', 'ICSS数据维护-慢病评估维护-慢病疾病标签查询', null);
+INSERT INTO `sys_permission` VALUES ('231', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-标签组维护-子标签检索', '/questionInfo/indexSub', 'ALL', 'ICSS数据维护-标签组维护-子标签检索', null);
+INSERT INTO `sys_permission` VALUES ('232', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-模板维护-获取标签和模板关联信息(删除标签时校验用)', '/moduleInfo/getQuestiongAndModuleRelations', 'ALL', 'ICSS数据维护-模板维护-获取标签和模板关联信息(删除标签时校验用)', null);
+INSERT INTO `sys_permission` VALUES ('233', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', 'ICSS数据维护-查体模板维护-查询科室下拉列表(查询页面)', '/deptVital/getDeptShortList_Searh', 'ALL', 'ICSS数据维护-查体模板维护-查询科室下拉列表(查询页面)', null);
+INSERT INTO `sys_permission` VALUES ('234', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语命名维护-获取所有概念(术语关系维护时筛选使用)', '/concept/getAllForRelation', 'ALL', '医学术语库维护-医学术语命名维护-获取所有概念(术语关系维护时筛选使用)', null);
+INSERT INTO `sys_permission` VALUES ('235', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-化验子项维护-列表', '/lisSonContact/lisSonContactList', 'ALL', '医学术语库维护-化验子项维护-列表', null);
+INSERT INTO `sys_permission` VALUES ('236', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-化验子项维护-添加或者编辑', '/lisSonContact/addRelation', 'ALL', '医学术语库维护-化验子项维护-添加或者编辑', null);
+INSERT INTO `sys_permission` VALUES ('237', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-化验子项维护-详情', '/lisSonContact/relationContactDetail', 'ALL', '医学术语库维护-化验子项维护-详情', null);
+INSERT INTO `sys_permission` VALUES ('238', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-化验子项维护-删除或者恢复', '/lisSonContact/removeRelationContact', 'ALL', '医学术语库维护-化验子项维护-删除或者恢复', null);
+INSERT INTO `sys_permission` VALUES ('239', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关联维护-列表', '/relationContact/relationContactList', 'ALL', '医学术语库维护-医学术语关联维护-列表', null);
+INSERT INTO `sys_permission` VALUES ('240', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关联维护-添加或者编辑', '/relationContact/addRelation', 'ALL', '医学术语库维护-医学术语关联维护-添加或者编辑', null);
+INSERT INTO `sys_permission` VALUES ('241', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关联维护-详情', '/relationContact/relationContactDetail', 'ALL', '医学术语库维护-医学术语关联维护-详情', null);
+INSERT INTO `sys_permission` VALUES ('242', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语关联维护-删除或者恢复', '/relationContact/removeRelationContact', 'ALL', '医学术语库维护-医学术语关联维护-删除或者恢复', null);
+INSERT INTO `sys_permission` VALUES ('243', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语多层关联维护-列表', '/multContact/multContactList', 'ALL', '医学术语库维护-医学术语多层关联维护-列表', null);
+INSERT INTO `sys_permission` VALUES ('244', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语多层关联维护-添加或者编辑', '/multContact/addRelation', 'ALL', '医学术语库维护-医学术语多层关联维护-添加或者编辑', null);
+INSERT INTO `sys_permission` VALUES ('245', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语多层关联维护-详情', '/multContact/relationContactDetail', 'ALL', '医学术语库维护-医学术语多层关联维护-详情', null);
+INSERT INTO `sys_permission` VALUES ('246', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语多层关联维护-删除或者恢复', '/multContact/removeRelationContact', 'ALL', '医学术语库维护-医学术语多层关联维护-删除或者恢复', null);
+INSERT INTO `sys_permission` VALUES ('247', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护-医学术语静态知识维护-内容检索', '/conceptDetail/index', 'ALL', '医学术语库维护-医学术语静态知识维护-内容检索', null);
+INSERT INTO `sys_permission` VALUES ('248', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-标签组维护-新增|修改', '/questionInfo_prec/saveOrUpdate', 'ALL', '预问诊数据维护-标签组维护-新增|修改', null);
+INSERT INTO `sys_permission` VALUES ('249', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-标签组维护-删除', '/questionInfo_prec/delete', 'ALL', '预问诊数据维护-标签组维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('250', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-标签组维护-分页列表', '/questionInfo_prec/page', 'ALL', '预问诊数据维护-标签组维护-分页列表', null);
+INSERT INTO `sys_permission` VALUES ('251', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-标签组维护-检索', '/questionInfo_prec/index', 'ALL', '预问诊数据维护-标签组维护-检索', null);
+INSERT INTO `sys_permission` VALUES ('252', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-标签组维护-根据id返回内容', '/questionInfo_prec/getById', 'ALL', '预问诊数据维护-标签组维护-根据id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('253', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-标签组维护-根据多个id返回内容', '/questionInfo_prec/getByIds', 'ALL', '预问诊数据维护-标签组维护-根据多个id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('254', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-独立填写单维护-新增|修改', '/questionInfo_prec/saveOrUpdate', 'ALL', '预问诊数据维护-独立填写单维护-新增|修改', null);
+INSERT INTO `sys_permission` VALUES ('255', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-独立填写单维护-删除', '/questionInfo_prec/delete', 'ALL', '预问诊数据维护-独立填写单维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('256', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-独立填写单维护-分页列表', '/questionInfo_prec/page', 'ALL', '预问诊数据维护-独立填写单维护-分页列表', null);
+INSERT INTO `sys_permission` VALUES ('257', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-独立填写单维护-检索', '/questionInfo_prec/index', 'ALL', '预问诊数据维护-独立填写单维护-检索', null);
+INSERT INTO `sys_permission` VALUES ('258', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-独立填写单维护-根据id返回内容', '/questionInfo_prec/getById', 'ALL', '预问诊数据维护-独立填写单维护-根据id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('259', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-独立填写单维护-根据多个id返回内容', '/questionInfo_prec/getByIds', 'ALL', '预问诊数据维护-独立填写单维护-根据多个id返回内容', null);
+INSERT INTO `sys_permission` VALUES ('260', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-模板维护-模板新增', '/moduleInfo_prec/saveOrUpdateModuleInfo', 'ALL', '预问诊数据维护-模板维护-模板新增', null);
+INSERT INTO `sys_permission` VALUES ('262', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-模板维护-模板删除', '/moduleInfo_prec/delete', 'ALL', '预问诊数据维护-模板维护-模板删除', null);
+INSERT INTO `sys_permission` VALUES ('263', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-模板维护-获取模板列表', '/moduleInfo_prec/getModuleInfoList', 'ALL', '预问诊数据维护-模板维护-获取模板列表', null);
+INSERT INTO `sys_permission` VALUES ('264', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-模板维护-修改时获取已经添加过的标签', '/moduleInfo_prec/getModuleDetailInfo', 'ALL', '预问诊数据维护-模板维护-修改时获取已经添加过的标签', null);
+INSERT INTO `sys_permission` VALUES ('265', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-模板维护-获取单个模板(修改用)', '/moduleInfo_prec/getModuleInfoOne', 'ALL', '预问诊数据维护-模板维护-获取单个模板(修改用)', null);
+INSERT INTO `sys_permission` VALUES ('266', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-模板维护-获取模板类型(修改时取类型)', '/moduleInfo_prec/getModuleType', 'ALL', '预问诊数据维护-模板维护-获取模板类型(修改时取类型)', null);
+INSERT INTO `sys_permission` VALUES ('267', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-模板维护-获取所有科室信息(主页下拉用)', '/moduleInfo_prec/getAllDeptAndDisInfo', 'ALL', '预问诊数据维护-模板维护-获取所有科室信息(主页下拉用)', null);
+INSERT INTO `sys_permission` VALUES ('268', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护-模板维护-获取标签和模板关联信息', '/moduleInfo_prec/getQuestiongAndModuleRelations', 'ALL', '预问诊数据维护-模板维护-获取标签和模板关联信息', null);
+INSERT INTO `sys_permission` VALUES ('269', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-导出诊断依据问题词', '/diagnose/exportDiagnosticBasis', 'ALL', '诊断依据维护-导出诊断依据问题词', null);
+INSERT INTO `sys_permission` VALUES ('270', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-导出诊断依据', '/diagnose/exportDiagnosticAll', 'ALL', '诊断依据维护-导出诊断依据', null);
+INSERT INTO `sys_permission` VALUES ('271', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-诊断依据问题词数据维护-分页查询', '/diagnoseQuestion/queryQuestionPage', 'ALL', '诊断依据维护-诊断依据问题词数据维护-分页查询', null);
+INSERT INTO `sys_permission` VALUES ('272', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-诊断依据数据维护-分页', '/diagnose/page', 'ALL', '诊断依据维护-诊断依据数据维护-分页', null);
+INSERT INTO `sys_permission` VALUES ('273', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-诊断依据数据维护-删除', '/diagnose/delete', 'ALL', '诊断依据维护-诊断依据数据维护-删除', null);
+INSERT INTO `sys_permission` VALUES ('274', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-诊断依据数据维护-诊断检索', '/diagnose/index', 'ALL', '诊断依据维护-诊断依据数据维护-诊断检索', null);
+INSERT INTO `sys_permission` VALUES ('275', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-诊断依据数据维护-校验数据', '/diagnose/verifyData', 'ALL', '诊断依据维护-诊断依据数据维护-校验数据', null);
+INSERT INTO `sys_permission` VALUES ('276', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-诊断依据数据维护-校验所有数据', '/diagnose/verifyAllData', 'ALL', '诊断依据维护-诊断依据数据维护-校验所有数据', null);
+INSERT INTO `sys_permission` VALUES ('277', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-诊断依据数据维护-更新图谱', '/diagnose/updateNeo', 'ALL', '诊断依据维护-诊断依据数据维护-更新图谱', null);
+INSERT INTO `sys_permission` VALUES ('278', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护-诊断依据数据维护-获取详情', '/diagnose/getDetail', 'ALL', '诊断依据维护-诊断依据数据维护-获取详情', null);
+
+-- ----------------------------
+-- Table structure for sys_role
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role`;
+CREATE TABLE `sys_role` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '角色ID',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `name` varchar(255) NOT NULL DEFAULT '' COMMENT '角色名称',
+  `roleLevel` int(11) NOT NULL DEFAULT '0' COMMENT '角色等级',
+  `descritpion` varchar(255) NOT NULL DEFAULT '' COMMENT '角色描述',
+  `menuItems` varchar(255) NOT NULL DEFAULT '' COMMENT '菜单ID:对应角色ID',
+  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COMMENT='系统角色表';
+
+-- ----------------------------
+-- Records of sys_role
+-- ----------------------------
+INSERT INTO `sys_role` VALUES ('1', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '普通用户', '0', '', '', '');
+INSERT INTO `sys_role` VALUES ('2', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '管理员', '0', '', '', '');
+INSERT INTO `sys_role` VALUES ('3', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学数据维护人员', '0', '', '', '');
+INSERT INTO `sys_role` VALUES ('4', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '医学术语库维护人员', '0', '', '', '');
+INSERT INTO `sys_role` VALUES ('5', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '预问诊数据维护', '0', '', '', null);
+INSERT INTO `sys_role` VALUES ('6', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '诊断依据维护', '0', '', '', null);
+INSERT INTO `sys_role` VALUES ('7', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '各版本信息维护人员', '0', '', '', null);
+INSERT INTO `sys_role` VALUES ('8', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '注册用户查询', '0', '', '', null);
+
+-- ----------------------------
+-- Table structure for sys_role_menu
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role_menu`;
+CREATE TABLE `sys_role_menu` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `role_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '角色id',
+  `menu_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '菜单id',
+  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=64 DEFAULT CHARSET=utf8 COMMENT='角色和菜单的映射表';
+
+-- ----------------------------
+-- Records of sys_role_menu
+-- ----------------------------
+INSERT INTO `sys_role_menu` VALUES ('1', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '1', '用户-控制台');
+INSERT INTO `sys_role_menu` VALUES ('2', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '2', '用户-更多服务');
+INSERT INTO `sys_role_menu` VALUES ('3', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '3', '用户-机构中心');
+INSERT INTO `sys_role_menu` VALUES ('4', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '4', '用户-机构中心-账号信息');
+INSERT INTO `sys_role_menu` VALUES ('5', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '5', '用户-机构中心-已开通产品');
+INSERT INTO `sys_role_menu` VALUES ('6', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '6', '用户-机构中心-安全设置');
+INSERT INTO `sys_role_menu` VALUES ('7', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '9', '用户-机构中心-管理服务端');
+INSERT INTO `sys_role_menu` VALUES ('8', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '14', '用户-机构中心-已生成令牌');
+INSERT INTO `sys_role_menu` VALUES ('9', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '10', '朗通-客户中心');
+INSERT INTO `sys_role_menu` VALUES ('10', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '11', '朗通-客户中心-机构信息');
+INSERT INTO `sys_role_menu` VALUES ('11', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '12', '朗通-控制台');
+INSERT INTO `sys_role_menu` VALUES ('12', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '15', '朗通-客户中心-注册用户');
+INSERT INTO `sys_role_menu` VALUES ('13', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '16', '朗通-客户中心-审核超管信息');
+INSERT INTO `sys_role_menu` VALUES ('14', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '17', '朗通-订单系统');
+INSERT INTO `sys_role_menu` VALUES ('15', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '18', '朗通-订单系统-产品线申请列表');
+INSERT INTO `sys_role_menu` VALUES ('16', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '19', '朗通-产品线管理');
+INSERT INTO `sys_role_menu` VALUES ('17', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '20', '朗通-个人中心');
+INSERT INTO `sys_role_menu` VALUES ('21', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '21', '朗通-客户中心-已认证超管信息');
+INSERT INTO `sys_role_menu` VALUES ('22', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '22', '朗通-订单系统-产品续费列表');
+INSERT INTO `sys_role_menu` VALUES ('23', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '23', '朗通-ICSS数据维护');
+INSERT INTO `sys_role_menu` VALUES ('24', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '24', '朗通-ICSS数据维护-标签组维护');
+INSERT INTO `sys_role_menu` VALUES ('25', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '25', '朗通-ICSS数据维护-独立类型标签维护');
+INSERT INTO `sys_role_menu` VALUES ('27', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '27', '朗通-ICSS数据维护-别名维护');
+INSERT INTO `sys_role_menu` VALUES ('28', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '28', '朗通-ICSS数据维护-模版维护');
+INSERT INTO `sys_role_menu` VALUES ('29', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '29', '朗通-ICSS数据维护-查体模版维护');
+INSERT INTO `sys_role_menu` VALUES ('30', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '30', '朗通-ICSS数据维护-icss科室维护');
+INSERT INTO `sys_role_menu` VALUES ('31', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '31', '朗通-ICSS数据维护-常见选项维护');
+INSERT INTO `sys_role_menu` VALUES ('32', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '32', '朗通-ICSS数据维护-提示信息维护');
+INSERT INTO `sys_role_menu` VALUES ('33', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '33', '朗通-ICSS数据维护-免责声明维护');
+INSERT INTO `sys_role_menu` VALUES ('34', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '34', '朗通-各版本信息维护-版本信息维护');
+INSERT INTO `sys_role_menu` VALUES ('35', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '35', '朗通-ICSS数据维护-查体模板维护');
+INSERT INTO `sys_role_menu` VALUES ('38', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '38', '朗通-医学术语库维护');
+INSERT INTO `sys_role_menu` VALUES ('39', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '39', '朗通-医学术语库维护-医学术语命名维护');
+INSERT INTO `sys_role_menu` VALUES ('40', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '40', '朗通-医学术语库维护-术语医学属性维护');
+INSERT INTO `sys_role_menu` VALUES ('41', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '41', '朗通-医学术语库维护-医学术语关系维护');
+INSERT INTO `sys_role_menu` VALUES ('42', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '42', '朗通-医学术语库维护-医学术语静态知识维护');
+INSERT INTO `sys_role_menu` VALUES ('43', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '43', '朗通-ICSS数据维护-化验大小项与公表项对应维护');
+INSERT INTO `sys_role_menu` VALUES ('45', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '44', '朗通-ICSS数据维护-慢病管理与评估维护');
+INSERT INTO `sys_role_menu` VALUES ('46', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '45', '朗通-ICSS数据维护-慢病指标值关联维护');
+INSERT INTO `sys_role_menu` VALUES ('49', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '48', '朗通-医学术语库维护-量表结构维护');
+INSERT INTO `sys_role_menu` VALUES ('50', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '49', '朗通-医学术语库维护-医学术语类型维护');
+INSERT INTO `sys_role_menu` VALUES ('51', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '51', '朗通-医学术语库维护-医学术语关联维护');
+INSERT INTO `sys_role_menu` VALUES ('52', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '52', '朗通-医学术语库维护-医学术语多层关联维护');
+INSERT INTO `sys_role_menu` VALUES ('53', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '50', '朗通-医学术语库维护-化验子项维护');
+INSERT INTO `sys_role_menu` VALUES ('54', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '53', '朗通-预问诊数据维护');
+INSERT INTO `sys_role_menu` VALUES ('55', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '54', '朗通-预问诊数据维护-独立填写单维护');
+INSERT INTO `sys_role_menu` VALUES ('56', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '55', '朗通-预问诊数据维护-组合填写单维护');
+INSERT INTO `sys_role_menu` VALUES ('57', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '56', '朗通-预问诊数据维护-模版维护');
+INSERT INTO `sys_role_menu` VALUES ('58', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '57', '朗通-诊断依据维护');
+INSERT INTO `sys_role_menu` VALUES ('59', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '58', '朗通-诊断依据维护-诊断依据数据维护');
+INSERT INTO `sys_role_menu` VALUES ('60', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '59', '朗通-诊断依据维护-问题词数据维护');
+INSERT INTO `sys_role_menu` VALUES ('61', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '60', '朗通-各版本信息维护-版本信息维护');
+INSERT INTO `sys_role_menu` VALUES ('62', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '8', '10', '朗通-客户中心');
+INSERT INTO `sys_role_menu` VALUES ('63', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '8', '15', '朗通-客户中心-注册用户');
+
+-- ----------------------------
+-- Table structure for sys_role_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role_permission`;
+CREATE TABLE `sys_role_permission` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
+  `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
+  `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
+  `creator` varchar(20) NOT NULL DEFAULT '0' COMMENT '创建人,0表示无创建人值',
+  `modifier` varchar(20) NOT NULL DEFAULT '0' COMMENT '修改人,如果为0则表示纪录未修改',
+  `role_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '角色id',
+  `permission_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '资源id',
+  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=299 DEFAULT CHARSET=utf8 COMMENT='角色和资源的映射表';
+
+-- ----------------------------
+-- Records of sys_role_permission
+-- ----------------------------
+INSERT INTO `sys_role_permission` VALUES ('26', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '15', '用户-机构中心-已开通产品-关联产品与用户服务端');
+INSERT INTO `sys_role_permission` VALUES ('27', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '16', '用户-机构中心-已开通产品-删除产品与用户服务端的关联');
+INSERT INTO `sys_role_permission` VALUES ('28', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '17', '用户-机构中心-已开通产品-获取当前登录用户产品服务分页列表');
+INSERT INTO `sys_role_permission` VALUES ('29', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '24', '用户-机构中心-管理服务端-新增服务端');
+INSERT INTO `sys_role_permission` VALUES ('30', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '25', '用户-机构中心-管理服务端-修改服务端');
+INSERT INTO `sys_role_permission` VALUES ('31', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '26', '用户-机构中心-管理服务端-获取当前登录用户的服务列表');
+INSERT INTO `sys_role_permission` VALUES ('32', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '27', '用户-机构中心-管理服务端-获取当前登录用户的服务分页列表');
+INSERT INTO `sys_role_permission` VALUES ('33', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '9', '用户-机构中心-账户信息-获取当前用户信息');
+INSERT INTO `sys_role_permission` VALUES ('34', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '10', '用户-机构中心-账户信息-用户认证');
+INSERT INTO `sys_role_permission` VALUES ('35', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '11', '用户-机构中心-账户信息-获取当前用户认证状态');
+INSERT INTO `sys_role_permission` VALUES ('36', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '33', '用户-机构中心-已经生成令牌-生成令牌');
+INSERT INTO `sys_role_permission` VALUES ('37', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '34', '用户-机构中心-已经生成令牌-禁用令牌');
+INSERT INTO `sys_role_permission` VALUES ('38', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '35', '用户-机构中心-已经生成令牌-启用令牌');
+INSERT INTO `sys_role_permission` VALUES ('39', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '36', '用户-机构中心-已经生成令牌-删除令牌');
+INSERT INTO `sys_role_permission` VALUES ('40', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '39', '用户-控制台-账号认证进度');
+INSERT INTO `sys_role_permission` VALUES ('41', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '40', '用户-控制台-产品认证进度');
+INSERT INTO `sys_role_permission` VALUES ('42', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '41', '用户-控制台-已开通产品');
+INSERT INTO `sys_role_permission` VALUES ('43', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '42', '用户-控制台-可试用产品');
+INSERT INTO `sys_role_permission` VALUES ('44', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '43', '用户-控制台-产品立即试用接口');
+INSERT INTO `sys_role_permission` VALUES ('45', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '44', '用户-控制台-可展示的选项卡');
+INSERT INTO `sys_role_permission` VALUES ('46', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '45', '用户-控制台-账户信息');
+INSERT INTO `sys_role_permission` VALUES ('47', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '51', '用户-更多服务-显示产品');
+INSERT INTO `sys_role_permission` VALUES ('48', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '52', '用户-更多服务-开通产品');
+INSERT INTO `sys_role_permission` VALUES ('49', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '8', '朗通-客户中心-获取用户信息列表');
+INSERT INTO `sys_role_permission` VALUES ('50', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '12', '朗通-客户中心-修改用户和机构信息');
+INSERT INTO `sys_role_permission` VALUES ('51', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '14', '朗通-客户中心-根据用户Id删除');
+INSERT INTO `sys_role_permission` VALUES ('52', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '18', '朗通-客户中心-模糊查询机构信息');
+INSERT INTO `sys_role_permission` VALUES ('53', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '19', '朗通-客户中心-添加机构信息');
+INSERT INTO `sys_role_permission` VALUES ('54', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '20', '朗通-客户中心-添加用户信息和绑定机构');
+INSERT INTO `sys_role_permission` VALUES ('55', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '22', '朗通-客户中心-审核用户信息接口');
+INSERT INTO `sys_role_permission` VALUES ('56', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '31', '朗通-客户中心-根据用户id和产品id,修改开通时间');
+INSERT INTO `sys_role_permission` VALUES ('57', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '28', '朗通-客户中心-根据用户id查询已开通的功能');
+INSERT INTO `sys_role_permission` VALUES ('58', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '29', '朗通-客户中心-根据用户id和产品id,启用和停用功能');
+INSERT INTO `sys_role_permission` VALUES ('59', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '30', '朗通-客户中心-根据用户id和产品id,删除开通信息');
+INSERT INTO `sys_role_permission` VALUES ('60', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '32', '朗通-客户中心-根据时间导出用户和机构信息');
+INSERT INTO `sys_role_permission` VALUES ('61', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '37', '朗通-控制台-待审核订单个数');
+INSERT INTO `sys_role_permission` VALUES ('62', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '38', '朗通-控制台-待认证账号数量');
+INSERT INTO `sys_role_permission` VALUES ('63', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '46', '朗通-客户中心-查询所有用户已开通的功能');
+INSERT INTO `sys_role_permission` VALUES ('64', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '47', '朗通-客户中心-查询用户信息和机构信息开通产品');
+INSERT INTO `sys_role_permission` VALUES ('65', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '48', '朗通-个人中心-修改密码');
+INSERT INTO `sys_role_permission` VALUES ('66', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '53', '朗通-产品线管理-添加产品');
+INSERT INTO `sys_role_permission` VALUES ('69', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '21', '用户-机构中心-已开通产品-查询当前登录用户已开通产品列表');
+INSERT INTO `sys_role_permission` VALUES ('70', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '54', '用户-机构中心-管理服务端-删除服务端');
+INSERT INTO `sys_role_permission` VALUES ('72', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '55', '朗通-产品线管理-查询');
+INSERT INTO `sys_role_permission` VALUES ('73', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '56', '朗通-产品线管理-修改');
+INSERT INTO `sys_role_permission` VALUES ('74', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '57', '朗通-产品线管理-(启用/禁用)');
+INSERT INTO `sys_role_permission` VALUES ('75', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '58', '朗通-产品线管理-删除');
+INSERT INTO `sys_role_permission` VALUES ('76', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '59', '朗通-产品线管理-详情');
+INSERT INTO `sys_role_permission` VALUES ('77', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '60', '朗通-产品申请-显示所有订单明细');
+INSERT INTO `sys_role_permission` VALUES ('78', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '61', '朗通-产品申请-审核');
+INSERT INTO `sys_role_permission` VALUES ('79', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '62', '朗通-产品申请-显示所有订单');
+INSERT INTO `sys_role_permission` VALUES ('80', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '63', '朗通-默认-获取用户、机构、菜单信息');
+INSERT INTO `sys_role_permission` VALUES ('81', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '63', '用户-默认-获取用户、机构、菜单信息');
+INSERT INTO `sys_role_permission` VALUES ('82', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '64', '朗通-客户中心-分页查询注册用户信息接口');
+INSERT INTO `sys_role_permission` VALUES ('83', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '65', '朗通-客户中心-分页查询机构信息接口');
+INSERT INTO `sys_role_permission` VALUES ('84', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '66', '朗通-客户中心-分页查询已认证用户信息和机构信息及开通产品接口');
+INSERT INTO `sys_role_permission` VALUES ('85', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '67', '朗通-客户中心-分页查询认证中的用户信息接口');
+INSERT INTO `sys_role_permission` VALUES ('86', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '68', '导出产品申请相关信息');
+INSERT INTO `sys_role_permission` VALUES ('87', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '69', '朗通-个人中心-获取个人信息');
+INSERT INTO `sys_role_permission` VALUES ('88', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '70', '朗通-个人中心-修改个人信息');
+INSERT INTO `sys_role_permission` VALUES ('89', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '71', '客户中心-导出用户信息');
+INSERT INTO `sys_role_permission` VALUES ('90', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '72', '客户中心-导出机构信息');
+INSERT INTO `sys_role_permission` VALUES ('91', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '73', '客户中心-导出认证中用户的信息:');
+INSERT INTO `sys_role_permission` VALUES ('92', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '74', '客户中心-导出已认证用户的信息');
+INSERT INTO `sys_role_permission` VALUES ('93', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '75', '用户更多服务-产品续费');
+INSERT INTO `sys_role_permission` VALUES ('94', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '76', '客户中心-超管修改用户信息接口');
+INSERT INTO `sys_role_permission` VALUES ('95', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '77', '客户中心-超管修改机构信息接口');
+INSERT INTO `sys_role_permission` VALUES ('96', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '78', '续费管理-显示');
+INSERT INTO `sys_role_permission` VALUES ('97', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '79', '用户-机构中心-已经生成令牌-获取令牌');
+INSERT INTO `sys_role_permission` VALUES ('98', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '80', '续费管理-显示');
+INSERT INTO `sys_role_permission` VALUES ('99', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '81', '续费管理-续费');
+INSERT INTO `sys_role_permission` VALUES ('100', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '82', '续费管理-取消续费');
+INSERT INTO `sys_role_permission` VALUES ('101', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '83', '客户中心-认证用户信息和机构信息不通过接口(新)');
+INSERT INTO `sys_role_permission` VALUES ('102', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '84', '客户中心-认证用户信息和机构信息通过接口(新)');
+INSERT INTO `sys_role_permission` VALUES ('103', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '87', '客户中心-已开通产品状态校验');
+INSERT INTO `sys_role_permission` VALUES ('104', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '88', 'ICSS数据维护-独立标签维护-新增|修改');
+INSERT INTO `sys_role_permission` VALUES ('105', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '89', 'ICSS数据维护-独立标签维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('106', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '90', 'ICSS数据维护-独立标签维护-分页列表');
+INSERT INTO `sys_role_permission` VALUES ('107', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '91', 'ICSS数据维护-标签组维护-新增|修改');
+INSERT INTO `sys_role_permission` VALUES ('108', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '92', 'ICSS数据维护-标签组维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('109', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '93', 'ICSS数据维护-标签组维护-分页列表');
+INSERT INTO `sys_role_permission` VALUES ('110', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '94', 'ICSS数据维护-标签组维护-获取特殊标签(同伴|无)');
+INSERT INTO `sys_role_permission` VALUES ('111', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '95', 'ICSS数据维护-标签组维护-根据id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('112', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '96', 'ICSS数据维护-标签组维护-根据多个id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('113', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '98', 'ICSS数据维护-标签组维护-检索');
+INSERT INTO `sys_role_permission` VALUES ('114', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '99', 'ICSS数据维护-科室维护-修改');
+INSERT INTO `sys_role_permission` VALUES ('115', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '100', 'ICSS数据维护-科室维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('116', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '101', 'ICSS数据维护-科室维护-查询');
+INSERT INTO `sys_role_permission` VALUES ('117', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '102', 'ICSS数据维护-科室维护-详情');
+INSERT INTO `sys_role_permission` VALUES ('119', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '104', 'ICSS数据维护-科室维护-添加');
+INSERT INTO `sys_role_permission` VALUES ('120', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '105', 'ICSS数据维护-别名维护-新增|修改');
+INSERT INTO `sys_role_permission` VALUES ('121', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '106', 'ICSS数据维护-别名维护-详情');
+INSERT INTO `sys_role_permission` VALUES ('122', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '107', 'ICSS数据维护-别名维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('123', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '108', 'ICSS数据维护-别名维护-导入');
+INSERT INTO `sys_role_permission` VALUES ('124', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '109', 'ICSS数据维护-别名维护-列表');
+INSERT INTO `sys_role_permission` VALUES ('125', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '110', 'ICSS数据维护-模板维护-添加');
+INSERT INTO `sys_role_permission` VALUES ('126', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '111', 'ICSS数据维护-模板维护-修改');
+INSERT INTO `sys_role_permission` VALUES ('127', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '112', 'ICSS数据维护-模板维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('128', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '113', 'ICSS数据维护-模板维护-获取标签池信息');
+INSERT INTO `sys_role_permission` VALUES ('129', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '114', 'ICSS数据维护-模板维护-获取子模板信息');
+INSERT INTO `sys_role_permission` VALUES ('130', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '115', 'ICSS数据维护-模板维护-获取模板列表');
+INSERT INTO `sys_role_permission` VALUES ('131', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '116', 'ICSS数据维护-模板维护-获取模板明细信息');
+INSERT INTO `sys_role_permission` VALUES ('132', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '117', 'ICSS数据维护-模板维护-获取单个模板信息(修改用)');
+INSERT INTO `sys_role_permission` VALUES ('133', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '118', 'ICSS数据维护-常用选项维护-添加和修改');
+INSERT INTO `sys_role_permission` VALUES ('134', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '119', 'ICSS数据维护-常用选项维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('135', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '120', 'ICSS数据维护-常用选项维护-获取科室名称');
+INSERT INTO `sys_role_permission` VALUES ('136', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '121', 'ICSS数据维护-常用选项维护-获取标签信息');
+INSERT INTO `sys_role_permission` VALUES ('137', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '122', 'ICSS数据维护-常用选项维护-根据科室获取常用标签信息(修改和详情用)');
+INSERT INTO `sys_role_permission` VALUES ('138', 'Y', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '123', 'ICSS数据维护-常用选项维护-获取科室信息(常见症状维护系统页面查询)');
+INSERT INTO `sys_role_permission` VALUES ('139', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '124', 'ICSS数据维护-免责申明-获取免责申明详情');
+INSERT INTO `sys_role_permission` VALUES ('140', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '125', 'ICSS数据维护-免责申明-增加免责申明详情');
+INSERT INTO `sys_role_permission` VALUES ('141', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '126', 'ICSS数据维护-免责申明-修改免责申明详情');
+INSERT INTO `sys_role_permission` VALUES ('142', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '127', 'ICSS数据维护-免责申明-删除免责申明详情');
+INSERT INTO `sys_role_permission` VALUES ('143', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '128', 'ICSS数据维护-免责申明-启用免责申明详情');
+INSERT INTO `sys_role_permission` VALUES ('144', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '129', 'ICSS数据维护-免责申明-停用免责申明详情');
+INSERT INTO `sys_role_permission` VALUES ('145', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '130', '各版本信息维护-版本信息维护-获取版本信息');
+INSERT INTO `sys_role_permission` VALUES ('146', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '131', '各版本信息维护-版本信息维护-保存版本信息');
+INSERT INTO `sys_role_permission` VALUES ('147', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '132', '各版本信息维护-版本信息维护-更新版本信息');
+INSERT INTO `sys_role_permission` VALUES ('148', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '133', '各版本信息维护-版本信息维护-删除版本信息');
+INSERT INTO `sys_role_permission` VALUES ('149', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '134', '各版本信息维护-版本信息维护-更新版本详情信息');
+INSERT INTO `sys_role_permission` VALUES ('150', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '135', '各版本信息维护-版本信息维护-删除版本详情信息');
+INSERT INTO `sys_role_permission` VALUES ('151', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '136', '各版本信息维护-版本信息维护-增加版本详情信息');
+INSERT INTO `sys_role_permission` VALUES ('152', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '137', 'ICSS数据维护-查体模板维护-查体模板列表');
+INSERT INTO `sys_role_permission` VALUES ('153', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '138', 'ICSS数据维护-查体模板维护-保存');
+INSERT INTO `sys_role_permission` VALUES ('154', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '139', 'ICSS数据维护-查体模板维护-根据科室删除');
+INSERT INTO `sys_role_permission` VALUES ('155', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '140', 'ICSS数据维护-查体模板维护-获取未维护的科室(新增)');
+INSERT INTO `sys_role_permission` VALUES ('156', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '141', 'ICSS数据维护-查体模板维护-获取未维护的科室(修改)');
+INSERT INTO `sys_role_permission` VALUES ('157', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '142', 'ICSS数据维护-查体模板维护-根据科室获取查体模板');
+INSERT INTO `sys_role_permission` VALUES ('163', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '148', 'ICSS数据维护-提示信息维护-保存');
+INSERT INTO `sys_role_permission` VALUES ('164', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '149', 'ICSS数据维护-提示信息维护-删除(单条)');
+INSERT INTO `sys_role_permission` VALUES ('165', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '150', 'ICSS数据维护-提示信息维护-删除(批量)');
+INSERT INTO `sys_role_permission` VALUES ('166', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '151', 'ICSS数据维护-提示信息维护-提示信息列表');
+INSERT INTO `sys_role_permission` VALUES ('167', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '152', 'ICSS数据维护-提示信息维护-根据id获取提示信息');
+INSERT INTO `sys_role_permission` VALUES ('168', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '153', 'ICSS数据维护-提示信息维护-获取未关联标签列表');
+INSERT INTO `sys_role_permission` VALUES ('171', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '156', 'ICSS数据维护-提示信息明细维护-删除(单条)');
+INSERT INTO `sys_role_permission` VALUES ('172', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '157', 'ICSS数据维护-提示信息明细维护-删除(批量)');
+INSERT INTO `sys_role_permission` VALUES ('173', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '158', 'ICSS数据维护-提示信息明细维护-根据id查询');
+INSERT INTO `sys_role_permission` VALUES ('174', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '159', 'ICSS数据维护-提示信息明细维护-根据提示信息id查询');
+INSERT INTO `sys_role_permission` VALUES ('175', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '160', 'ICSS数据维护-提示信息明细维护-保存');
+INSERT INTO `sys_role_permission` VALUES ('176', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '63', '朗通-默认-获取用户、机构、菜单信息');
+INSERT INTO `sys_role_permission` VALUES ('177', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '161', '各版本信息维护-版本信息维护-根据版本id获取版本详情信息');
+INSERT INTO `sys_role_permission` VALUES ('178', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '162', '医学术语库维护-医学术语命名维护-获取所有医学术语命名');
+INSERT INTO `sys_role_permission` VALUES ('179', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '163', '医学术语库维护-医学术语命名维护-获取医学术语命名列表');
+INSERT INTO `sys_role_permission` VALUES ('180', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '164', '医学术语库维护-医学术语命名维护-医学术语命名删除');
+INSERT INTO `sys_role_permission` VALUES ('181', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '165', '医学术语库维护-医学术语命名维护-获取医学术语命名详情');
+INSERT INTO `sys_role_permission` VALUES ('182', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '166', '医学术语库维护-术语医学属性维护-获取术语医学属性列表');
+INSERT INTO `sys_role_permission` VALUES ('183', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '167', '医学术语库维护-术语医学属性维护-获取术语医学属性详情');
+INSERT INTO `sys_role_permission` VALUES ('184', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '168', '医学术语库维护-术语医学属性维护-术语医学属性添加或者编辑');
+INSERT INTO `sys_role_permission` VALUES ('185', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '169', '医学术语库维护-术语医学属性维护-术语医学属性删除');
+INSERT INTO `sys_role_permission` VALUES ('186', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '170', '医学术语库维护-医学术语关系维护-获取医学术语关系');
+INSERT INTO `sys_role_permission` VALUES ('187', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '171', '医学术语库维护-医学术语关系维护-保存医学术语关系');
+INSERT INTO `sys_role_permission` VALUES ('188', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '172', '医学术语库维护-医学术语关系维护-删除医学术语关系');
+INSERT INTO `sys_role_permission` VALUES ('189', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '173', '医学术语库维护-医学术语静态知识维护-获取医学术语静态知识列表');
+INSERT INTO `sys_role_permission` VALUES ('190', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '174', '医学术语库维护-医学术语静态知识维护-医学术语静态知识删除');
+INSERT INTO `sys_role_permission` VALUES ('191', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '175', '医学术语库维护-医学术语静态知识维护-获取医学术语静态知识详情');
+INSERT INTO `sys_role_permission` VALUES ('192', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '176', '医学术语库维护-医学术语静态知识维护-医学术语静态知识添加或者编辑');
+INSERT INTO `sys_role_permission` VALUES ('193', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '63', '朗通-默认-获取用户、机构、菜单信息');
+INSERT INTO `sys_role_permission` VALUES ('194', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '177', 'ICSS数据维护-别名维护-标签搜索');
+INSERT INTO `sys_role_permission` VALUES ('195', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '178', 'ICSS数据维护-化验大小项与公表项对应维护-分页列表');
+INSERT INTO `sys_role_permission` VALUES ('196', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '179', 'ICSS数据维护-化验大小项与公表项对应维护-保存');
+INSERT INTO `sys_role_permission` VALUES ('197', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '180', 'ICSS数据维护-化验大小项与公表项对应维护-是否已存在');
+INSERT INTO `sys_role_permission` VALUES ('198', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '181', 'ICSS数据维护-化验大小项与公表项对应维护-删除(单条)');
+INSERT INTO `sys_role_permission` VALUES ('199', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '182', 'ICSS数据维护-化验大小项与公表项对应维护-删除(批量)');
+INSERT INTO `sys_role_permission` VALUES ('200', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '183', 'ICSS数据维护-获取模板type');
+INSERT INTO `sys_role_permission` VALUES ('201', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '184', 'ICSS数据维护-慢病评估维护-分页模糊查询标签组维护接口 ');
+INSERT INTO `sys_role_permission` VALUES ('202', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '185', 'ICSS数据维护-慢病评估维护-获取慢病标签组维护');
+INSERT INTO `sys_role_permission` VALUES ('203', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '186', 'ICSS数据维护-慢病评估维护-慢病评估维护——修改管理评估');
+INSERT INTO `sys_role_permission` VALUES ('204', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '187', 'ICSS数据维护-慢病评估维护-慢病评估维护——添加管理评估');
+INSERT INTO `sys_role_permission` VALUES ('205', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '188', 'ICSS数据维护-慢病评估维护-删除慢病标签组维护');
+INSERT INTO `sys_role_permission` VALUES ('207', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '189', 'ICSS数据维护-慢病指标值关联维护-分页模糊查询慢病指标值关联维护');
+INSERT INTO `sys_role_permission` VALUES ('208', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '190', 'ICSS数据维护-慢病指标值关联维护-获取慢病指标值关联维护');
+INSERT INTO `sys_role_permission` VALUES ('209', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '191', 'ICSS数据维护-慢病指标值关联维护-慢病指标值关联维护——修改关联');
+INSERT INTO `sys_role_permission` VALUES ('210', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '192', 'ICSS数据维护-慢病指标值关联维护-慢病指标值关联维护——添加关联');
+INSERT INTO `sys_role_permission` VALUES ('211', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '193', 'ICSS数据维护-慢病指标值关联维护-删除慢病指标值关联维护');
+INSERT INTO `sys_role_permission` VALUES ('215', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '198', 'ICSS数据维护-独立标签维护-获取特殊标签(同伴|无)');
+INSERT INTO `sys_role_permission` VALUES ('216', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '199', 'ICSS数据维护-独立标签维护-根据id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('217', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '200', 'ICSS数据维护-独立标签维护-根据多个id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('218', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '201', 'ICSS数据维护-独立标签维护-检索');
+INSERT INTO `sys_role_permission` VALUES ('225', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '209', '医学术语库维护-术语医学属性维护-术语医学属性excel文件导入');
+INSERT INTO `sys_role_permission` VALUES ('226', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '210', '医学术语库维护-医学术语关系维护-医学术语关系添加或者编辑');
+INSERT INTO `sys_role_permission` VALUES ('227', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '211', '医学术语库维护-医学术语关系维护-医学术语关系excel文件导入');
+INSERT INTO `sys_role_permission` VALUES ('228', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '213', '医学术语库维护-医学术语命名维护-医学术语命名添加或者编辑');
+INSERT INTO `sys_role_permission` VALUES ('229', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '214', '医学术语库维护-医学术语命名维护-医学术语命名excel文件导入');
+INSERT INTO `sys_role_permission` VALUES ('230', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '215', '医学术语库维护-医学术语类型维护-获取所有术语类型');
+INSERT INTO `sys_role_permission` VALUES ('231', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '216', '医学术语库维护-医学术语类型维护-获取术语类型列表');
+INSERT INTO `sys_role_permission` VALUES ('232', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '217', '医学术语库维护-医学术语类型维护-术语类型添加');
+INSERT INTO `sys_role_permission` VALUES ('233', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '218', '医学术语库维护-医学术语关系维护-获取所有关系类型');
+INSERT INTO `sys_role_permission` VALUES ('234', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '219', '医学术语库维护-术语医学属性维护-获取所有部位');
+INSERT INTO `sys_role_permission` VALUES ('235', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '220', '医学术语库维护-术语医学属性维护-获取术语医学属性所需全部科室');
+INSERT INTO `sys_role_permission` VALUES ('236', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '221', '医学术语库维护-量表结构维护-新增|修改');
+INSERT INTO `sys_role_permission` VALUES ('237', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '222', '医学术语库维护-量表结构维护-分页列表');
+INSERT INTO `sys_role_permission` VALUES ('238', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '223', '医学术语库维护-医学术语命名维护-获取所有化验公表项');
+INSERT INTO `sys_role_permission` VALUES ('239', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '224', '医学术语库维护-量表结构维护-删除|恢复');
+INSERT INTO `sys_role_permission` VALUES ('240', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '225', '医学术语库维护-量表结构维护-根据id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('241', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '227', '医学术语库维护-量表结构维护-检索');
+INSERT INTO `sys_role_permission` VALUES ('243', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '228', 'ICSS数据维护-模板维护-获取所有科室疾病信息');
+INSERT INTO `sys_role_permission` VALUES ('244', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '229', 'ICSS数据维护-慢病指标值关联维护-慢病指标疾病标签查询');
+INSERT INTO `sys_role_permission` VALUES ('245', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '230', 'ICSS数据维护-慢病评估维护-慢病疾病标签查询');
+INSERT INTO `sys_role_permission` VALUES ('246', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '231', 'ICSS数据维护-标签组维护-子标签检索');
+INSERT INTO `sys_role_permission` VALUES ('247', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '232', 'ICSS数据维护-模板维护-获取标签和模板关联信息(删除标签时校验用)');
+INSERT INTO `sys_role_permission` VALUES ('248', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '3', '233', 'ICSS数据维护-查体模板维护-查询科室下拉列表(查询页面)');
+INSERT INTO `sys_role_permission` VALUES ('249', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '234', '医学术语库维护-医学术语命名维护-获取所有概念(术语关系维护时筛选使用)');
+INSERT INTO `sys_role_permission` VALUES ('250', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '235', '医学术语库维护-化验子项维护-列表');
+INSERT INTO `sys_role_permission` VALUES ('251', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '236', '医学术语库维护-化验子项维护-添加或者编辑');
+INSERT INTO `sys_role_permission` VALUES ('252', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '237', '医学术语库维护-化验子项维护-详情');
+INSERT INTO `sys_role_permission` VALUES ('253', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '238', '医学术语库维护-化验子项维护-删除或者恢复');
+INSERT INTO `sys_role_permission` VALUES ('254', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '239', '医学术语库维护-医学术语关联维护-列表');
+INSERT INTO `sys_role_permission` VALUES ('255', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '240', '医学术语库维护-医学术语关联维护-添加或者编辑');
+INSERT INTO `sys_role_permission` VALUES ('256', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '241', '医学术语库维护-医学术语关联维护-详情');
+INSERT INTO `sys_role_permission` VALUES ('257', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '242', '医学术语库维护-医学术语关联维护-删除或者恢复');
+INSERT INTO `sys_role_permission` VALUES ('258', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '243', '医学术语库维护-医学术语多层关联维护-列表');
+INSERT INTO `sys_role_permission` VALUES ('259', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '244', '医学术语库维护-医学术语多层关联维护-添加或者编辑');
+INSERT INTO `sys_role_permission` VALUES ('260', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '245', '医学术语库维护-医学术语多层关联维护-详情');
+INSERT INTO `sys_role_permission` VALUES ('261', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '246', '医学术语库维护-医学术语多层关联维护-删除或者恢复');
+INSERT INTO `sys_role_permission` VALUES ('262', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '4', '247', '医学术语库维护-医学术语静态知识维护-内容检索');
+INSERT INTO `sys_role_permission` VALUES ('263', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '248', '预问诊数据维护-标签组维护-新增|修改');
+INSERT INTO `sys_role_permission` VALUES ('264', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '249', '预问诊数据维护-标签组维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('265', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '250', '预问诊数据维护-标签组维护-分页列表');
+INSERT INTO `sys_role_permission` VALUES ('266', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '251', '预问诊数据维护-标签组维护-检索');
+INSERT INTO `sys_role_permission` VALUES ('267', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '252', '预问诊数据维护-标签组维护-根据id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('268', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '253', '预问诊数据维护-标签组维护-根据多个id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('269', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '254', '预问诊数据维护-独立填写单维护-新增|修改');
+INSERT INTO `sys_role_permission` VALUES ('270', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '255', '预问诊数据维护-独立填写单维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('271', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '256', '预问诊数据维护-独立填写单维护-分页列表');
+INSERT INTO `sys_role_permission` VALUES ('272', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '257', '预问诊数据维护-独立填写单维护-检索');
+INSERT INTO `sys_role_permission` VALUES ('273', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '258', '预问诊数据维护-独立填写单维护-根据id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('274', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '259', '预问诊数据维护-独立填写单维护-根据多个id返回内容');
+INSERT INTO `sys_role_permission` VALUES ('275', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '260', '预问诊数据维护-模板维护-模板新增');
+INSERT INTO `sys_role_permission` VALUES ('277', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '262', '预问诊数据维护-模板维护-模板删除');
+INSERT INTO `sys_role_permission` VALUES ('278', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '263', '预问诊数据维护-模板维护-获取模板列表');
+INSERT INTO `sys_role_permission` VALUES ('279', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '264', '预问诊数据维护-模板维护-修改时获取已经添加过的标签');
+INSERT INTO `sys_role_permission` VALUES ('280', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '265', '预问诊数据维护-模板维护-获取单个模板(修改用)');
+INSERT INTO `sys_role_permission` VALUES ('281', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '266', '预问诊数据维护-模板维护-获取模板类型(修改时取类型)');
+INSERT INTO `sys_role_permission` VALUES ('282', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '267', '预问诊数据维护-模板维护-获取所有科室信息(主页下拉用)');
+INSERT INTO `sys_role_permission` VALUES ('283', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '268', '预问诊数据维护-模板维护-获取标签和模板关联信息');
+INSERT INTO `sys_role_permission` VALUES ('284', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '272', '诊断依据维护-诊断依据数据维护-分页');
+INSERT INTO `sys_role_permission` VALUES ('285', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '273', '诊断依据维护-诊断依据数据维护-删除');
+INSERT INTO `sys_role_permission` VALUES ('286', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '274', '诊断依据维护-诊断依据数据维护-诊断检索');
+INSERT INTO `sys_role_permission` VALUES ('287', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '275', '诊断依据维护-诊断依据数据维护-校验数据');
+INSERT INTO `sys_role_permission` VALUES ('288', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '276', '诊断依据维护-诊断依据数据维护-校验所有数据');
+INSERT INTO `sys_role_permission` VALUES ('289', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '277', '诊断依据维护-诊断依据数据维护-更新图谱');
+INSERT INTO `sys_role_permission` VALUES ('290', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '278', '诊断依据维护-诊断依据数据维护-获取详情');
+INSERT INTO `sys_role_permission` VALUES ('291', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '269', '诊断依据维护-导出诊断依据问题词');
+INSERT INTO `sys_role_permission` VALUES ('292', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '270', '诊断依据维护-导出诊断依据');
+INSERT INTO `sys_role_permission` VALUES ('293', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '271', '诊断依据维护-诊断依据问题词数据维护-分页查询');
+INSERT INTO `sys_role_permission` VALUES ('294', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '8', '64', '朗通-客户中心-分页查询注册用户信息接口');
+INSERT INTO `sys_role_permission` VALUES ('295', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '5', '63', '朗通-默认-获取用户、机构、菜单信息');
+INSERT INTO `sys_role_permission` VALUES ('296', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '6', '63', '朗通-默认-获取用户、机构、菜单信息');
+INSERT INTO `sys_role_permission` VALUES ('297', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '7', '63', '朗通-默认-获取用户、机构、菜单信息');
+INSERT INTO `sys_role_permission` VALUES ('298', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '8', '63', '朗通-默认-获取用户、机构、菜单信息');

+ 8 - 0
icss-service/src/main/java/com/diagbot/client/AiptServiceClient.java

@@ -24,6 +24,7 @@ import com.diagbot.dto.PushDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.RetrievalDTO;
 import com.diagbot.dto.ScaleIndexDTO;
+import com.diagbot.dto.VersionWrapperDTO;
 import com.diagbot.entity.ScaleContent;
 import com.diagbot.vo.ConceptFindVO;
 import com.diagbot.vo.ConceptIntroduceVO;
@@ -41,6 +42,7 @@ import com.diagbot.vo.IndexDataFindVO;
 import com.diagbot.vo.IndexDataSaveVO;
 import com.diagbot.vo.RetrievalVO;
 import com.diagbot.vo.ScaleIndexVO;
+import com.diagbot.vo.VersionVO;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -234,6 +236,12 @@ public interface AiptServiceClient {
     @PostMapping("/concept/getStaticKnowledge")
     RespDTO<List<RetrievalDTO>> getStaticKnowledge(GetStaticKnowledgeVO getStaticKnowledgeVO);
 
+    /**
+     * 获取版本信息
+     */
+    @PostMapping("/versionInfo/getVersionInfoAlls")
+    RespDTO<VersionWrapperDTO> getVersionInfoAlls(@RequestBody VersionVO versionVO);
+
     @PostMapping("/lisMapping/getLisMappingByQuestion")
     RespDTO<Map<String, Map<String, String>>> getLisMappingByQuestion(GetLisMappingVO getLisMappingVO);
 }

+ 12 - 0
icss-service/src/main/java/com/diagbot/client/hystrix/AiptServiceHystrix.java

@@ -24,6 +24,7 @@ import com.diagbot.dto.PushDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.RetrievalDTO;
 import com.diagbot.dto.ScaleIndexDTO;
+import com.diagbot.dto.VersionWrapperDTO;
 import com.diagbot.entity.ScaleContent;
 import com.diagbot.vo.ConceptFindVO;
 import com.diagbot.vo.ConceptIntroduceVO;
@@ -41,6 +42,7 @@ import com.diagbot.vo.IndexDataFindVO;
 import com.diagbot.vo.IndexDataSaveVO;
 import com.diagbot.vo.RetrievalVO;
 import com.diagbot.vo.ScaleIndexVO;
+import com.diagbot.vo.VersionVO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -299,6 +301,16 @@ public class AiptServiceHystrix implements AiptServiceClient {
         return null;
     }
 
+
+    /**
+     * 获取版本信息
+     */
+    @Override
+    public RespDTO<VersionWrapperDTO> getVersionInfoAlls(VersionVO versionVO){
+        log.error("【hystrix】调用{}异常", "getVersionInfoAlls");
+        return null;
+    }
+
     @Override
     public RespDTO<Map<String, Map<String, String>>> getLisMappingByQuestion(GetLisMappingVO getLisMappingVO) {
         log.error("【hystrix】调用{}异常", "getLisMappingByQuestion");

+ 3 - 0
icss-service/src/main/java/com/diagbot/dto/ConceptPushDTO.java

@@ -3,6 +3,8 @@ package com.diagbot.dto;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.util.List;
+
 /**
  * @Description:推理返回标签(概念)
  * @Author:zhaops
@@ -14,4 +16,5 @@ public class ConceptPushDTO extends ConceptBaseDTO {
     private Integer libType;  //词性
     private Long id;          //标签id
     private Integer type;
+    private List<String> clientNames;
 }

+ 4 - 1
icss-service/src/main/java/com/diagbot/dto/QuestionPushDTO.java

@@ -3,6 +3,8 @@ package com.diagbot.dto;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.util.List;
+
 /**
  * @Description:
  * @Author:zhaops
@@ -13,4 +15,5 @@ import lombok.Setter;
 public class QuestionPushDTO extends QuestionDTO {
     private Long conceptId;
     private Integer libType;
-}
+    private List<String> clientNames;
+}

+ 12 - 34
icss-service/src/main/java/com/diagbot/facade/VersionInfoFacade.java

@@ -1,56 +1,34 @@
 package com.diagbot.facade;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.diagbot.dto.VersionDetailDTO;
+import com.diagbot.client.AiptServiceClient;
+import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.VersionWrapperDTO;
-import com.diagbot.entity.VersionInfo;
-import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.enums.StatusEnum;
-import com.diagbot.service.impl.VersionInfoServiceImpl;
+import com.diagbot.enums.ProductTypeEnum;
+import com.diagbot.util.RespDTOUtil;
+import com.diagbot.vo.VersionVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import java.util.List;
-
 /**
  * @author wangfeng
  * @Description: 版本信息
  * @date 2018年11月21日 上午11:07:01
  */
 @Component
-public class VersionInfoFacade extends VersionInfoServiceImpl {
+public class VersionInfoFacade {
 
     @Autowired
-    VersionDetailFacaed versionDetailFacaed;
-
-
+    private AiptServiceClient aiptServiceClient;
     /**
      * 查询版本信息
      *
      * @return
      */
     public VersionWrapperDTO getVersionInfoAll() {
-        //查询最新的一条版本信息
-        QueryWrapper<VersionInfo> versionInfoQuery = new QueryWrapper<>();
-        versionInfoQuery.eq("is_deleted", IsDeleteEnum.N.getKey())
-                .eq("STATUS", StatusEnum.Enable.getKey())
-                .orderByDesc("gmt_modified");
-
-        VersionInfo versionInfo = getOne(versionInfoQuery);
-        VersionWrapperDTO versionList = new VersionWrapperDTO();
-
-        if (versionInfo != null) {
-            //当查出的数据不为空时,取到版本id,再去版本明细表中查询详细的信息
-            long id = versionInfo.getId();
-            List<VersionDetailDTO> detail = versionDetailFacaed.getById(id);
-            //System.out.println(detail.toString());
-            versionList.setId(versionInfo.getId());
-            versionList.setName(versionInfo.getName());
-            versionList.setRefreshTime(versionInfo.getRefreshTime());
-            versionList.setStatus(versionInfo.getStatus());
-            versionList.setDetail(detail);
-        }
-
-        return versionList;
+        VersionVO versionVO = new VersionVO();
+        versionVO.setProductType(ProductTypeEnum.ICSS.getKey());
+        RespDTO<VersionWrapperDTO> res = aiptServiceClient.getVersionInfoAlls(versionVO);
+        RespDTOUtil.respNGDealCover(res, "获取不到版本信息!");
+        return res.data;
     }
 }

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

@@ -41,4 +41,6 @@ public class TemplateInfoPageVO extends Page{
 	private String type;//模板类型
 	
 	private List<Integer> sex;//性别
+
+	private String name;//模板名字
 }

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

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description: 版本信息
+ * @author: gaodm
+ * @time: 2019/8/7 13:26
+ */
+@Getter
+@Setter
+public class VersionVO {
+    /**
+     * 产品类型(1:云平台内部;2:云平台外部;3:icss;4:智能分诊;5:数据服务模式;6:智能预问诊)
+     */
+    private Integer productType;
+}

+ 20 - 19
icss-service/src/main/java/com/diagbot/web/TemplateInfoController.java

@@ -1,17 +1,5 @@
 package com.diagbot.web;
 
-
-import java.util.List;
-
-import javax.validation.Valid;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.RespDTO;
@@ -25,9 +13,17 @@ import com.diagbot.vo.TemplateInfoRevampVO;
 import com.diagbot.vo.TemplateInfoVO;
 import com.diagbot.vo.TemplateInfosIdVO;
 import com.diagbot.vo.TemplateInfosVO;
-
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
+import java.util.List;
 
 /**
  * @author wangfeng
@@ -90,24 +86,29 @@ public class TemplateInfoController {
 
         return RespDTO.onSuc(res);
     }
-    
+
     @ApiOperation(value = "分页查询病历模板列表[by:wangfeng]",
-            notes = "doctorId: 医生id<br>" + "dospitalId:医院编码<br>" + "deptId:部门id<br>" + "type:模式<br> sex:性别")
+            notes = "doctorId: 医生id<br>"
+                    + "dospitalId:医院编码<br>"
+                    + "deptId:部门id<br>"
+                    + "type:模式<br>"
+                    + "sex:性别<br>"
+                    + "name:模板名称")
     @PostMapping("/getTemplatePageAlls")
     @SysLogger("getTemplatePageAlls")
     public RespDTO<IPage<TemplateInfoPageDTO>> getTemplatePageAll(@Valid @RequestBody TemplateInfoPageVO templateInfoPageVO) {
 
-    	IPage<TemplateInfoPageDTO> data = templateInfoFacade.getTemplatePageAlls(templateInfoPageVO,templateInfoPageVO);
+        IPage<TemplateInfoPageDTO> data = templateInfoFacade.getTemplatePageAlls(templateInfoPageVO, templateInfoPageVO);
 
         return RespDTO.onSuc(data);
     }
-    
-    @ApiOperation(value = "根据模板id获取病历模板内容[by:wangfeng]",notes = "id: 请输入模板id")
+
+    @ApiOperation(value = "根据模板id获取病历模板内容[by:wangfeng]", notes = "id: 请输入模板id")
     @PostMapping("/getTemplateIdAlls")
     @SysLogger("getTemplateIdAlls")
     public RespDTO<TemplateInfoDTO> getTemplateIdAll(@Valid @RequestBody TemplateIdVO templateIdVO) {
 
-    	TemplateInfoDTO data = templateInfoFacade.getTemplateIdAlls(templateIdVO);
+        TemplateInfoDTO data = templateInfoFacade.getTemplateIdAlls(templateIdVO);
 
         return RespDTO.onSuc(data);
     }

+ 3 - 0
icss-service/src/main/resources/mapper/TemplateInfoMapper.xml

@@ -89,6 +89,9 @@
 		<if test="type != null and type != ''">
 			and type = #{type}
 		</if>
+		<if test="name != null and name != ''">
+			and name like concat('%',#{name},'%')
+		</if>
 		and sex in
 		<foreach collection="sex" item="sexNew" open="(" close=")"
 			separator=",">

+ 1 - 0
icssman-service/src/main/java/com/diagbot/dto/QuestionDTO.java

@@ -20,6 +20,7 @@ public class QuestionDTO {
     private Long id;// id
     private String name;//内容
     private String tagName;//标签名称
+    private Integer sexType; // 性别
     private Integer type;//类型(1:症状 3:其他史 4:查体,5:化验 6:辅检 7:诊断)
     private Integer controlType; //控件类型
     private Integer subType; //检索类型

+ 1 - 1
icssman-service/src/main/java/com/diagbot/facade/CacheFacade.java

@@ -16,4 +16,4 @@ public class CacheFacade {
             @CacheEvict(value = "tagCache", key = "'tag:'+#p0+'_2'") })
     public void clearCache(Long id) {
     }
-}
+}

+ 47 - 3
icssman-service/src/main/java/com/diagbot/facade/QuestionFacade.java

@@ -37,12 +37,14 @@ import com.diagbot.util.RespDTOUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.util.UserUtils;
 import com.diagbot.vo.ConceptExistVO;
+import com.diagbot.vo.ConceptSearchVO;
 import com.diagbot.vo.DeleteQuestionVO;
 import com.diagbot.vo.GetQuestionIdsByTypeVO;
 import com.diagbot.vo.GetQuestionInfoVO;
 import com.diagbot.vo.GetQuestiongAndModuleRelationsVO;
 import com.diagbot.vo.IndexIcssVO;
 import com.diagbot.vo.IndexLexiconVO;
+import com.diagbot.vo.KLQuestionVO;
 import com.diagbot.vo.QuestionIdsVO;
 import com.diagbot.vo.QuestionIndexSubVO;
 import com.diagbot.vo.QuestionIndexVO;
@@ -95,7 +97,8 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
     KnowledgemanServiceClient knowledgemanServiceClient;
     @Autowired
     CacheFacade cacheFacade;
-
+    @Autowired
+    private KnowledgemanServiceClient klmServiceClient;
 
 
     /**
@@ -457,7 +460,7 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
                 }
                 // 化验明细需要特殊处理,类型转换为明细
                 if (ListUtil.isNotEmpty(list)) {
-                    if (list.contains(bean.getType()) || (isLisDetail && list.contains(QuestionTypeEnum.LisDetail.getKey())) ) {
+                    if (list.contains(bean.getType()) || (isLisDetail && list.contains(QuestionTypeEnum.LisDetail.getKey()))) {
                         bean.setExist(true);
                     }
                 }
@@ -521,10 +524,33 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
             GetQuestiongAndModuleRelationsVO getQuestiongAndModuleRelationsVO = new GetQuestiongAndModuleRelationsVO();
             getQuestiongAndModuleRelationsVO.setQuestionId(Long.parseLong(id));
             GetQuestiongAndModuleRelationsDTO getQuestiongAndModuleRelationsDTO = moduleInfoFacade.getQuestiongAndModuleRelations(getQuestiongAndModuleRelationsVO);
-            if(null != getQuestiongAndModuleRelationsDTO && StringUtil.isNotBlank(getQuestiongAndModuleRelationsDTO.getRelationInfos().toString())){
+            if (null != getQuestiongAndModuleRelationsDTO && StringUtil.isNotBlank(getQuestiongAndModuleRelationsDTO.getRelationInfos().toString())) {
                 throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
                         getQuestiongAndModuleRelationsDTO.getRelationInfos().toString());
             }
+            //查体模板
+            QueryWrapper<DeptVital> deptVitalQueryWrapper = new QueryWrapper<>();
+            deptVitalQueryWrapper.in("vital_id", Arrays.asList(ids.split(","))).
+                    eq("is_deleted", IsDeleteEnum.N.getKey());
+            List<DeptVital> deptVitals = deptVitalFacade.list(deptVitalQueryWrapper);
+            if (ListUtil.isNotEmpty(deptVitals)) {
+                //科室信息
+                List<Long> deptIds = deptVitals.stream().map(deptVitalDTO -> deptVitalDTO.getDeptId()).collect(Collectors.toList());
+                ConceptSearchVO conceptSearchVO = new ConceptSearchVO();
+                conceptSearchVO.setConceptIds(deptIds);
+                RespDTO<Map<Long, String>> deptMap = klmServiceClient.getConceptMap(conceptSearchVO);
+                Map<Long, String> depts = deptMap.data;
+                //输入内容
+                StringBuffer sb = new StringBuffer();
+                sb.append("请先删除科室查体模板关联中的对应标签:");
+                for (DeptVital deptVital : deptVitals) {
+                    if(StringUtil.isNotBlank(depts.get(deptVital.getDeptId()))){
+                        sb.append("【" + depts.get(deptVital.getDeptId()) + "】").append("<br/>");
+                    }
+                }
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
+                        sb.toString());
+            }
             //删除自身
             this.deleteByIds(paramMap);
             //删除明细
@@ -569,6 +595,24 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
         return res;
     }
 
+    /**
+     * 知识库检索标签
+     *
+     * @param klQuestionVO
+     * @return
+     */
+    public List<QuestionInfo> indexForKL(KLQuestionVO klQuestionVO) {
+        Map<String, Object> paramMap = new HashMap<>();
+        paramMap.put("age", klQuestionVO.getAge());
+        paramMap.put("sexType", klQuestionVO.getSexType());
+        paramMap.put("tagNames", klQuestionVO.getTagNames());
+        paramMap.put("type", klQuestionVO.getType());
+        paramMap.put("tagType", klQuestionVO.getTagType());
+        paramMap.put("names", klQuestionVO.getNames());
+        List<QuestionInfo> res = this.indexForKL(paramMap);
+        return res;
+    }
+
     /**
      * 根据主标签id 检索子标签
      *

+ 2 - 0
icssman-service/src/main/java/com/diagbot/mapper/QuestionInfoMapper.java

@@ -35,6 +35,8 @@ public interface QuestionInfoMapper extends BaseMapper<QuestionInfo> {
 
     public List<QuestionInfo> index(Map map);
 
+    public List<QuestionInfo> indexForKL(Map map);
+
     /**
      * 根据名称获取标签信息
      *

+ 7 - 0
icssman-service/src/main/java/com/diagbot/service/QuestionInfoService.java

@@ -66,6 +66,13 @@ public interface QuestionInfoService extends IService<QuestionInfo> {
      */
     public List<QuestionInfo> index(Map map);
 
+    /**
+     * 知识库检索
+     *
+     * @param map
+     * @return
+     */
+    List<QuestionInfo> indexForKL(Map map);
 
     /**
      * 获取标签列表

+ 5 - 0
icssman-service/src/main/java/com/diagbot/service/impl/QuestionInfoServiceImpl.java

@@ -58,6 +58,11 @@ public class QuestionInfoServiceImpl extends ServiceImpl<QuestionInfoMapper, Que
         return baseMapper.index(map);
     }
 
+    @Override
+    public List<QuestionInfo> indexForKL(Map map) {
+        return baseMapper.indexForKL(map);
+    }
+
     @Override
     public List<GetQuestionInfoDTO> getQuestionUsualsByDept(GetQuestionUsualByDeptVO getQuestionUsualByDeptVO) {
         return baseMapper.getQuestionUsualsByDept(getQuestionUsualByDeptVO);

+ 22 - 0
icssman-service/src/main/java/com/diagbot/vo/KLQuestionVO.java

@@ -0,0 +1,22 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/9/24 11:09
+ */
+@Getter
+@Setter
+public class KLQuestionVO {
+    private List<String> tagNames;
+    private List<String> names;
+    private Integer sexType;
+    private Integer age;
+    private Integer type;
+    private List<Integer> tagType;
+}

+ 11 - 2
icssman-service/src/main/java/com/diagbot/web/CacheController.java

@@ -3,6 +3,8 @@ package com.diagbot.web;
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.CacheFacade;
+import com.diagbot.util.ListUtil;
+import com.diagbot.vo.IdListVO;
 import com.diagbot.vo.IdVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -14,6 +16,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 import springfox.documentation.annotations.ApiIgnore;
 
+import java.util.List;
+
 /**
  * @Description:
  * @Author:zhaops
@@ -33,8 +37,13 @@ public class CacheController {
     @PostMapping("/clearCache")
     @SysLogger("clearCache")
     @Transactional
-    public RespDTO<Boolean> clearCache(@RequestBody IdVO idVO) {
-        cacheFacade.clearCache(idVO.getId());
+    public RespDTO<Boolean> clearCache(@RequestBody IdListVO idListVO) {
+        List<Long> ids = idListVO.getIdList();
+        if (ListUtil.isNotEmpty(ids)) {
+            for (Long id : ids) {
+                cacheFacade.clearCache(id);
+            }
+        }
         return RespDTO.onSuc(true);
     }
 }

+ 3 - 2
icssman-service/src/main/java/com/diagbot/web/QuestionInfoController.java

@@ -11,6 +11,7 @@ import com.diagbot.entity.QuestionInfo;
 import com.diagbot.facade.QuestionFacade;
 import com.diagbot.vo.DeleteQuestionVO;
 import com.diagbot.vo.IndexIcssVO;
+import com.diagbot.vo.KLQuestionVO;
 import com.diagbot.vo.QuestionIdsVO;
 import com.diagbot.vo.QuestionIndexSubVO;
 import com.diagbot.vo.QuestionIndexVO;
@@ -84,8 +85,8 @@ public class QuestionInfoController {
     @PostMapping("/indexForkl")
     @SysLogger("indexForkl")
     @ApiIgnore
-    public RespDTO<List<QuestionInfo>> indexForkl(@RequestBody QuestionIndexVO questionIndexVO) {
-        List<QuestionInfo> data = questionFacade.indexFac(questionIndexVO);
+    public RespDTO<List<QuestionInfo>> indexForkl(@RequestBody KLQuestionVO klQuestionVO) {
+        List<QuestionInfo> data = questionFacade.indexForKL(klQuestionVO);
         return RespDTO.onSuc(data);
     }
 

+ 40 - 0
icssman-service/src/main/resources/mapper/QuestionInfoMapper.xml

@@ -106,6 +106,46 @@
         order by gmt_modified desc
     </select>
 
+    <select id="indexForKL" parameterType="java.util.Map" resultType="com.diagbot.entity.QuestionInfo">
+        select * from `icss_question_info`
+        where is_deleted = 'N'
+        <if test="names != null and names.size() > 0">
+            and name in
+            <foreach  collection="names" item="name" open="("  separator=","  close=")">
+                #{name}
+            </foreach>
+        </if>
+        <if test="tagNames != null and tagNames.size() > 0">
+            and tag_name in
+            <foreach  collection="tagNames" item="tagName" open="("  separator=","  close=")">
+                #{tagName}
+            </foreach>
+        </if>
+        <if test="sexType != null and sexType != 3 and sexType != ''">
+            and sex_type in (3, #{sexType})
+        </if>
+        <if test="age != null and age != ''">
+            <![CDATA[ and age_begin <= #{age} ]]>
+            <![CDATA[ and age_end >= #{age} ]]>
+        </if>
+        <if test="type != null and type != ''">
+            and type = #{type}
+        </if>
+        <if test="tagType != null and tagType.size() > 0">
+            and tag_type in
+            <foreach  collection="tagType" item="tagType" open="("  separator=","  close=")">
+                #{tagType}
+            </foreach>
+        </if>
+        <if test=" ids != null and ids.size() > 0 ">
+            and id  in
+            <foreach  collection="ids" item="id" open="("  separator=","  close=")">
+                #{id}
+            </foreach>
+        </if>
+        order by gmt_modified desc
+    </select>
+
     <select id="getQuestiongInfoByName" resultType="com.diagbot.dto.GetQuestionInfoDTO">
         SELECT
         a.*

+ 4 - 4
knowledgeman-service/src/main/java/com/diagbot/client/ICSSManServiceClient.java

@@ -3,8 +3,8 @@ package com.diagbot.client;
 import com.diagbot.client.hystrix.ICSSManServiceHystrix;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.QuestionInfo;
-import com.diagbot.vo.IdVO;
-import com.diagbot.vo.QuestionIndexVO;
+import com.diagbot.vo.IdListVO;
+import com.diagbot.vo.KLQuestionVO;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -19,8 +19,8 @@ import java.util.List;
 @FeignClient(value = "icssman-service", fallback = ICSSManServiceHystrix.class)
 public interface ICSSManServiceClient {
     @PostMapping("/questionInfo/indexForkl")
-    RespDTO<List<QuestionInfo>> index(@RequestBody QuestionIndexVO questionIndexVO);
+    RespDTO<List<QuestionInfo>> indexForkl(@RequestBody KLQuestionVO klQuestionVO);
 
     @PostMapping("/cache/clearCache")
-    RespDTO<Boolean> clearCache(@RequestBody IdVO idVO);
+    RespDTO<Boolean> clearCache(@RequestBody IdListVO idListVO);
 }

+ 5 - 5
knowledgeman-service/src/main/java/com/diagbot/client/hystrix/ICSSManServiceHystrix.java

@@ -3,8 +3,8 @@ package com.diagbot.client.hystrix;
 import com.diagbot.client.ICSSManServiceClient;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.QuestionInfo;
-import com.diagbot.vo.IdVO;
-import com.diagbot.vo.QuestionIndexVO;
+import com.diagbot.vo.IdListVO;
+import com.diagbot.vo.KLQuestionVO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -20,13 +20,13 @@ import java.util.List;
 @Slf4j
 public class ICSSManServiceHystrix implements ICSSManServiceClient {
     @Override
-    public RespDTO<List<QuestionInfo>> index(@RequestBody QuestionIndexVO questionIndexVO) {
-        log.error("【hystrix】调用{}异常", "index");
+    public RespDTO<List<QuestionInfo>> indexForkl(@RequestBody KLQuestionVO klQuestionVO) {
+        log.error("【hystrix】调用{}异常", "indexForkl");
         return null;
     }
 
     @Override
-    public RespDTO<Boolean> clearCache(@RequestBody IdVO idVO) {
+    public RespDTO<Boolean> clearCache(@RequestBody IdListVO idListVO) {
         log.error("【hystrix】调用{}异常", "clearCache");
         return null;
     }

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

@@ -37,6 +37,8 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/commonconcept/getConceptMapByNameAndType").permitAll()
                 .antMatchers("/commonconcept/index").permitAll()
                 .antMatchers("/commonconcept/indexByLexicon").permitAll()
+                .antMatchers("/versionInfo/getVersionInfoInner").permitAll()
+                .antMatchers("/versionInfo/getVersionInfoOuter").permitAll()
                 .antMatchers("/diagnose/initNeo").permitAll()
                 .antMatchers("/**").authenticated();
 //                .antMatchers("/**").permitAll();

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

@@ -100,6 +100,8 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/commonconcept/getConceptMapByNameAndType", request)
                 || matchers("/commonconcept/index", request)
                 || matchers("/commonconcept/indexByLexicon", request)
+                || matchers("/versionInfo/getVersionInfoInner", request)
+                || matchers("/versionInfo/getVersionInfoOuter", request)
                 || matchers("/diagnose/initNeo", request)
                 || matchers("/", request)) {
             return true;

+ 2 - 5
knowledgeman-service/src/main/java/com/diagbot/dto/LisMappingPageDTO.java

@@ -1,6 +1,6 @@
 package com.diagbot.dto;
 
-import com.diagbot.entity.LisMapping;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -13,10 +13,7 @@ import java.util.Date;
  */
 @Getter
 @Setter
-public class LisMappingPageDTO extends LisMapping {
-    private String mealName;
-    private String itemName;
-    private String uniqueName;
+public class LisMappingPageDTO extends LisMappingWrapper {
     private String operator;
     private String operatorName;
     private Date gmtOperate;

+ 10 - 8
knowledgeman-service/src/main/java/com/diagbot/dto/MultContactListDTO.java

@@ -15,8 +15,8 @@ import lombok.Setter;
  */
 @Getter
 @Setter
-public class MultContactListDTO {
-
+public class OnlyByRootListDTO {
+	
 	/**
      * 医学标准术语id
      */
@@ -28,6 +28,12 @@ public class MultContactListDTO {
      */
 	@ApiModelProperty(value="医学标准术语名称")
     private String libName;
+	
+	/**
+	 * 医学标准术语类型id
+	 */
+	@ApiModelProperty(value="医学标准术语类型id")
+	private Long libTypeId;
     
     /**
      * 医学标准术语类型
@@ -40,17 +46,12 @@ public class MultContactListDTO {
 	 */
 	private String libNameType;
     
-	/**
-	 * 非前端使用,下一级概念id合并字符串,用","隔开
-	 */
-	private String otherIds;
-	
     /**
      * 关联术语
      */
 	@ApiModelProperty(value="关联术语")
     private String otherNames;
-	
+    
     /**
      * 操作人
      */
@@ -70,5 +71,6 @@ public class MultContactListDTO {
 	@ApiModelProperty(value="状态:Y-已删除,N-启用中")
 	private String isDeleted;
     
+    
 
 }

+ 21 - 6
knowledgeman-service/src/main/java/com/diagbot/dto/RelationContactListDTO.java

@@ -15,9 +15,9 @@ import lombok.Setter;
  */
 @Getter
 @Setter
-public class RelationContactListDTO {
-    
-    /**
+public class SingleRelationListDTO {
+	
+	/**
      * 医学标准术语id
      */
 	@ApiModelProperty(value="医学标准术语id")
@@ -29,6 +29,12 @@ public class RelationContactListDTO {
 	@ApiModelProperty(value="医学标准术语名称")
     private String libName;
     
+	/**
+	 * 医学标准术语类型id
+	 */
+	@ApiModelProperty(value="医学标准术语类型id")
+	private Long libTypeId;
+	
     /**
      * 医学标准术语类型
      */
@@ -39,6 +45,18 @@ public class RelationContactListDTO {
 	 * 医学标准术语名称(医学标准术语类型)
 	 */
 	private String libNameType;
+	
+	/**
+	 * 关系模块类型编码
+	 */
+    @ApiModelProperty(value="关系模块类型编码")
+    private String relationModelTypeCode;
+    
+    /**
+     * 关系模块类型名称
+     */
+    @ApiModelProperty(value="关系模块类型名称")
+    private String relationModelTypeName;
     
     /**
      * 关联术语
@@ -66,8 +84,5 @@ public class RelationContactListDTO {
 	private String isDeleted;
     
     
-    
-    
-    
 
 }

+ 60 - 60
icssman-service/src/main/java/com/diagbot/dto/VersionDetailDTO.java

@@ -1,60 +1,60 @@
-package com.diagbot.dto;
-
-import java.util.Date;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 
- * @author wangfeng
- * @Description: TODO
- * @date 2018年11月21日 上午11:12:12
- */
-@Getter
-@Setter
-public class VersionDetailDTO {
-	
-	private Long id;
-
-    /**
-     * 记录创建时间
-     */
-    private Date gmtCreate;
-
-    /**
-     * 创建人,0表示无创建人值
-     */
-    //private String creator;
-
-    private String modifierid;
-    /**
-     * 版本主表id
-     */
-    private Long versionId;
-
-    /**
-     * 标题
-     */
-    private String title;
-
-    /**
-     * 描述
-     */
-    private String description;
-
-    /**
-     * 排序号
-     */
-    private String orderNo;
-
-    /**
-     * 1:启动,0:不启用
-     */
-    private String status;
-
-    /**
-     * 备注
-     */
-    private String remark;
-}
+package com.diagbot.dto;
+
+import java.util.Date;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:12:12
+ */
+@Getter
+@Setter
+public class VersionDetailDTO {
+	
+	private Long id;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    //private String creator;
+
+    private String modifierid;
+    /**
+     * 版本主表id
+     */
+    private Long versionId;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 描述
+     */
+    private String description;
+
+    /**
+     * 排序号
+     */
+    private String orderNo;
+
+    /**
+     * 1:启动,0:不启用
+     */
+    private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 60 - 0
knowledgeman-service/src/main/java/com/diagbot/dto/VersionDetailSpecDTO.java

@@ -0,0 +1,60 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:12:12
+ */
+@Getter
+@Setter
+public class VersionDetailSpecDTO {
+	
+	private Long id;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+   // private String creator;
+
+  
+    /**
+     * 版本主表id
+     */
+    private Long versionId;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 描述
+     */
+    private String description;
+
+    /**
+     * 排序号
+     */
+    private String orderNo;
+
+    /**
+     * 1:启动,0:不启用
+     */
+  //  private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 47 - 0
knowledgeman-service/src/main/java/com/diagbot/dto/VersionSpecDTO.java

@@ -0,0 +1,47 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:09:33
+ */
+@Getter
+@Setter
+public class VersionSpecDTO {
+
+    private Long id;
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    private Date refreshTime;
+
+    /**
+     * 1:启动,0:不启用
+     */
+    private String status;
+
+    private List<VersionDetailSpecDTO> detail;
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 61 - 51
icssman-service/src/main/java/com/diagbot/dto/VersionWrapperDTO.java

@@ -1,51 +1,61 @@
-package com.diagbot.dto;
-
-import java.util.Date;
-import java.util.List;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 
- * @author wangfeng
- * @Description: TODO
- * @date 2018年11月21日 上午11:09:33
- */
-@Getter
-@Setter
-public class VersionWrapperDTO {
-	
-	private Long id;
-	/**
-	 * 记录创建时间
-	 */
-	private Date gmtCreate;
-
-	/**
-	 * 创建人,0表示无创建人值
-	 */
-	//private String creator;
-	
-	private String modifierid;
-	/**
-	 * 名称
-	 */
-	private String name;
-	@JsonFormat(pattern = "yyyy-MM-dd")
-	private Date refreshTime;
-
-	/**
-	 * 1:启动,0:不启用
-	 */
-	private String status;
-
-	private List<VersionDetailDTO> detail;
-	/**
-	 * 备注
-	 */
-	private String remark;
-
-}
+package com.diagbot.dto;
+
+import java.util.Date;
+import java.util.List;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:09:33
+ */
+@Getter
+@Setter
+public class VersionWrapperDTO {
+	
+	private Long id;
+	/**
+	 * 记录创建时间
+	 */
+	private Date gmtCreate;
+
+	/**
+	 * 创建人,0表示无创建人值
+	 */
+	//private String creator;
+	
+	private String modifierid;
+	/**
+	 * 产品类型
+	 */
+	private Integer productType;
+
+	/**
+	 * 产品类型名称
+	 */
+	private String productTypeName;
+
+	/**
+	 * 名称
+	 */
+	private String name;
+	@JsonFormat(pattern = "yyyy-MM-dd")
+	private Date refreshTime;
+
+	/**
+	 * 1:启动,0:不启用
+	 */
+	private String status;
+
+	private List<VersionDetailDTO> detail;
+	/**
+	 * 备注
+	 */
+	private String remark;
+
+}

+ 1 - 1
icssman-service/src/main/java/com/diagbot/entity/VersionDetail.java

@@ -15,7 +15,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
  * @author wangfeng
  * @since 2018-11-20
  */
-@TableName("icss_version_detail")
+@TableName("kl_version_detail")
 public class VersionDetail implements Serializable {
 
     private static final long serialVersionUID = 1L;

+ 19 - 6
icssman-service/src/main/java/com/diagbot/entity/VersionInfo.java

@@ -1,21 +1,21 @@
 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;
 
+import java.io.Serializable;
+import java.util.Date;
+
 /**
  * <p>
  * 版本信息(关于)
  * </p>
  *
- * @author wangfeng
- * @since 2018-11-20
+ * @author gaodm
+ * @since 2019-08-07
  */
-@TableName("icss_version_info")
+@TableName("kl_version_info")
 public class VersionInfo implements Serializable {
 
     private static final long serialVersionUID = 1L;
@@ -48,6 +48,11 @@ public class VersionInfo implements Serializable {
      */
     private String modifier;
 
+    /**
+     * 产品类型(1:云平台内部;2:云平台外部;3:icss;4:智能分诊;5:数据服务模式;6:智能预问诊)
+     */
+    private Integer productType;
+
     /**
      * 名称
      */
@@ -107,6 +112,13 @@ public class VersionInfo implements Serializable {
     public void setModifier(String modifier) {
         this.modifier = modifier;
     }
+    public Integer getProductType() {
+        return productType;
+    }
+
+    public void setProductType(Integer productType) {
+        this.productType = productType;
+    }
     public String getName() {
         return name;
     }
@@ -145,6 +157,7 @@ public class VersionInfo implements Serializable {
         ", gmtModified=" + gmtModified +
         ", creator=" + creator +
         ", modifier=" + modifier +
+        ", productType=" + productType +
         ", name=" + name +
         ", refreshTime=" + refreshTime +
         ", status=" + status +

+ 18 - 0
knowledgeman-service/src/main/java/com/diagbot/entity/wrapper/LisMappingWrapper.java

@@ -0,0 +1,18 @@
+package com.diagbot.entity.wrapper;
+
+import com.diagbot.entity.LisMapping;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/9/24 13:24
+ */
+@Getter
+@Setter
+public class LisMappingWrapper extends LisMapping {
+    private String mealName;
+    private String itemName;
+    private String uniqueName;
+}

+ 51 - 0
knowledgeman-service/src/main/java/com/diagbot/enums/RelationModelTypeEnum.java

@@ -0,0 +1,51 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/5/7 14:06
+ */
+public enum RelationModelTypeEnum implements KeyedNamed {
+    KSCY(471011,"科室常用"),
+    HYCY(4710112,"化验常用"),
+    FJCY(4710116,"辅检常用"),
+    ZDGLLB(1810148,"诊断关联量表");
+
+    @Setter
+    private Integer key;
+
+    @Setter
+    private String name;
+
+    RelationModelTypeEnum(Integer key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static RelationModelTypeEnum getEnum(Integer key) {
+        for (RelationModelTypeEnum item : RelationModelTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(Integer key) {
+        RelationModelTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 396 - 265
knowledgeman-service/src/main/java/com/diagbot/facade/ConceptFacade.java

@@ -1,30 +1,9 @@
 package com.diagbot.facade;
 
-import java.io.InputStream;
-import java.text.DecimalFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-import org.apache.commons.lang.time.DateFormatUtils;
-import org.apache.poi.hssf.usermodel.HSSFDateUtil;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-import org.springframework.web.multipart.MultipartFile;
-
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.diagbot.client.ICSSManServiceClient;
 import com.diagbot.client.UserServiceClient;
 import com.diagbot.dto.ConceptBaseDTO;
 import com.diagbot.dto.ConceptRes;
@@ -39,6 +18,7 @@ import com.diagbot.entity.Concept;
 import com.diagbot.entity.ConceptCommon;
 import com.diagbot.entity.Lexicon;
 import com.diagbot.entity.LibraryInfo;
+import com.diagbot.entity.QuestionInfo;
 import com.diagbot.entity.Relation;
 import com.diagbot.entity.wrapper.ConceptWrapper;
 import com.diagbot.enums.IsDeleteEnum;
@@ -72,10 +52,33 @@ import com.diagbot.vo.GetAllInformationVO;
 import com.diagbot.vo.GetAllLisConceptVO;
 import com.diagbot.vo.GetConceptInfoDetailVO;
 import com.diagbot.vo.GetConceptPacInfosVO;
+import com.diagbot.vo.IdListVO;
 import com.diagbot.vo.IndexLexiconVO;
 import com.diagbot.vo.IndexVO;
+import com.diagbot.vo.KLQuestionVO;
 import com.diagbot.vo.RemoveConceptInfoVO;
 import com.google.common.collect.Lists;
+import org.apache.commons.lang.time.DateFormatUtils;
+import org.apache.poi.hssf.usermodel.HSSFDateUtil;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Component;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.InputStream;
+import java.text.DecimalFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * @Description: 术语查询业务层
@@ -104,6 +107,10 @@ public class ConceptFacade extends ConceptServiceImpl {
     private LexiconFacade lexiconFacade;
     @Autowired
     private ConceptCommonFacade conceptCommonFacade;
+    @Autowired
+    private LisMappingFacade lisMappingFacade;
+    @Autowired
+    private ICSSManServiceClient icssManServiceClient;
 
     /**
      * 获取所有化验公表项
@@ -142,11 +149,11 @@ public class ConceptFacade extends ConceptServiceImpl {
      * @return
      */
     public List<GetAllConceptDTO> getAllConcept(GetAllConceptVO getAllConceptVO) {
-    	List<GetAllConceptDTO> getAllConceptDTOList = Lists.newArrayList();
-    	if(StringUtil.isBlank(getAllConceptVO.getName())){
-    		return getAllConceptDTOList;
-    	}
-    	
+        List<GetAllConceptDTO> getAllConceptDTOList = Lists.newArrayList();
+        if (StringUtil.isBlank(getAllConceptVO.getName())) {
+            return getAllConceptDTOList;
+        }
+
         QueryWrapper<LibraryInfo> libraryInfoQe = new QueryWrapper<LibraryInfo>();
         libraryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
         libraryInfoQe.eq(getAllConceptVO.getIsConcept() != null, "is_concept", getAllConceptVO.getIsConcept());
@@ -161,7 +168,7 @@ public class ConceptFacade extends ConceptServiceImpl {
             Map<Long, Concept> conceptMap = list(conceptQe).stream().collect(Collectors.toMap(Concept::getId, i -> i));
             libraryInfoList.forEach(i -> {
                 if (conceptMap.get(i.getConceptId()) == null || conceptMap.get(i.getConceptId()).getLibId().intValue() != i.getId().intValue()
-                		||(getAllConceptVO.getExcludedConceptIds() != null && getAllConceptVO.getExcludedConceptIds().contains(i.getConceptId()))) {
+                        || (getAllConceptVO.getExcludedConceptIds() != null && getAllConceptVO.getExcludedConceptIds().contains(i.getConceptId()))) {
                     i.setIsDeleted(IsDeleteEnum.Y.getKey());
                 }
             });
@@ -199,48 +206,61 @@ public class ConceptFacade extends ConceptServiceImpl {
      * @return
      */
     public List<GetAllForRelationDTO> getAllForRelation(GetAllForRelationVO getAllForRelationVO) {
-        List<GetAllForRelationDTO> retList = new ArrayList<>();
-        if(StringUtil.isBlank(getAllForRelationVO.getName())&&getAllForRelationVO.getTypeId()==null){
-        	return retList;
-        }
+        List<GetAllForRelationDTO> retList = Lists.newArrayList();
 
-        QueryWrapper<Concept> conceptQe = new QueryWrapper<>();
-        conceptQe.eq("is_deleted", IsDeleteEnum.N.getKey());
-        conceptQe.like(StringUtil.isNotBlank(getAllForRelationVO.getName()),"lib_name", getAllForRelationVO.getName());
-        conceptQe.eq(getAllForRelationVO.getTypeId()!=null,"lib_type", getAllForRelationVO.getTypeId());
-        List<Concept> conceptList = list(conceptQe);
+        if (StringUtil.isNotBlank(getAllForRelationVO.getName()) || getAllForRelationVO.getTypeId() != null) {
+            QueryWrapper<Concept> conceptQe = new QueryWrapper<>();
+            conceptQe.eq("is_deleted", IsDeleteEnum.N.getKey());
+            conceptQe.like(StringUtil.isNotBlank(getAllForRelationVO.getName()), "lib_name", getAllForRelationVO.getName());
+            conceptQe.eq(getAllForRelationVO.getTypeId() != null, "lib_type", getAllForRelationVO.getTypeId());
+            List<Concept> conceptList = list(conceptQe);
+
+            if (ListUtil.isNotEmpty(conceptList)) {
+                Map<Long, Long> reCouMap = new HashMap<>();
+                if (getAllForRelationVO.getRelationPosition() != 3) {
+                    if (getAllForRelationVO.getRelationId() == null) {
+                        throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "关系类型id必传!");
+                    }
 
-        Map<Long, Long> reCouMap = new HashMap<>();
-        if (getAllForRelationVO.getRelationPosition() != 3) {
-            if (getAllForRelationVO.getRelationId() == null) {
-                throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "关系类型id必传!");
-            }
+                    List<Long> conceptIdList = conceptList.stream().map(i -> i.getId()).collect(Collectors.toList());
+                    QueryWrapper<Relation> relationQe = new QueryWrapper<>();
+                    relationQe.eq("relation_id", getAllForRelationVO.getRelationId());
 
-            List<Long> conceptIdList = conceptList.stream().map(i -> i.getId()).collect(Collectors.toList());
-            QueryWrapper<Relation> relationQe = new QueryWrapper<>();
-            relationQe.eq("relation_id", getAllForRelationVO.getRelationId());
-            if (getAllForRelationVO.getRelationPosition() == 1) {
-            	relationQe.eq(getAllForRelationVO.getRelationConceptId() != null, "end_id", getAllForRelationVO.getRelationConceptId());
-            	relationQe.and(wrapper->wrapper.in("start_id", conceptIdList).or(getAllForRelationVO.getRelationConceptId() == null).in("end_id", conceptIdList));
-                reCouMap = relationFacade.list(relationQe).stream().collect(Collectors.groupingBy(Relation::getStartId, Collectors.counting()));
-            } else if(getAllForRelationVO.getRelationConceptId() != null) {
-                relationQe.in("end_id", conceptIdList);
-                relationQe.eq("start_id", getAllForRelationVO.getRelationConceptId());
-                reCouMap = relationFacade.list(relationQe).stream().collect(Collectors.groupingBy(Relation::getEndId, Collectors.counting()));
-            }
-        }
+                    List<Long> relationConceptIdList = Lists.newArrayList();
+                    if (getAllForRelationVO.getRelationTypeId() != null) {
+                        QueryWrapper<Concept> conceptQe1 = new QueryWrapper<>();
+                        conceptQe1.eq("lib_type", getAllForRelationVO.getRelationTypeId());
+                        relationConceptIdList = list(conceptQe1).stream().map(i -> i.getId()).collect(Collectors.toList());
+                    }
+                    if (getAllForRelationVO.getRelationConceptId() != null) {
+                        relationConceptIdList.add(getAllForRelationVO.getRelationConceptId());
+                    }
+                    if (ListUtil.isNotEmpty(relationConceptIdList)) {
+                        if (getAllForRelationVO.getRelationPosition() == 1) {
+                            relationQe.in("start_id", conceptIdList);
+                            relationQe.in("end_id", relationConceptIdList);
+                            reCouMap = relationFacade.list(relationQe).stream().collect(Collectors.groupingBy(Relation::getStartId, Collectors.counting()));
+                        } else {
+                            relationQe.in("end_id", conceptIdList);
+                            relationQe.in("start_id", relationConceptIdList);
+                            reCouMap = relationFacade.list(relationQe).stream().collect(Collectors.groupingBy(Relation::getEndId, Collectors.counting()));
+                        }
+                    }
+                }
 
-        for (Concept i : conceptList) {
-            if (reCouMap.get(i.getId()) != null
-                    || (getAllForRelationVO.getExcludedConceptIds() != null && getAllForRelationVO.getExcludedConceptIds().contains(i.getId()))
-                    || (getAllForRelationVO.getRelationConceptId() != null && getAllForRelationVO.getRelationConceptId() == i.getId())) {
-                continue;
+                for (Concept i : conceptList) {
+                    if (reCouMap.get(i.getId()) != null
+                            || (getAllForRelationVO.getExcludedConceptIds() != null && getAllForRelationVO.getExcludedConceptIds().contains(i.getId()))
+                            || (getAllForRelationVO.getRelationConceptId() != null && getAllForRelationVO.getRelationConceptId() == i.getId())) {
+                        continue;
+                    }
+                    GetAllForRelationDTO getAllForRelationDTO = new GetAllForRelationDTO();
+                    getAllForRelationDTO.setConceptId(i.getId());
+                    getAllForRelationDTO.setConceptName(i.getLibName());
+                    getAllForRelationDTO.setConceptNameType(i.getLibName() + "(" + LexiconTypeEnum.getName(i.getLibType().intValue()) + ")");
+                    retList.add(getAllForRelationDTO);
+                }
             }
-            GetAllForRelationDTO getAllForRelationDTO = new GetAllForRelationDTO();
-            getAllForRelationDTO.setConceptId(i.getId());
-            getAllForRelationDTO.setConceptName(i.getLibName());
-            getAllForRelationDTO.setConceptNameType(i.getLibName()+"("+LexiconTypeEnum.getName(i.getLibType().intValue())+")");
-            retList.add(getAllForRelationDTO);
         }
 
         return retList;
@@ -253,63 +273,63 @@ public class ConceptFacade extends ConceptServiceImpl {
      * @return
      */
     public IPage<GetAllInformationDTO> getAllInformation(GetAllInformationVO getAllInformationVO) {
-    	Page<GetAllInformationDTO> getAllInformationDTOPage = new Page<>();
-    	
-    	Page<Concept> conceptPage = new Page<>(getAllInformationVO.getCurrent(),getAllInformationVO.getSize());
-    	QueryWrapper<Concept> conceptQe = new QueryWrapper<>();
-    	if(StringUtil.isNotBlank(getAllInformationVO.getLibName())){
-    		QueryWrapper<LibraryInfo> libraryInfoQe = new QueryWrapper<>();
-    		libraryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
-    		libraryInfoQe.like("name", getAllInformationVO.getLibName());
-    		libraryInfoQe.eq(StringUtil.isNotBlank(getAllInformationVO.getType()),"type_id", LexiconTypeEnum.getKey(getAllInformationVO.getType()));
-    		List<Long> conceptIdList = libraryinfoFacade.list(libraryInfoQe).stream().map(i->i.getConceptId()).distinct().collect(Collectors.toList());
-    		if(ListUtil.isNotEmpty(conceptIdList)){
-    			conceptQe.in("id", conceptIdList);
-    		}else{
-    			conceptQe.eq("id", -999999999);
-    		}
-    	}
-    	conceptQe.like(StringUtil.isNotBlank(getAllInformationVO.getName()),"lib_name", getAllInformationVO.getName());
-    	conceptQe.eq(StringUtil.isNotBlank(getAllInformationVO.getType()),"lib_type", LexiconTypeEnum.getKey(getAllInformationVO.getType()));
-    	conceptQe.eq(StringUtil.isNotBlank(getAllInformationVO.getIsDeleted()),"is_deleted", getAllInformationVO.getIsDeleted());
-    	conceptQe.orderByDesc("sort_deleted");
-    	conceptQe.orderByDesc("gmt_modified");
-    	conceptQe.orderByDesc("id");
-    	IPage<Concept> iPage = this.page(conceptPage, conceptQe);
-    	BeanUtil.copyProperties(iPage, getAllInformationDTOPage);
-    	
-    	if(ListUtil.isNotEmpty(iPage.getRecords())){
-    		List<GetAllInformationDTO> getAllInformationDTOList = Lists.newArrayList();
-    		
-    		List<Long> conceptIds = iPage.getRecords().stream().map(i->i.getId()).collect(Collectors.toList());
-    		QueryWrapper<LibraryInfo> libraryInfoQe = new QueryWrapper<>();
-    		libraryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
-    		libraryInfoQe.in("concept_id", conceptIds);
-    		Map<Long,List<LibraryInfo>> libraryInfoListMap = libraryinfoFacade.list(libraryInfoQe).stream().collect(Collectors.groupingBy(LibraryInfo::getConceptId));
-    		
-    		List<String> userIds = iPage.getRecords().stream().map(i ->i.getModifier()).distinct().collect(Collectors.toList());
-    		RespDTO<Map<String, String>> respDTO = userServiceClient.getUserInfoByIds(userIds);
-    		RespDTOUtil.respNGDealCover(respDTO, "获取用户信息失败");
-    		iPage.getRecords().forEach(i -> {
-    			GetAllInformationDTO getAllInformationDTO = new GetAllInformationDTO();
-    			getAllInformationDTO.setConceptId(i.getId());
-    			getAllInformationDTO.setLibName(i.getLibName());
-    			getAllInformationDTO.setLibType(LexiconTypeEnum.getName(i.getLibType().intValue()));
-    			getAllInformationDTO.setIsDeleted(i.getIsDeleted());
-    			getAllInformationDTO.setOperName(respDTO.data.get(i.getModifier()));
-    			getAllInformationDTO.setOperTime(i.getGmtModified());
-    			if(libraryInfoListMap.get(i.getId())!=null){
-    				getAllInformationDTO.setOtherNames(libraryInfoListMap.get(i.getId()).stream().sorted((a,b)->b.getIsConcept()-a.getIsConcept()).map(k->k.getName()).collect(Collectors.joining("、")));
-    			}
-    			getAllInformationDTOList.add(getAllInformationDTO);
-    		 });
-    		
-    		getAllInformationDTOPage.setRecords(getAllInformationDTOList);
-    	}
-    	
+        Page<GetAllInformationDTO> getAllInformationDTOPage = new Page<>();
+
+        Page<Concept> conceptPage = new Page<>(getAllInformationVO.getCurrent(), getAllInformationVO.getSize());
+        QueryWrapper<Concept> conceptQe = new QueryWrapper<>();
+        if (StringUtil.isNotBlank(getAllInformationVO.getLibName())) {
+            QueryWrapper<LibraryInfo> libraryInfoQe = new QueryWrapper<>();
+            libraryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
+            libraryInfoQe.like("name", getAllInformationVO.getLibName());
+            libraryInfoQe.eq(StringUtil.isNotBlank(getAllInformationVO.getType()), "type_id", LexiconTypeEnum.getKey(getAllInformationVO.getType()));
+            List<Long> conceptIdList = libraryinfoFacade.list(libraryInfoQe).stream().map(i -> i.getConceptId()).distinct().collect(Collectors.toList());
+            if (ListUtil.isNotEmpty(conceptIdList)) {
+                conceptQe.in("id", conceptIdList);
+            } else {
+                conceptQe.eq("id", -999999999);
+            }
+        }
+        conceptQe.like(StringUtil.isNotBlank(getAllInformationVO.getName()), "lib_name", getAllInformationVO.getName());
+        conceptQe.eq(StringUtil.isNotBlank(getAllInformationVO.getType()), "lib_type", LexiconTypeEnum.getKey(getAllInformationVO.getType()));
+        conceptQe.eq(StringUtil.isNotBlank(getAllInformationVO.getIsDeleted()), "is_deleted", getAllInformationVO.getIsDeleted());
+        conceptQe.orderByDesc("sort_deleted");
+        conceptQe.orderByDesc("gmt_modified");
+        conceptQe.orderByDesc("id");
+        IPage<Concept> iPage = this.page(conceptPage, conceptQe);
+        BeanUtil.copyProperties(iPage, getAllInformationDTOPage);
+
+        if (ListUtil.isNotEmpty(iPage.getRecords())) {
+            List<GetAllInformationDTO> getAllInformationDTOList = Lists.newArrayList();
+
+            List<Long> conceptIds = iPage.getRecords().stream().map(i -> i.getId()).collect(Collectors.toList());
+            QueryWrapper<LibraryInfo> libraryInfoQe = new QueryWrapper<>();
+            libraryInfoQe.eq("is_deleted", IsDeleteEnum.N.getKey());
+            libraryInfoQe.in("concept_id", conceptIds);
+            Map<Long, List<LibraryInfo>> libraryInfoListMap = libraryinfoFacade.list(libraryInfoQe).stream().collect(Collectors.groupingBy(LibraryInfo::getConceptId));
+
+            List<String> userIds = iPage.getRecords().stream().map(i -> i.getModifier()).distinct().collect(Collectors.toList());
+            RespDTO<Map<String, String>> respDTO = userServiceClient.getUserInfoByIds(userIds);
+            RespDTOUtil.respNGDealCover(respDTO, "获取用户信息失败");
+            iPage.getRecords().forEach(i -> {
+                GetAllInformationDTO getAllInformationDTO = new GetAllInformationDTO();
+                getAllInformationDTO.setConceptId(i.getId());
+                getAllInformationDTO.setLibName(i.getLibName());
+                getAllInformationDTO.setLibType(LexiconTypeEnum.getName(i.getLibType().intValue()));
+                getAllInformationDTO.setIsDeleted(i.getIsDeleted());
+                getAllInformationDTO.setOperName(respDTO.data.get(i.getModifier()));
+                getAllInformationDTO.setOperTime(i.getGmtModified());
+                if (libraryInfoListMap.get(i.getId()) != null) {
+                    getAllInformationDTO.setOtherNames(libraryInfoListMap.get(i.getId()).stream().sorted((a, b) -> b.getIsConcept() - a.getIsConcept()).map(k -> k.getName()).collect(Collectors.joining("、")));
+                }
+                getAllInformationDTOList.add(getAllInformationDTO);
+            });
+
+            getAllInformationDTOPage.setRecords(getAllInformationDTOList);
+        }
+
         return getAllInformationDTOPage;
     }
-    
+
     /**
      * 医学术语命名删除或者恢复
      *
@@ -380,11 +400,13 @@ public class ConceptFacade extends ConceptServiceImpl {
             }
         }
 
+        //清理缓存
+        this.cacheClearByConceptId(concept.getId());
+
         concept.setIsDeleted(removeConceptInfoVO.getIsDeleted());
         concept.setModifier(currentUser);
         concept.setGmtModified(now);
         this.updateById(concept);
-
         return true;
     }
 
@@ -445,7 +467,7 @@ public class ConceptFacade extends ConceptServiceImpl {
         for (AddConceptInfoDetailVO i : addConceptInfoVO.getDetailList()) {
             if (i.getName().matches(regEx)) {
                 //throw new CommonException(CommonErrorCode.RPC_ERROR, lineNumStr + "无法输入纯数字或者纯字符,请输入正确数据!");
-            	throw new CommonException(CommonErrorCode.RPC_ERROR, lineNumStr + "无法输入纯数字,请输入正确数据!");
+                throw new CommonException(CommonErrorCode.RPC_ERROR, lineNumStr + "无法输入纯数字,请输入正确数据!");
             }
         }
 
@@ -518,8 +540,8 @@ public class ConceptFacade extends ConceptServiceImpl {
                     } else {
                         throw new CommonException(CommonErrorCode.RPC_ERROR, "该数据已经建立且处于已删除状态,可前往列表中恢复该条数据!");
                     }
-                }else if(addConceptInfoVO.getConceptId().intValue()!=ckConceptId){
-                	throw new CommonException(CommonErrorCode.RPC_ERROR, lineNumStr + "标准术语已被占用!");
+                } else if (addConceptInfoVO.getConceptId().intValue() != ckConceptId) {
+                    throw new CommonException(CommonErrorCode.RPC_ERROR, lineNumStr + "标准术语已被占用!");
                 }
             } else if (addConceptInfoVO.getLineNum() == null && addConceptInfoVO.getConceptId() == null && concept != null
                     || libraryInfoList.stream().filter(i -> i.getConceptId().intValue() == ckConceptId).count() == 1) {
@@ -577,6 +599,9 @@ public class ConceptFacade extends ConceptServiceImpl {
 
         libraryInfoService.saveOrUpdateBatch(saveOrUpdateLibraryInfoList);
 
+        //清理原名称对应标签缓存
+        this.cacheClearByConceptId(conceptId);
+
         concept.setId(conceptId);
         concept.setLibId(libraryInfoMain.getId());
         concept.setLibName(libraryInfoMain.getName());
@@ -594,7 +619,7 @@ public class ConceptFacade extends ConceptServiceImpl {
                 conceptCommon.setGmtCreate(now);
                 conceptCommon.setCreator(currentUser);
             }
-            
+
             BeanUtil.copyProperties(addConceptInfoVO, conceptCommon);
             conceptCommon.setConceptId(conceptId);
             conceptCommon.setGmtModified(now);
@@ -644,13 +669,13 @@ public class ConceptFacade extends ConceptServiceImpl {
                                 if (row == null) {
                                     continue;
                                 }
-//                                if (count == 1) {
-//                                    title_1 = getValue(row.getCell(0)).trim().replace(" ", "");
-//                                    title_2 = getValue(row.getCell(1)).trim().replace(" ", "");
-//                                    title_3 = getValue(row.getCell(2)).trim().replace(" ", "");
-//                                    title_4 = getValue(row.getCell(3)).trim().replace(" ", "");
-//                                    continue;
-//                                }
+                                //                                if (count == 1) {
+                                //                                    title_1 = getValue(row.getCell(0)).trim().replace(" ", "");
+                                //                                    title_2 = getValue(row.getCell(1)).trim().replace(" ", "");
+                                //                                    title_3 = getValue(row.getCell(2)).trim().replace(" ", "");
+                                //                                    title_4 = getValue(row.getCell(3)).trim().replace(" ", "");
+                                //                                    continue;
+                                //                                }
                                 libName = getValue(row.getCell(0)).trim().replace(" ", "");
                                 libType = getValue(row.getCell(1)).trim().replace(" ", "");
                                 otherNames = getValue(row.getCell(2)).trim().replace(" ", "");
@@ -658,23 +683,23 @@ public class ConceptFacade extends ConceptServiceImpl {
                                 sexType = getValue(row.getCell(4)).trim().replace(" ", "");
                                 minAge = getValue(row.getCell(5)).trim().replace(" ", "");
                                 maxAge = getValue(row.getCell(6)).trim().replace(" ", "");
-                                
-                                if(count == 1){
-                                	//当前行是第一行时,libName、libType、otherNames、remark、sexType、minAge、maxAge是标题
-                                	if (libName.indexOf("标准术语") == -1
-                                			|| libType.indexOf("类型") == -1
-                                			|| otherNames.indexOf("术语同义词") == -1
-                                			|| remark.indexOf("标准术语说明") == -1
-                                			|| sexType.indexOf("性别") == -1
-                                			|| minAge.indexOf("最小年龄") == -1
-                                			|| maxAge.indexOf("最大年龄") == -1) {
-                                		sbf.append("导入数据不正确,请选择正确数据导入!").append("<br/>");
-                                		break;
-                                	}else{
-                                		continue;
-                                	}
+
+                                if (count == 1) {
+                                    //当前行是第一行时,libName、libType、otherNames、remark、sexType、minAge、maxAge是标题
+                                    if (libName.indexOf("标准术语") == -1
+                                            || libType.indexOf("类型") == -1
+                                            || otherNames.indexOf("术语同义词") == -1
+                                            || remark.indexOf("标准术语说明") == -1
+                                            || sexType.indexOf("性别") == -1
+                                            || minAge.indexOf("最小年龄") == -1
+                                            || maxAge.indexOf("最大年龄") == -1) {
+                                        sbf.append("导入数据不正确,请选择正确数据导入!").append("<br/>");
+                                        break;
+                                    } else {
+                                        continue;
+                                    }
                                 }
-                                
+
                                 if (StringUtil.isEmpty(libName) && StringUtil.isEmpty(libType)
                                         && StringUtil.isEmpty(otherNames) && StringUtil.isEmpty(remark)) {
                                     continue;
@@ -706,8 +731,8 @@ public class ConceptFacade extends ConceptServiceImpl {
                                 addConceptInfoVO.setLineNum(count);
                                 addConceptInfoVO.setName(libName);
                                 addConceptInfoVO.setType(libType);
-                                addConceptInfoVO.setMinAge(StringUtil.isEmpty(minAge)?0:Integer.parseInt(minAge));
-                                addConceptInfoVO.setMaxAge(StringUtil.isEmpty(minAge)?200:Integer.parseInt(maxAge));
+                                addConceptInfoVO.setMinAge(StringUtil.isEmpty(minAge) ? 0 : Integer.parseInt(minAge));
+                                addConceptInfoVO.setMaxAge(StringUtil.isEmpty(minAge) ? 200 : Integer.parseInt(maxAge));
                                 if (sexType.equals("男")) {
                                     addConceptInfoVO.setSexType(1);
                                 } else if (sexType.equals("女")) {
@@ -772,21 +797,21 @@ public class ConceptFacade extends ConceptServiceImpl {
             throw new CommonException(CommonErrorCode.RPC_ERROR, sbf.toString());
         }
 
-//        /**********************非规范的excel导入提醒*****************************************/
-//        if (title_1.indexOf("标准术语") == -1
-//                || title_2.indexOf("类型") == -1
-//                || title_3.indexOf("术语同义词") == -1
-//                || title_4.indexOf("标准术语说明") == -1) {
-//            throw new CommonException(CommonErrorCode.RPC_ERROR, "导入数据不正确,请选择正确数据导入!");
-//        }
+        //        /**********************非规范的excel导入提醒*****************************************/
+        //        if (title_1.indexOf("标准术语") == -1
+        //                || title_2.indexOf("类型") == -1
+        //                || title_3.indexOf("术语同义词") == -1
+        //                || title_4.indexOf("标准术语说明") == -1) {
+        //            throw new CommonException(CommonErrorCode.RPC_ERROR, "导入数据不正确,请选择正确数据导入!");
+        //        }
 
         /****************************导入空文件************************/
         if (addConceptInfoVOList.size() == 0) {
             throw new CommonException(CommonErrorCode.RPC_ERROR, "导入数据不能为空!");
         }
-        
-        if(addConceptInfoVOList.size() > 5000){
-        	throw new CommonException(CommonErrorCode.RPC_ERROR, "当前数据导入失败,单次导入最多可支持5千条数据导入");
+
+        if (addConceptInfoVOList.size() > 5000) {
+            throw new CommonException(CommonErrorCode.RPC_ERROR, "当前数据导入失败,单次导入最多可支持5千条数据导入");
         }
 
         /****************excel文件中所有术语存在重复提示---名字和类型一样即重复***********************/
@@ -810,100 +835,101 @@ public class ConceptFacade extends ConceptServiceImpl {
          * addConceptInfoVOList.forEach(i -> {
             addConceptInfo(i);
         });*/
-        
+
         ////优化后
         QueryWrapper<LibraryInfo> libraryInfoQe = new QueryWrapper<>();
-        libraryInfoQe.in("name", addConceptInfoDetailVOList.stream().map(i->i.getName()).distinct().collect(Collectors.toList()));
-        Map<String,List<LibraryInfo>> libraryInfoListMap = libraryinfoFacade.list(libraryInfoQe).stream().collect(Collectors.groupingBy(LibraryInfo::getName));
-        
-        Map<String,Lexicon> lexiconMap = lexiconFacade.list().stream().collect(Collectors.toMap(Lexicon::getName, i->i));
-        
+        libraryInfoQe.in("name", addConceptInfoDetailVOList.stream().map(i -> i.getName()).distinct().collect(Collectors.toList()));
+        Map<String, List<LibraryInfo>> libraryInfoListMap = libraryinfoFacade.list(libraryInfoQe).stream().collect(Collectors.groupingBy(LibraryInfo::getName));
+
+        Map<String, Lexicon> lexiconMap = lexiconFacade.list().stream().collect(Collectors.toMap(Lexicon::getName, i -> i));
+
         String ckmsg = null;
-        for(AddConceptInfoVO addConceptInfoVO : addConceptInfoVOList){
-        	ckmsg = checkImConceptInfo(addConceptInfoVO,libraryInfoListMap,lexiconMap);
-        	if(StringUtil.isNotBlank(ckmsg)){
-        		sbf.append("第").append(addConceptInfoVO.getLineNum()).append("行").append(ckmsg).append("<br/>");
-        	}
+        for (AddConceptInfoVO addConceptInfoVO : addConceptInfoVOList) {
+            ckmsg = checkImConceptInfo(addConceptInfoVO, libraryInfoListMap, lexiconMap);
+            if (StringUtil.isNotBlank(ckmsg)) {
+                sbf.append("第").append(addConceptInfoVO.getLineNum()).append("行").append(ckmsg).append("<br/>");
+            }
         }
-        
+
         if (sbf.length() > 0) {
             throw new CommonException(CommonErrorCode.RPC_ERROR, sbf.toString());
         }
-        
+
         saveAddConceptInfoVOList(addConceptInfoVOList);
 
         return true;
     }
-    
+
     /**
      * 导入数据插入更新前校验
+     *
      * @param addConceptInfoVO
      * @param libraryInfoListAllMap
      * @param lexiconMap
      * @return
      */
-    public String checkImConceptInfo(AddConceptInfoVO addConceptInfoVO,Map<String,List<LibraryInfo>> libraryInfoListAllMap,Map<String,Lexicon> lexiconMap) {
-    	String currentUser = UserUtils.getCurrentPrincipleID();
+    public String checkImConceptInfo(AddConceptInfoVO addConceptInfoVO, Map<String, List<LibraryInfo>> libraryInfoListAllMap, Map<String, Lexicon> lexiconMap) {
+        String currentUser = UserUtils.getCurrentPrincipleID();
         Date now = DateUtil.now();
-    	
-    	Concept concept = new Concept();
-    	ConceptCommon conceptCommon = null;
-    	List<LibraryInfo> libraryInfoList = Lists.newArrayList();
+
+        Concept concept = new Concept();
+        ConceptCommon conceptCommon = null;
+        List<LibraryInfo> libraryInfoList = Lists.newArrayList();
 
         List<AddConceptInfoDetailVO> addConceptInfoDetailVOMainList = addConceptInfoVO.getDetailList().stream().filter(i -> i.getIsConcept() == 1).collect(Collectors.toList());
         if (addConceptInfoDetailVOMainList.size() == 0) {
-        	return "同义词中缺少标准词本体!";
+            return "同义词中缺少标准词本体!";
         }
         if (addConceptInfoDetailVOMainList.size() > 1) {
-        	return "标准术语只能有一个!";
+            return "标准术语只能有一个!";
         }
-        
+
         Lexicon lexicon = lexiconMap.get(addConceptInfoVO.getType());
         if (lexicon == null) {
-        	return "数据有误,该类型信息在数据库中不存在!";
+            return "数据有误,该类型信息在数据库中不存在!";
         }
         Long typeId = lexicon.getId();
         concept.setLibType(typeId);
         concept.setGmtModified(now);
-    	concept.setModifier(currentUser);
-    	if(lexicon.getIsHasCommon()==1){
-    		conceptCommon = new ConceptCommon();
-    		conceptCommon.setSexType(addConceptInfoVO.getSexType());
-        	conceptCommon.setMinAge(addConceptInfoVO.getMinAge());
-        	conceptCommon.setMaxAge(addConceptInfoVO.getMaxAge());
-        	conceptCommon.setGmtModified(now);
-        	conceptCommon.setModifier(currentUser);
-    	}
-    	
+        concept.setModifier(currentUser);
+        if (lexicon.getIsHasCommon() == 1) {
+            conceptCommon = new ConceptCommon();
+            conceptCommon.setSexType(addConceptInfoVO.getSexType());
+            conceptCommon.setMinAge(addConceptInfoVO.getMinAge());
+            conceptCommon.setMaxAge(addConceptInfoVO.getMaxAge());
+            conceptCommon.setGmtModified(now);
+            conceptCommon.setModifier(currentUser);
+        }
+
         List<LibraryInfo> extLibraryInfoList = Lists.newArrayList();
-        addConceptInfoVO.getDetailList().forEach(a->{
-        	List<LibraryInfo> libraryInfoListAll = libraryInfoListAllMap.get(a.getName());
-        	if(ListUtil.isNotEmpty(libraryInfoListAll)){
-        		libraryInfoListAll = libraryInfoListAll.stream().filter(b->b.getTypeId().intValue()==typeId.intValue()).collect(Collectors.toList());
-        		if(ListUtil.isNotEmpty(libraryInfoListAll)){
-        			extLibraryInfoList.add(libraryInfoListAll.get(0));
-        		}
-        	}
+        addConceptInfoVO.getDetailList().forEach(a -> {
+            List<LibraryInfo> libraryInfoListAll = libraryInfoListAllMap.get(a.getName());
+            if (ListUtil.isNotEmpty(libraryInfoListAll)) {
+                libraryInfoListAll = libraryInfoListAll.stream().filter(b -> b.getTypeId().intValue() == typeId.intValue()).collect(Collectors.toList());
+                if (ListUtil.isNotEmpty(libraryInfoListAll)) {
+                    extLibraryInfoList.add(libraryInfoListAll.get(0));
+                }
+            }
         });
         Map<String, LibraryInfo> extLibraryInfoMap = extLibraryInfoList.stream().collect(Collectors.toMap(LibraryInfo::getName, i -> i));
-        
+
         LibraryInfo libraryInfoMain = extLibraryInfoMap.get(addConceptInfoDetailVOMainList.get(0).getName());
         Long conceptId = null;
         if (libraryInfoMain == null) {
-        	conceptId = -9999l;
-        	concept.setGmtCreate(now);
-        	concept.setCreator(currentUser);
-        	if(conceptCommon!=null){
-        		conceptCommon.setGmtCreate(now);
-            	conceptCommon.setCreator(currentUser);
-        	}
+            conceptId = -9999l;
+            concept.setGmtCreate(now);
+            concept.setCreator(currentUser);
+            if (conceptCommon != null) {
+                conceptCommon.setGmtCreate(now);
+                conceptCommon.setCreator(currentUser);
+            }
         } else {
             conceptId = libraryInfoMain.getConceptId();
             concept.setId(conceptId);
             addConceptInfoVO.setConceptId(conceptId);
 
-            if (libraryInfoMain.getIsConcept()!=1&&extLibraryInfoList.stream().filter(i -> i.getConceptId().intValue() == libraryInfoMain.getConceptId().intValue()).count() == 1) {
-            	return "标准术语已作为同义词被占用!";
+            if (libraryInfoMain.getIsConcept() != 1 && extLibraryInfoList.stream().filter(i -> i.getConceptId().intValue() == libraryInfoMain.getConceptId().intValue()).count() == 1) {
+                return "标准术语已作为同义词被占用!";
             }
         }
 
@@ -911,10 +937,10 @@ public class ConceptFacade extends ConceptServiceImpl {
         for (AddConceptInfoDetailVO i : addConceptInfoVO.getDetailList()) {
             LibraryInfo libraryInfo = extLibraryInfoMap.get(i.getName());
             if (libraryInfo == null) {
-            	libraryInfo = new LibraryInfo();
-            	libraryInfo.setTypeId(typeId);
-            	libraryInfo.setGmtCreate(now);
-            	libraryInfo.setCreator(currentUser);
+                libraryInfo = new LibraryInfo();
+                libraryInfo.setTypeId(typeId);
+                libraryInfo.setGmtCreate(now);
+                libraryInfo.setCreator(currentUser);
             } else if (libraryInfo.getConceptId().intValue() != conceptId.intValue()) {
                 sbf.append(i.getName()).append(" ");
                 continue;
@@ -925,10 +951,10 @@ public class ConceptFacade extends ConceptServiceImpl {
             libraryInfo.setConceptId(conceptId);
             libraryInfo.setGmtModified(now);
             libraryInfo.setModifier(currentUser);
-            if(i.getIsConcept()==1){
-            	libraryInfoList.add(0,libraryInfo);
-            }else{
-            	libraryInfoList.add(libraryInfo);
+            if (i.getIsConcept() == 1) {
+                libraryInfoList.add(0, libraryInfo);
+            } else {
+                libraryInfoList.add(libraryInfo);
             }
         }
 
@@ -936,74 +962,78 @@ public class ConceptFacade extends ConceptServiceImpl {
             sbf.append("已被占用");
             return sbf.toString();
         }
-        
+
         addConceptInfoVO.setConcept(concept);
         addConceptInfoVO.setConceptCommon(conceptCommon);
         addConceptInfoVO.setLibraryInfoList(libraryInfoList);
 
         return null;
     }
-    
+
     /**
      * 导入数据插入更新
+     *
      * @param addConceptInfoVOList
      */
-    private void saveAddConceptInfoVOList(List<AddConceptInfoVO> addConceptInfoVOList){
-    	List<Long> conceptIds = addConceptInfoVOList.stream().filter(i->i.getConceptId()!=null).map(i->i.getConceptId()).collect(Collectors.toList());
-    	if(ListUtil.isNotEmpty(conceptIds)){
-    		QueryWrapper<LibraryInfo> libraryInfoQe = new QueryWrapper<>();
+    private void saveAddConceptInfoVOList(List<AddConceptInfoVO> addConceptInfoVOList) {
+        List<Long> conceptIds = addConceptInfoVOList.stream().filter(i -> i.getConceptId() != null).map(i -> i.getConceptId()).collect(Collectors.toList());
+        if (ListUtil.isNotEmpty(conceptIds)) {
+            QueryWrapper<LibraryInfo> libraryInfoQe = new QueryWrapper<>();
             libraryInfoQe.in("concept_id", conceptIds);
             libraryinfoFacade.remove(libraryInfoQe);
-    	}
-        
+        }
+
         List<LibraryInfo> saveLibraryInfoList = Lists.newArrayList();
-        addConceptInfoVOList.forEach(i->{
-        	saveLibraryInfoList.addAll(i.getLibraryInfoList());
+        addConceptInfoVOList.forEach(i -> {
+            saveLibraryInfoList.addAll(i.getLibraryInfoList());
         });
         libraryInfoService.saveBatch(saveLibraryInfoList);
-        
+
         List<Concept> saveOrUpdateConceptList = Lists.newArrayList();
-        addConceptInfoVOList.forEach(i->{
-        	i.getConcept().setLibId(i.getLibraryInfoList().get(0).getId());
-        	i.getConcept().setLibName(i.getLibraryInfoList().get(0).getName());
-        	saveOrUpdateConceptList.add(i.getConcept());
+        addConceptInfoVOList.forEach(i -> {
+            i.getConcept().setLibId(i.getLibraryInfoList().get(0).getId());
+            i.getConcept().setLibName(i.getLibraryInfoList().get(0).getName());
+            saveOrUpdateConceptList.add(i.getConcept());
         });
+        //删除标签缓存
+        List<Long> saveConceptIds = saveOrUpdateConceptList.stream().map(i -> i.getId()).filter(j -> j != null).distinct().collect(Collectors.toList());
+        this.cacheClearByConceptIds(saveConceptIds);
         conceptService.saveOrUpdateBatch(saveOrUpdateConceptList);
-        
+
         List<LibraryInfo> updateLibraryInfoList = Lists.newArrayList();
-        addConceptInfoVOList.forEach(i->{
-        	if(i.getConceptId()==null){
-        		i.getLibraryInfoList().forEach(j->{
-        			j.setConceptId(i.getConcept().getId());
-        		});
-        		updateLibraryInfoList.addAll(i.getLibraryInfoList());
-        	}
+        addConceptInfoVOList.forEach(i -> {
+            if (i.getConceptId() == null) {
+                i.getLibraryInfoList().forEach(j -> {
+                    j.setConceptId(i.getConcept().getId());
+                });
+                updateLibraryInfoList.addAll(i.getLibraryInfoList());
+            }
         });
-        if(ListUtil.isNotEmpty(updateLibraryInfoList)){
-        	libraryInfoService.updateBatchById(updateLibraryInfoList);
+        if (ListUtil.isNotEmpty(updateLibraryInfoList)) {
+            libraryInfoService.updateBatchById(updateLibraryInfoList);
         }
-        
+
         List<ConceptCommon> saveOrUpdateConceptCommonList = Lists.newArrayList();
-        Map<Long,ConceptCommon> conceptCommonMap = null;
-        if(ListUtil.isNotEmpty(conceptIds)){
-        	QueryWrapper<ConceptCommon> conceptCommonQe = new QueryWrapper<>();
+        Map<Long, ConceptCommon> conceptCommonMap = null;
+        if (ListUtil.isNotEmpty(conceptIds)) {
+            QueryWrapper<ConceptCommon> conceptCommonQe = new QueryWrapper<>();
             conceptCommonQe.in("concept_id", conceptIds);
-            conceptCommonMap = conceptCommonFacade.list(conceptCommonQe).stream().collect(Collectors.toMap(ConceptCommon::getConceptId, i->i));
+            conceptCommonMap = conceptCommonFacade.list(conceptCommonQe).stream().collect(Collectors.toMap(ConceptCommon::getConceptId, i -> i));
         }
-        for(AddConceptInfoVO i : addConceptInfoVOList){
-        	if(i.getConceptCommon()!=null){
-        		if(i.getConceptId()!=null&&conceptCommonMap!=null&&conceptCommonMap.containsKey(i.getConceptId())){
-            		i.getConceptCommon().setId(conceptCommonMap.get(i.getConceptId()).getId());
-            	}
-            	i.getConceptCommon().setConceptId(i.getConcept().getId());
-            	saveOrUpdateConceptCommonList.add(i.getConceptCommon());
-        	}
+        for (AddConceptInfoVO i : addConceptInfoVOList) {
+            if (i.getConceptCommon() != null) {
+                if (i.getConceptId() != null && conceptCommonMap != null && conceptCommonMap.containsKey(i.getConceptId())) {
+                    i.getConceptCommon().setId(conceptCommonMap.get(i.getConceptId()).getId());
+                }
+                i.getConceptCommon().setConceptId(i.getConcept().getId());
+                saveOrUpdateConceptCommonList.add(i.getConceptCommon());
+            }
         }
-        if(ListUtil.isNotEmpty(saveOrUpdateConceptCommonList)){
-        	conceptCommonService.saveOrUpdateBatch(saveOrUpdateConceptCommonList);
+        if (ListUtil.isNotEmpty(saveOrUpdateConceptCommonList)) {
+            conceptCommonService.saveOrUpdateBatch(saveOrUpdateConceptCommonList);
         }
     }
-    
+
     @SuppressWarnings("deprecation")
     private String getValue(Cell cell) {
         try {
@@ -1277,11 +1307,11 @@ public class ConceptFacade extends ConceptServiceImpl {
             }
             List<List<LibraryInfo>> listList = SqlExecuteUtil.divideList(list, 200);
             int i = 0;
-            for (List<LibraryInfo> libraryInfoList : listList){
+            for (List<LibraryInfo> libraryInfoList : listList) {
                 res = libraryInfoService.updateBatchById(libraryInfoList);
                 i++;
             }
-            System.out.println("批量更新拼音"+ i +"次!");
+            System.out.println("批量更新拼音" + i + "次!");
         }
         return res;
     }
@@ -1292,7 +1322,7 @@ public class ConceptFacade extends ConceptServiceImpl {
      * @param getConceptPacInfosVO
      * @return
      */
-    public List<ConceptBaseDTO> getConceptPacInfos(GetConceptPacInfosVO getConceptPacInfosVO){
+    public List<ConceptBaseDTO> getConceptPacInfos(GetConceptPacInfosVO getConceptPacInfosVO) {
         QueryWrapper<Concept> conceptQueryWrapper = new QueryWrapper<>();
         conceptQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("lib_type", LexiconTypeEnum.PACS_ITEMS.getKey())
@@ -1309,4 +1339,105 @@ public class ConceptFacade extends ConceptServiceImpl {
         }
         return res;
     }
-}
+
+    /**
+     * 筛选符合类型的概念id
+     *
+     * @param libTypeId
+     * @param sourceConceptIds
+     * @return
+     */
+    public List<Long> getCompatibleTypeConceptIds(Long libTypeId, List<Long> sourceConceptIds) {
+        if (libTypeId == null || ListUtil.isEmpty(sourceConceptIds)) {
+            return null;
+        }
+        QueryWrapper<Concept> conceptQe = new QueryWrapper<>();
+        conceptQe.in("id", sourceConceptIds);
+        conceptQe.eq("lib_type", libTypeId);
+        return list(conceptQe).stream().map(i -> i.getId()).collect(Collectors.toList());
+    }
+
+
+    /**
+     * 删除缓存(化验相关)
+     *
+     * @param conceptId
+     * @return
+     */
+    public Boolean cacheClearByConceptId(Long conceptId) {
+        Concept concept = this.getById(conceptId);
+        List<String> names = Lists.newArrayList();
+        names.add(concept.getLibName());
+        List<String> mealNames = Lists.newArrayList();
+        if (concept.getLibType().equals(Long.valueOf(LexiconTypeEnum.LIS_TABLES.getKey()))) {
+            mealNames = lisMappingFacade.getMealNameByUniqueNames(names);
+        } else if (concept.getLibType().equals(Long.valueOf(LexiconTypeEnum.LIS_PACKAGE.getKey()))) {
+            mealNames.add(concept.getLibName());
+        } else if (concept.getLibType().equals(Long.valueOf(LexiconTypeEnum.LIS_DETAILS.getKey()))) {
+            mealNames = lisMappingFacade.getMealNameByItemNames(names);
+        } else {
+            return true;
+        }
+        if (ListUtil.isNotEmpty(mealNames)) {
+            KLQuestionVO klQuestionVO = new KLQuestionVO();
+            klQuestionVO.setTagNames(mealNames);
+            klQuestionVO.setNames(mealNames);
+            klQuestionVO.setType(5);
+            List<Integer> tagTypes = Lists.newArrayList();
+            tagTypes.add(7);
+            klQuestionVO.setTagType(tagTypes);
+            RespDTO<List<QuestionInfo>> respDTO = icssManServiceClient.indexForkl(klQuestionVO);
+            if (RespDTOUtil.respIsOK(respDTO)) {
+                List<QuestionInfo> questionInfoList = respDTO.data;
+                if (ListUtil.isNotEmpty(questionInfoList)) {
+                    IdListVO idListVO = new IdListVO();
+                    List<Long> idList = questionInfoList.stream().map(i -> i.getId()).collect(Collectors.toList());
+                    idListVO.setIdList(idList);
+                    RespDTO<Boolean> cacheRespDTO = icssManServiceClient.clearCache(idListVO);
+                }
+            }
+        }
+        return true;
+    }
+
+    /**
+     * 批量删除化验相关标签缓存
+     *
+     * @param conceptIds
+     * @return
+     */
+    public Boolean cacheClearByConceptIds(List<Long> conceptIds) {
+        List<Concept> concepts = this.getListByIds(conceptIds);
+        List<String> mealNames = Lists.newArrayList();
+        List<Concept> mealConcepts = concepts.stream().filter(i -> i.getLibType().equals(Long.valueOf(LexiconTypeEnum.LIS_PACKAGE.getKey()))).collect(Collectors.toList());
+        mealNames.addAll(mealConcepts.stream().map(i -> i.getLibName()).filter(j -> j != null).distinct().collect(Collectors.toList()));
+        List<Concept> itemConcepts = concepts.stream().filter(i -> i.getLibType().equals(Long.valueOf(LexiconTypeEnum.LIS_DETAILS.getKey()))).collect(Collectors.toList());
+        List<String> itemNames = itemConcepts.stream().map(i -> i.getLibName()).filter(j -> j != null).distinct().collect(Collectors.toList());
+        mealNames.addAll(lisMappingFacade.getMealNameByItemNames(itemNames));
+        List<Concept> uniqueConcepts = concepts.stream().filter(i -> i.getLibType().equals(Long.valueOf(LexiconTypeEnum.LIS_TABLES.getKey()))).collect(Collectors.toList());
+        List<String> uniqueNames = uniqueConcepts.stream().map(i -> i.getLibName()).filter(j -> j != null).distinct().collect(Collectors.toList());
+        mealNames.addAll(lisMappingFacade.getMealNameByUniqueNames(uniqueNames));
+        mealNames = mealNames.stream().filter(i -> StringUtil.isNotBlank(i)).distinct().collect(Collectors.toList());
+
+        if (ListUtil.isNotEmpty(mealNames)) {
+            KLQuestionVO klQuestionVO = new KLQuestionVO();
+            klQuestionVO.setTagNames(mealNames);
+            klQuestionVO.setNames(mealNames);
+            klQuestionVO.setType(5);
+            List<Integer> tagTypes = Lists.newArrayList();
+            tagTypes.add(7);
+            klQuestionVO.setTagType(tagTypes);
+            RespDTO<List<QuestionInfo>> respDTO = icssManServiceClient.indexForkl(klQuestionVO);
+            if (RespDTOUtil.respIsOK(respDTO)) {
+                List<QuestionInfo> questionInfoList = respDTO.data;
+                if (ListUtil.isNotEmpty(questionInfoList)) {
+                    IdListVO idListVO = new IdListVO();
+                    List<Long> idList = questionInfoList.stream().map(i -> i.getId()).collect(Collectors.toList());
+                    idListVO.setIdList(idList);
+                    RespDTO<Boolean> cacheRespDTO = icssManServiceClient.clearCache(idListVO);
+                }
+            }
+        }
+        return true;
+    }
+}

+ 66 - 8
knowledgeman-service/src/main/java/com/diagbot/facade/LisMappingFacade.java

@@ -9,6 +9,7 @@ import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.Concept;
 import com.diagbot.entity.LisMapping;
 import com.diagbot.entity.QuestionInfo;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.LexiconTypeEnum;
 import com.diagbot.exception.CommonErrorCode;
@@ -20,15 +21,17 @@ import com.diagbot.util.RespDTOUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.util.UserUtils;
 import com.diagbot.vo.GetUniqueNameVO;
+import com.diagbot.vo.IdListVO;
 import com.diagbot.vo.IdVO;
+import com.diagbot.vo.KLQuestionVO;
 import com.diagbot.vo.LisMappingPageVO;
 import com.diagbot.vo.LisMappingVO;
-import com.diagbot.vo.QuestionIndexVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
@@ -124,18 +127,23 @@ public class LisMappingFacade extends LisMappingServiceImpl {
         Boolean state = this.saveOrUpdate(lisMapping);
 
         //清除缓存
-        QuestionIndexVO questionIndexVO = new QuestionIndexVO();
-        questionIndexVO.setName(mealConcept.getLibName());
-        questionIndexVO.setType(5);
+        KLQuestionVO klQuestionVO = new KLQuestionVO();
+        List<String> mealNames = Lists.newArrayList();
+        mealNames.add(mealConcept.getLibName());
+        klQuestionVO.setNames(mealNames);
+        klQuestionVO.setTagNames(mealNames);
+        klQuestionVO.setType(5);
         List<Integer> tagTypes = Lists.newArrayList();
         tagTypes.add(7);
-        questionIndexVO.setTagType(tagTypes);
-        RespDTO<List<QuestionInfo>> respDTO = icssManServiceClient.index(questionIndexVO);
+        klQuestionVO.setTagType(tagTypes);
+        RespDTO<List<QuestionInfo>> respDTO = icssManServiceClient.indexForkl(klQuestionVO);
         if (RespDTOUtil.respIsOK(respDTO)) {
             List<QuestionInfo> questionInfoList = respDTO.data;
             if (ListUtil.isNotEmpty(questionInfoList)) {
-                IdVO idVO = new IdVO();
-                idVO.setId(questionInfoList.get(0).getId());
+                IdListVO idListVO = new IdListVO();
+                List<Long> idList = questionInfoList.stream().map(i -> i.getId()).collect(Collectors.toList());
+                idListVO.setIdList(idList);
+                RespDTO<Boolean> cacheRespDTO = icssManServiceClient.clearCache(idListVO);
             }
         }
         return state;
@@ -181,6 +189,28 @@ public class LisMappingFacade extends LisMappingServiceImpl {
         lisMapping.setModifier(userId);
         lisMapping.setGmtModified(now);
         Boolean state = this.updateById(lisMapping);
+
+        //清除缓存
+        Concept mealConcept = conceptFacade.getById(lisMapping.getMealId());
+        KLQuestionVO klQuestionVO = new KLQuestionVO();
+        List<String> mealNames = Lists.newArrayList();
+        mealNames.add(mealConcept.getLibName());
+        klQuestionVO.setNames(mealNames);
+        klQuestionVO.setTagNames(mealNames);
+        klQuestionVO.setType(5);
+        List<Integer> tagTypes = Lists.newArrayList();
+        tagTypes.add(7);
+        klQuestionVO.setTagType(tagTypes);
+        RespDTO<List<QuestionInfo>> respDTO = icssManServiceClient.indexForkl(klQuestionVO);
+        if (RespDTOUtil.respIsOK(respDTO)) {
+            List<QuestionInfo> questionInfoList = respDTO.data;
+            if (ListUtil.isNotEmpty(questionInfoList)) {
+                IdListVO idListVO = new IdListVO();
+                List<Long> idList = questionInfoList.stream().map(i -> i.getId()).collect(Collectors.toList());
+                idListVO.setIdList(idList);
+                RespDTO<Boolean> cacheRespDTO = icssManServiceClient.clearCache(idListVO);
+            }
+        }
         return state;
     }
 
@@ -229,4 +259,32 @@ public class LisMappingFacade extends LisMappingServiceImpl {
         }
         return uniqueName;
     }
+
+    /**
+     * 获取化验套餐
+     *
+     * @param uniqueNames
+     * @return
+     */
+    public List<String> getMealNameByUniqueNames(List<String> uniqueNames) {
+        Map<String, Object> paramMap = new HashMap<>();
+        paramMap.put("uniqueNames", uniqueNames);
+        List<LisMappingWrapper> lisMappingWrapperList = this.getLisMappingByName(paramMap);
+        List<String> mealNames = lisMappingWrapperList.stream().map(i -> i.getMealName()).filter(j -> j != null).distinct().collect(Collectors.toList());
+        return mealNames;
+    }
+
+    /**
+     * 获取化验套餐
+     *
+     * @param itemNames
+     * @return
+     */
+    public List<String> getMealNameByItemNames(List<String> itemNames) {
+        Map<String, Object> paramMap = new HashMap<>();
+        paramMap.put("itemNames", itemNames);
+        List<LisMappingWrapper> lisMappingWrapperList = this.getLisMappingByName(paramMap);
+        List<String> mealNames = lisMappingWrapperList.stream().map(i -> i.getMealName()).filter(j -> j != null).distinct().collect(Collectors.toList());
+        return mealNames;
+    }
 }

+ 13 - 36
knowledgeman-service/src/main/java/com/diagbot/facade/MultContactFacade.java

@@ -1,28 +1,21 @@
 package com.diagbot.facade;
 
-import java.util.Arrays;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 import java.util.stream.Collectors;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.client.UserServiceClient;
-import com.diagbot.dto.MultContactListDTO;
+import com.diagbot.dto.OnlyByRootListDTO;
 import com.diagbot.dto.RespDTO;
-import com.diagbot.entity.Concept;
-import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.LexiconTypeEnum;
 import com.diagbot.service.impl.RelationServiceImpl;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.RespDTOUtil;
-import com.diagbot.util.StringUtil;
-import com.diagbot.vo.MultContactListVO;
+import com.diagbot.vo.OnlyByRootListVO;
 
 /**
  * @Description: 医学术语关联业务层
@@ -34,45 +27,29 @@ public class MultContactFacade extends RelationServiceImpl {
 
     @Autowired
     private UserServiceClient userServiceClient;
-    @Autowired
-    private ConceptFacade conceptFacade;
 
     /**
      * 医学术语多层关联维护-列表
      * @param multContactListVO
      * @return
      */
-    public IPage<MultContactListDTO> multContactList(MultContactListVO multContactListVO) {
-    	if(StringUtil.isNotBlank(multContactListVO.getName())||StringUtil.isNotBlank(multContactListVO.getType())){
-    		QueryWrapper<Concept> conceptQe = new QueryWrapper<>();
-    		conceptQe.eq("is_deleted", IsDeleteEnum.N.getKey());
-    		conceptQe.like(StringUtil.isNotBlank(multContactListVO.getName()),"lib_name", multContactListVO.getName());
-        	conceptQe.eq(StringUtil.isNotBlank(multContactListVO.getType()),"lib_type", LexiconTypeEnum.getKey(multContactListVO.getType()));
-        	multContactListVO.setRootNodeConceptIds(conceptFacade.list(conceptQe).stream().map(i->i.getId()).collect(Collectors.toList()));
-    	}
+    public IPage<OnlyByRootListDTO> multContactList(OnlyByRootListVO onlyByRootListVO) {
+    	IPage<OnlyByRootListDTO> ipage = this.baseMapper.onlyByRootList(onlyByRootListVO);
     	
-        IPage<MultContactListDTO> multContactListDTOPage = this.baseMapper.multContactList(multContactListVO);
-        
-        if(ListUtil.isNotEmpty(multContactListDTOPage.getRecords())){
-        	List<String> userIds = multContactListDTOPage.getRecords().stream().map(i -> i.getOperName()).distinct().collect(Collectors.toList());
+    	if(ListUtil.isNotEmpty(ipage.getRecords())){
+    		List<String> userIds = ipage.getRecords().stream().map(i -> i.getOperName()).distinct().collect(Collectors.toList());
         	RespDTO<Map<String, String>> respDTO = userServiceClient.getUserInfoByIds(userIds);
         	RespDTOUtil.respNGDealCover(respDTO, "获取用户信息失败");
         	
-        	Set<Long> otherIds = new HashSet<>();
-        	otherIds.addAll(Arrays.asList(multContactListDTOPage.getRecords().stream().map(i->i.getOtherIds()).collect(Collectors.joining(",")).split(",")).stream().map(i->Long.parseLong(i)).collect(Collectors.toList()));
-        	otherIds.addAll(multContactListDTOPage.getRecords().stream().map(i->i.getConceptId()).collect(Collectors.toList()));
-        	Map<Long,Concept> conceptMap = conceptFacade.listByIds(otherIds).stream().collect(Collectors.toMap(Concept::getId, i->i));
-        	
-        	multContactListDTOPage.getRecords().forEach(i->{
+        	ipage.getRecords().forEach(i->{
         		i.setOperName(respDTO.data.get(i.getOperName()));
-        		i.setLibName(conceptMap.get(i.getConceptId()).getLibName());
-        		i.setLibType(LexiconTypeEnum.getName(conceptMap.get(i.getConceptId()).getLibType().intValue()));
-        		i.setLibNameType(i.getLibName()+"("+i.getLibType()+")");
-        		i.setOtherNames(Arrays.asList(i.getOtherIds().split(",")).stream().map(k->conceptMap.get(Long.parseLong(k)).getLibName()).collect(Collectors.joining(",")));
+        		i.setLibType(LexiconTypeEnum.getName(i.getLibTypeId().intValue()));
+                i.setLibNameType(i.getLibName()+"("+i.getLibType()+")");
+        		
         	});
-        }
-        
-        return multContactListDTOPage;
+    	}
+
+    	return ipage;
     }
 
 }

+ 92 - 43
knowledgeman-service/src/main/java/com/diagbot/facade/RelationContactFacade.java

@@ -13,14 +13,15 @@ import org.springframework.stereotype.Component;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.client.UserServiceClient;
-import com.diagbot.dto.RelationContactListDTO;
 import com.diagbot.dto.RelationNodeDTO;
 import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.SingleRelationListDTO;
 import com.diagbot.entity.Concept;
 import com.diagbot.entity.Relation;
 import com.diagbot.entity.RelationOrder;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.LexiconTypeEnum;
+import com.diagbot.enums.RelationModelTypeEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.service.RelationService;
@@ -30,10 +31,13 @@ import com.diagbot.util.DateUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.RespDTOUtil;
 import com.diagbot.util.UserUtils;
+import com.diagbot.vo.DeleteRelationContactVO;
 import com.diagbot.vo.RelationContactDetailVO;
-import com.diagbot.vo.RelationContactListVO;
 import com.diagbot.vo.RelationNodeVO;
 import com.diagbot.vo.RemoveRelationContactVO;
+import com.diagbot.vo.SingleRelationListVO;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
 
 /**
  * @Description: 医学术语关联业务层
@@ -61,14 +65,21 @@ public class RelationContactFacade extends RelationServiceImpl {
      * @param relationContactListVO
      * @return
      */
-    public IPage<RelationContactListDTO> relationContactList(RelationContactListVO relationContactListVO) {
-    	IPage<RelationContactListDTO> ipage = this.baseMapper.relationContactList(relationContactListVO);
-        if (ipage.getRecords().size() > 0) {
+    public IPage<SingleRelationListDTO> relationContactList(SingleRelationListVO singleRelationListVO) {
+    	String[] relationModelTypeArry = singleRelationListVO.getRelationModelTypeCode().split("101");
+    	singleRelationListVO.setStartTypeId(Long.parseLong(relationModelTypeArry[0]));
+    	singleRelationListVO.setEndTypeId(Long.parseLong(relationModelTypeArry[1]));
+    	
+    	IPage<SingleRelationListDTO> ipage = this.baseMapper.singleRelationList(singleRelationListVO);
+        if (ListUtil.isNotEmpty(ipage.getRecords())) {
             List<String> ids = ipage.getRecords().stream().map(i -> i.getOperName()).distinct().collect(Collectors.toList());
             RespDTO<Map<String, String>> respDTO = userServiceClient.getUserInfoByIds(ids);
             RespDTOUtil.respNGDealCover(respDTO, "获取用户信息失败");
             ipage.getRecords().forEach(i -> {
                 i.setOperName(respDTO.data.get(i.getOperName()));
+                i.setLibType(LexiconTypeEnum.getName(i.getLibTypeId().intValue()));
+                i.setLibNameType(i.getLibName()+"("+i.getLibType()+")");
+                i.setRelationModelTypeName(RelationModelTypeEnum.getName(Integer.parseInt(i.getRelationModelTypeCode())));
             });
         }
         return ipage;
@@ -83,12 +94,14 @@ public class RelationContactFacade extends RelationServiceImpl {
 		if(relationNodeVO.getConceptId()==null){
 			throw new CommonException(CommonErrorCode.RPC_ERROR,"conceptId必填!");
 		}
-		if(relationNodeVO.getNodeList()==null||relationNodeVO.getNodeList().size()==0){
+		if(ListUtil.isEmpty(relationNodeVO.getNodeList())){
 			throw new CommonException(CommonErrorCode.RPC_ERROR,"nodeList不能为空!");
 		}
 		
-		List<Long> relationIdList = repairRelationDataForDelBeforeAdd(relationNodeVO.getConceptId(), relationNodeVO.getSonRelationId());
+		List<Long> relationIdList = repairRelationDataForDelBeforeAdd(relationNodeVO.getConceptId(),relationNodeVO);
 		if(ListUtil.isNotEmpty(relationIdList)){
+			removeByIds(relationIdList);
+			
 			QueryWrapper<RelationOrder> relationOrderQe = new QueryWrapper<>();
 			relationOrderQe.in("t_relation_id", relationIdList);
 			relationOrderFacade.remove(relationOrderQe);
@@ -97,7 +110,7 @@ public class RelationContactFacade extends RelationServiceImpl {
 		List<List<Relation>> relationGroupList = repairRelationDataForAdd(relationNodeVO);
 		String currentUser = UserUtils.getCurrentPrincipleID();
         Date now = DateUtil.now();
-        List<Relation> relationList = new ArrayList<>();
+        List<Relation> relationList = Lists.newArrayList();
         relationGroupList.forEach(i->{
         	i.forEach(j->{
         		j.setCreator(currentUser);
@@ -110,7 +123,7 @@ public class RelationContactFacade extends RelationServiceImpl {
         relationService.saveOrUpdateBatch(relationList);
         
         if(relationNodeVO.getIsOrderBy()==1){
-        	List<RelationOrder> relationOrderList = new ArrayList<>();
+        	List<RelationOrder> relationOrderList = Lists.newArrayList();
         	relationGroupList.forEach(i->{
         		int orderNo = 0;
             	for(Relation j : i){
@@ -133,30 +146,40 @@ public class RelationContactFacade extends RelationServiceImpl {
 	
 	/**
 	 * 处理关系节点-添加或者编辑前先删除掉
-	 * @param conceptId
-	 * @param relationId
+	 * @param conceptId 当前概念id
+	 * @param relationNodeVO
 	 * @return
 	 */
-	private List<Long> repairRelationDataForDelBeforeAdd(Long conceptId,Long relationId){
-		List<Long> relationIdList = new ArrayList<>();
+	private List<Long> repairRelationDataForDelBeforeAdd(Long conceptId,RelationNodeVO relationNodeVO){
+		List<Long> relationIdList = Lists.newArrayList();
 		
 		QueryWrapper<Relation> relationQe = new QueryWrapper<>();
 		relationQe.eq("start_id", conceptId);
-		relationQe.eq(relationId!=null,"relation_id", relationId);
-		List<Relation> relationList = list(relationQe);
-		
-		if(relationList.size()==0){
-			return relationIdList;
+		if(relationNodeVO!=null&&relationNodeVO.getSonRelationId()!=null){
+			relationQe.eq("relation_id", relationNodeVO.getSonRelationId());
 		}
+		List<Relation> relationList = list(relationQe);
 		
-		relationIdList.addAll(relationList.stream().map(i->i.getId()).collect(Collectors.toList()));
-		
-		relationList.forEach(i->{
-			relationIdList.addAll(repairRelationDataForDelBeforeAdd(i.getEndId(),relationId));
-		});
-		
-		if(!remove(relationQe)){
-			throw new CommonException(CommonErrorCode.SERVER_IS_ERROR);
+		if(ListUtil.isNotEmpty(relationList)){
+			if(relationNodeVO!=null&&relationNodeVO.getSonTypeId()!=null){
+				List<Long> conceptIdList = conceptFacade.getCompatibleTypeConceptIds(relationNodeVO.getSonTypeId(), relationList.stream().map(i->i.getEndId()).collect(Collectors.toList()));
+	        	if(conceptIdList!=null){
+	        		relationList = relationList.stream().filter(i->conceptIdList.contains(i.getEndId())).collect(Collectors.toList());
+	        	}
+			}
+			
+			if(ListUtil.isNotEmpty(relationList)){
+				relationIdList.addAll(relationList.stream().map(i->i.getId()).collect(Collectors.toList()));
+				
+				Map<Long,RelationNodeVO> conceptIdRnMap = Maps.newHashMap();
+				if(relationNodeVO!=null&&ListUtil.isNotEmpty(relationNodeVO.getNodeList())){
+					conceptIdRnMap = relationNodeVO.getNodeList().stream().collect(Collectors.toMap(RelationNodeVO::getConceptId, i->i));
+				}
+				
+				for(Relation i : relationList){
+					relationIdList.addAll(repairRelationDataForDelBeforeAdd(i.getEndId(),conceptIdRnMap.get(i.getEndId())));
+				}
+			}
 		}
 		
 		return relationIdList;
@@ -168,10 +191,10 @@ public class RelationContactFacade extends RelationServiceImpl {
 	 * @return
 	 */
 	private List<List<Relation>> repairRelationDataForAdd(RelationNodeVO relationNodeVO){
-		List<List<Relation>> retList = new ArrayList<>();
+		List<List<Relation>> retList = Lists.newArrayList();
 		
-		if(relationNodeVO.getNodeList()!=null&&relationNodeVO.getNodeList().size()>0){
-			List<Relation> relationList = new ArrayList<>();
+		if(ListUtil.isNotEmpty(relationNodeVO.getNodeList())){
+			List<Relation> relationList = Lists.newArrayList();
 			relationNodeVO.getNodeList().forEach(i->{
 				Relation relation = new Relation();
 				relation.setStartId(relationNodeVO.getConceptId());
@@ -179,7 +202,7 @@ public class RelationContactFacade extends RelationServiceImpl {
 				relation.setRelationId(i.getRelationId());
 				relationList.add(relation);
 				
-				if(i.getNodeList()!=null&&i.getNodeList().size()>0){
+				if(ListUtil.isNotEmpty(i.getNodeList())){
 					retList.addAll(repairRelationDataForAdd(i));
 				}
 			});
@@ -205,7 +228,7 @@ public class RelationContactFacade extends RelationServiceImpl {
 		relationNodeDTO.setConceptNameType(concept.getLibName()+"("+LexiconTypeEnum.getName(concept.getLibType().intValue())+")");
 		relationNodeDTO.setIsDeletedConcept(concept.getIsDeleted());
 		
-		relationNodeDTO.setNodeList(repairRelationDataForQuery(relationContactDetailVO.getConceptId(), relationContactDetailVO.getRelationId(),null,concept.getIsDeleted()));
+		relationNodeDTO.setNodeList(repairRelationDataForQuery(relationContactDetailVO.getConceptId(),relationContactDetailVO.getRelationIds(),relationContactDetailVO.getTypeIds(),null,concept.getIsDeleted()));
 		
 		return relationNodeDTO;
 	}
@@ -213,18 +236,29 @@ public class RelationContactFacade extends RelationServiceImpl {
 	/**
 	 * 处理关系节点-查询事件
 	 * @param conceptId
-	 * @param relationId
+	 * @param relationIds
+	 * @param typeIds
 	 * @param hookConceptIds
 	 * @param isDeletedParent
 	 * @return
 	 */
-	private List<RelationNodeDTO> repairRelationDataForQuery(Long conceptId,Long relationId,List<Long> hookConceptIds,String isDeletedParent){
+	private List<RelationNodeDTO> repairRelationDataForQuery(Long conceptId,List<Long> relationIds,List<Long> typeIds,List<Long> hookConceptIds,String isDeletedParent){
 		if(hookConceptIds==null){
 			hookConceptIds = new ArrayList<>();
 			hookConceptIds.add(conceptId);
 		}
 		
-		List<RelationNodeDTO> relationNodeDTOList = this.baseMapper.getRelationNodeDTOs(conceptId,relationId);
+		Long relationId = null,endTypeId = null;
+		if(ListUtil.isNotEmpty(relationIds)){
+			relationId = relationIds.remove(0);
+		}
+		if(relationId==null){
+			relationId = -999999l;
+		}
+		if(ListUtil.isNotEmpty(typeIds)){
+			endTypeId = typeIds.remove(0);
+		}
+		List<RelationNodeDTO> relationNodeDTOList = this.baseMapper.getRelationNodeDTOs(conceptId,relationId,endTypeId);
 		
 		for(RelationNodeDTO i : relationNodeDTOList){
 			i.setConceptTypeName(LexiconTypeEnum.getName(i.getConceptTypeId().intValue()));
@@ -237,7 +271,7 @@ public class RelationContactFacade extends RelationServiceImpl {
 				List<Long> hookConceptIds_ = new ArrayList<>();
 				hookConceptIds_.addAll(hookConceptIds);
 				hookConceptIds_.add(i.getConceptId());
-				i.setNodeList(repairRelationDataForQuery(i.getConceptId(), relationId,hookConceptIds_,i.getIsDeletedConcept()));
+				i.setNodeList(repairRelationDataForQuery(i.getConceptId(),Lists.newArrayList(relationIds),Lists.newArrayList(typeIds),hookConceptIds_,i.getIsDeletedConcept()));
 			}
 		}
 		
@@ -306,8 +340,8 @@ public class RelationContactFacade extends RelationServiceImpl {
 	 * @param removeRelationContactVO
 	 * @return
 	 */
-	public Boolean deleteRelationContact(RemoveRelationContactVO removeRelationContactVO){
-		repairRelationDataForDelete(removeRelationContactVO.getConceptId(), removeRelationContactVO.getRelationId());
+	public Boolean deleteRelationContact(DeleteRelationContactVO deleteRelationContactVO){
+		repairRelationDataForDelete(deleteRelationContactVO.getConceptId(), deleteRelationContactVO.getRelationIds(),deleteRelationContactVO.getTypeIds());
 		return true;
 	}
 	
@@ -316,24 +350,39 @@ public class RelationContactFacade extends RelationServiceImpl {
 	 * @param conceptId
 	 * @param relationId
 	 */
-	private void repairRelationDataForDelete(Long conceptId,Long relationId){
+	private void repairRelationDataForDelete(Long conceptId,List<Long> relationIds,List<Long> typeIds){
+		Long relationId = null,endTypeId = null;
+		if(ListUtil.isNotEmpty(relationIds)){
+			relationId = relationIds.remove(0);
+		}
+		if(ListUtil.isNotEmpty(typeIds)){
+			endTypeId = typeIds.remove(0);
+		}
+		
 		QueryWrapper<Relation> relationQe = new QueryWrapper<>();
 		relationQe.eq("start_id", conceptId);
 		relationQe.eq(relationId!=null,"relation_id", relationId);
 		List<Relation> relationList = list(relationQe);
 		
-		if(relationList.size()==0){
+		if(endTypeId!=null&&ListUtil.isNotEmpty(relationList)){
+			List<Long> conceptIdList = conceptFacade.getCompatibleTypeConceptIds(endTypeId,relationList.stream().map(i->i.getEndId()).collect(Collectors.toList()));
+        	relationList = relationList.stream().filter(i->conceptIdList.contains(i.getEndId())).collect(Collectors.toList());
+		}
+		
+		if(ListUtil.isEmpty(relationList)){
 			return;
 		}
 		
+		List<Long> removeRelationIds = relationList.stream().map(i->i.getId()).collect(Collectors.toList());
+		
 		QueryWrapper<RelationOrder> relationOrderQe = new QueryWrapper<>();
-		relationOrderQe.in("t_relation_id", relationList.stream().map(i->i.getId()).collect(Collectors.toList()));
-		if(!remove(relationQe)||!relationOrderFacade.remove(relationOrderQe)){
+		relationOrderQe.in("t_relation_id", removeRelationIds);
+		if(!removeByIds(removeRelationIds)||!relationOrderFacade.remove(relationOrderQe)){
 			throw new CommonException(CommonErrorCode.SERVER_IS_ERROR);
 		}
 		
-		relationList.forEach(i->{
-			repairRelationDataForDelete(i.getEndId(), relationId);
+		removeRelationIds.forEach(i->{
+			repairRelationDataForDelete(i, Lists.newArrayList(relationIds), Lists.newArrayList(typeIds));
 		});
 	}
 

+ 275 - 223
icssman-service/src/main/java/com/diagbot/facade/VersionDetailFacade.java

@@ -1,223 +1,275 @@
-package com.diagbot.facade;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.diagbot.client.UserServiceClient;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.VersionDetailDTO;
-import com.diagbot.entity.VersionDetail;
-import com.diagbot.entity.VersionInfo;
-import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.enums.StatusEnum;
-import com.diagbot.exception.CommonErrorCode;
-import com.diagbot.exception.CommonException;
-import com.diagbot.service.impl.VersionDetailServiceImpl;
-import com.diagbot.service.impl.VersionInfoServiceImpl;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.UserUtils;
-import com.diagbot.vo.VersionDetailIdVO;
-import com.diagbot.vo.VersionDetailVO;
-import com.diagbot.vo.VersionInfoAndDetailIdVO;
-
-/**
- * 版本详情
- *
- * @author wangfeng
- * @Description: TODO
- * @date 2018年11月21日 上午11:38:40
- */
-@Component
-public class VersionDetailFacade extends VersionDetailServiceImpl {
-
-    @Autowired
-    VersionDetailServiceImpl versionDetailServiceImpl;
-    @Autowired
-    UserServiceClient userServiceClient;
-    @Autowired
-    VersionInfoServiceImpl versionInfoServiceImpl;
-
-    /**
-     * 根据版本id查询版本详情
-     *
-     * @param id
-     * @return
-     */
-    public List<VersionDetailDTO> getById(Long id) {
-        QueryWrapper<VersionDetail> versionDetailQuery = new QueryWrapper<>();
-
-        versionDetailQuery.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("STATUS", StatusEnum.Enable.getKey())
-                .eq("version_id", id).orderByAsc("order_no");
-
-        VersionDetail versionDetail = new VersionDetail();
-        versionDetail.setVersionId(id);
-        List<VersionDetail> datas = list(versionDetailQuery);
-        // System.out.println("List<VersionDetail>==="+datas.toString());
-        List<VersionDetailDTO> dataNew = new ArrayList<VersionDetailDTO>();
-        // 过滤字段
-        for (VersionDetail versionData : datas) {
-            VersionDetailDTO versionDTO = new VersionDetailDTO();
-            versionDTO.setId(versionData.getId());
-            //versionDTO.setCreator(versionData.getCreator());
-            versionDTO.setDescription(versionData.getDescription());
-            versionDTO.setGmtCreate(versionData.getGmtCreate());
-            versionDTO.setOrderNo(versionData.getOrderNo());
-            versionDTO.setRemark(versionData.getRemark());
-            versionDTO.setStatus(versionData.getStatus());
-            versionDTO.setTitle(versionData.getTitle());
-            versionDTO.setVersionId(versionData.getVersionId());
-            dataNew.add(versionDTO);
-        }
-        return dataNew;
-
-    }
-
-    /**
-     * 根据版本ids查询版本详情
-     *
-     * @param ids
-     * @return
-     */
-    public List<VersionDetailDTO> getByIds(List<Long> ids) {
-        QueryWrapper<VersionDetail> versionDetailQuery = new QueryWrapper<>();
-
-        versionDetailQuery.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("STATUS", StatusEnum.Enable.getKey())
-                .in("version_id", ids).orderByAsc("order_no");
-
-        List<VersionDetail> datas = list(versionDetailQuery);
-        List<VersionDetailDTO> dataNew = new ArrayList<VersionDetailDTO>();
-        List<String> modifierid = new ArrayList<>();
-        modifierid = datas.stream().map(ac -> ac.getModifier()).collect(Collectors.toList());
-        Map<String, String> userNames = new HashMap<>();
-        if (modifierid.size() > 0) {
-            RespDTO<Map<String, String>> userNamesDTO = userServiceClient.getUserInfoByIds(modifierid);
-            if (userNamesDTO == null || !CommonErrorCode.OK.getCode().equals(userNamesDTO.code)) {
-                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
-                        "获取所有用户信息失败");
-            }
-            userNames = userNamesDTO.data;
-        }
-		
-		// 过滤字段
-		for (VersionDetail versionData : datas) {
-			VersionDetailDTO versionDTO = new VersionDetailDTO();
-			versionDTO.setId(versionData.getId());
-			//versionDTO.setCreator(versionData.getCreator());
-			versionDTO.setModifierid(userNames.get(versionData.getModifier()));
-			versionDTO.setDescription(versionData.getDescription());
-			versionDTO.setGmtCreate(versionData.getGmtCreate());
-			versionDTO.setOrderNo(versionData.getOrderNo());
-			versionDTO.setRemark(versionData.getRemark());
-			versionDTO.setStatus(versionData.getStatus());
-			versionDTO.setTitle(versionData.getTitle());
-			versionDTO.setVersionId(versionData.getVersionId());
-			dataNew.add(versionDTO);
-		}
-        return dataNew;
-
-    }
-
-    /**
-     * 更新接口
-     *
-     * @param versionDetailVO
-     * @return
-     */
-    public boolean updateVersionDetail(VersionDetailVO versionDetailVO) {
-        // 1.先判断数据是否存在有效
-    	checkExist(versionDetailVO.getDetailId());
-        // 2.修改版本详情信息
-        VersionDetail versionDetail = new VersionDetail();
-
-        versionDetail.setGmtModified(DateUtil.now());// 修改时间
-        versionDetail.setModifier(UserUtils.getCurrentPrincipleID());
-        versionDetail.setTitle(versionDetailVO.getTitle());
-        versionDetail.setOrderNo(versionDetailVO.getOrderNo());
-        versionDetail.setStatus(versionDetailVO.getStatus());
-        versionDetail.setId(versionDetailVO.getDetailId());
-        versionDetail.setDescription(versionDetailVO.getDescription());
-        versionDetail.setRemark(versionDetailVO.getRemark());
-        boolean res = updateById(versionDetail);
-        if (!res) {
-            throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL);
-        }
-
-        return res;
-    }
-
-    /**
-     * 删除接口
-     *
-     * @param versionDetailIdVO
-     * @return
-     */
-    public boolean cancelVersionDetail(VersionDetailIdVO versionDetailIdVO) {
-    	 // 1.先判断数据是否存在有效
-    	checkExist(versionDetailIdVO.getId());
-        UpdateWrapper<VersionDetail> versionDetailNew = new UpdateWrapper<>();
-        versionDetailNew.in("id", versionDetailIdVO.getId()).eq("is_deleted", IsDeleteEnum.N.getKey()).set("is_deleted",
-                IsDeleteEnum.Y.getKey()).set("modifier", UserUtils.getCurrentPrincipleID()).set("gmt_modified", DateUtil.now());
-        return update(new VersionDetail(), versionDetailNew);
-    }
-
-    /**
-     * 增加明细接口
-     *
-     * @param versionDetailIdVO
-     * @return
-     */
-    public boolean addVersionDetail(VersionInfoAndDetailIdVO versionInfoAndDetailIdVO) {
-
-    	//1.增加明细前先判断主版本号的id是否有效
-        QueryWrapper<VersionInfo> VersionInfoFand = new QueryWrapper<>();
-        VersionInfoFand.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("id", versionInfoAndDetailIdVO.getVersionInfoId());
-        int sum = versionInfoServiceImpl.count(VersionInfoFand);
-        if (sum == 0) {
-            throw new CommonException(CommonErrorCode.NOT_EXISTS, "主版本号数据不存在");
-        }
-        
-        List<VersionDetail> dataNew = new ArrayList<VersionDetail>();
-        List<VersionDetailVO> datas = versionInfoAndDetailIdVO.getVersionDetail();
-        for (VersionDetailVO data : datas) {
-            VersionDetail versionDetail = new VersionDetail();
-            versionDetail.setCreator(UserUtils.getCurrentPrincipleID());
-            versionDetail.setGmtCreate(DateUtil.now());
-            versionDetail.setGmtModified(DateUtil.now());
-            versionDetail.setModifier(UserUtils.getCurrentPrincipleID());
-            versionDetail.setDescription(data.getDescription());
-            versionDetail.setOrderNo(data.getOrderNo());
-            versionDetail.setTitle(data.getTitle());
-            versionDetail.setVersionId(versionInfoAndDetailIdVO.getVersionInfoId());
-            versionDetail.setRemark(data.getRemark());
-            versionDetail.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
-            dataNew.add(versionDetail);
-
-        }
-
-        boolean res = versionDetailServiceImpl.saveBatch(dataNew);
-
-        return res;
-    }
-    /**
-     * 判断数据是否存在有效
-     *
-     * @param id
-     */
-    private void checkExist(Long id) {
-    	 // 1.先判断数据是否存在有效
-    	 QueryWrapper<VersionDetail> VersionInfoFand = new QueryWrapper<>();
-         VersionInfoFand.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("id", id);
-         int sum = count(VersionInfoFand);
-         if (sum == 0) {
-             throw new CommonException(CommonErrorCode.NOT_EXISTS, "该数据不存在");
-         }
-    }
-}
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.diagbot.client.UserServiceClient;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.VersionDetailDTO;
+import com.diagbot.dto.VersionDetailSpecDTO;
+import com.diagbot.entity.VersionDetail;
+import com.diagbot.entity.VersionInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.StatusEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.VersionDetailServiceImpl;
+import com.diagbot.service.impl.VersionInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.util.UserUtils;
+import com.diagbot.vo.VersionDetailIdVO;
+import com.diagbot.vo.VersionDetailVO;
+import com.diagbot.vo.VersionInfoAndDetailIdVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * 版本详情
+ *
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月21日 上午11:38:40
+ */
+@Component
+public class VersionDetailFacade extends VersionDetailServiceImpl {
+
+    @Autowired
+    VersionDetailServiceImpl versionDetailServiceImpl;
+    @Autowired
+    UserServiceClient userServiceClient;
+    @Autowired
+    VersionInfoServiceImpl versionInfoServiceImpl;
+
+
+    /**
+     * 根据版本id查询版本详情
+     *
+     * @param id
+     * @return
+     */
+    public List<VersionDetailDTO> getById(Long id) {
+        QueryWrapper<VersionDetail> versionDetailQuery = new QueryWrapper<>();
+
+        versionDetailQuery.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("STATUS", StatusEnum.Enable.getKey())
+                .eq("version_id", id).orderByAsc("order_no");
+
+        VersionDetail versionDetail = new VersionDetail();
+        versionDetail.setVersionId(id);
+        List<VersionDetail> datas = list(versionDetailQuery);
+        // System.out.println("List<VersionDetail>==="+datas.toString());
+        List<VersionDetailDTO> dataNew = new ArrayList<VersionDetailDTO>();
+        // 过滤字段
+        for (VersionDetail versionData : datas) {
+            VersionDetailDTO versionDTO = new VersionDetailDTO();
+            versionDTO.setId(versionData.getId());
+            //versionDTO.setCreator(versionData.getCreator());
+            versionDTO.setDescription(versionData.getDescription());
+            versionDTO.setGmtCreate(versionData.getGmtCreate());
+            versionDTO.setOrderNo(versionData.getOrderNo());
+            versionDTO.setRemark(versionData.getRemark());
+            versionDTO.setStatus(versionData.getStatus());
+            versionDTO.setTitle(versionData.getTitle());
+            versionDTO.setVersionId(versionData.getVersionId());
+            dataNew.add(versionDTO);
+        }
+        return dataNew;
+
+    }
+
+    /**
+     * 根据版本id查询版本详情
+     *
+     * @param id
+     * @return
+     */
+    public List<VersionDetailSpecDTO> getById2(Long id) {
+        QueryWrapper<VersionDetail> versionDetailQuery = new QueryWrapper<>();
+        Map<String, Object> mapAll = new HashMap<>();
+        mapAll.put("is_deleted", IsDeleteEnum.N.getKey());
+        mapAll.put("version_id", id);
+        mapAll.put("STATUS", StatusEnum.Enable.getKey());
+        versionDetailQuery.allEq(mapAll).orderByAsc("order_no");
+
+        VersionDetail versionDetail = new VersionDetail();
+        versionDetail.setVersionId(id);
+        List<VersionDetail> datas = list(versionDetailQuery);
+        List<VersionDetailSpecDTO> dataNew = new ArrayList<>();
+        //过滤字段
+        dataNew = BeanUtil.listCopyTo(datas, VersionDetailSpecDTO.class);
+        return dataNew;
+
+    }
+
+    /**
+     * 根据版本ids查询版本详情
+     *
+     * @param ids
+     * @return
+     */
+    public List<VersionDetailDTO> getByIds(List<Long> ids) {
+        QueryWrapper<VersionDetail> versionDetailQuery = new QueryWrapper<>();
+
+        versionDetailQuery.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("STATUS", StatusEnum.Enable.getKey())
+                .in("version_id", ids).orderByAsc("order_no");
+
+        List<VersionDetail> datas = list(versionDetailQuery);
+        List<VersionDetailDTO> dataNew = new ArrayList<VersionDetailDTO>();
+        List<String> modifierid = new ArrayList<>();
+        modifierid = datas.stream().map(ac -> ac.getModifier()).collect(Collectors.toList());
+        Map<String, String> userNames = new HashMap<>();
+        if (modifierid.size() > 0) {
+            RespDTO<Map<String, String>> userNamesDTO = userServiceClient.getUserInfoByIds(modifierid);
+            if (userNamesDTO == null || !CommonErrorCode.OK.getCode().equals(userNamesDTO.code)) {
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
+                        "获取所有用户信息失败");
+            }
+            userNames = userNamesDTO.data;
+        }
+
+        // 过滤字段
+        for (VersionDetail versionData : datas) {
+            VersionDetailDTO versionDTO = new VersionDetailDTO();
+            versionDTO.setId(versionData.getId());
+            //versionDTO.setCreator(versionData.getCreator());
+            versionDTO.setModifierid(userNames.get(versionData.getModifier()));
+            versionDTO.setDescription(versionData.getDescription());
+            versionDTO.setGmtCreate(versionData.getGmtCreate());
+            versionDTO.setOrderNo(versionData.getOrderNo());
+            versionDTO.setRemark(versionData.getRemark());
+            versionDTO.setStatus(versionData.getStatus());
+            versionDTO.setTitle(versionData.getTitle());
+            versionDTO.setVersionId(versionData.getVersionId());
+            dataNew.add(versionDTO);
+        }
+        return dataNew;
+
+    }
+
+    /**
+     * 更新接口
+     *
+     * @param versionDetailVO
+     * @return
+     */
+    public boolean updateVersionDetail(VersionDetailVO versionDetailVO) {
+        // 1.先判断数据是否存在有效
+        VersionDetail versionDetailres = checkExist(versionDetailVO.getDetailId());
+        //验证主表是否是可修改状态
+        checkExistMain(versionDetailres.getVersionId());
+        // 3.修改版本详情信息
+        VersionDetail versionDetail = new VersionDetail();
+
+        versionDetail.setGmtModified(DateUtil.now());// 修改时间
+        versionDetail.setModifier(UserUtils.getCurrentPrincipleID());
+        versionDetail.setTitle(versionDetailVO.getTitle());
+        versionDetail.setOrderNo(versionDetailVO.getOrderNo());
+        versionDetail.setStatus(versionDetailVO.getStatus());
+        versionDetail.setId(versionDetailVO.getDetailId());
+        versionDetail.setDescription(versionDetailVO.getDescription());
+        versionDetail.setRemark(versionDetailVO.getRemark());
+        boolean res = updateById(versionDetail);
+        if (!res) {
+            throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL);
+        }
+
+        return res;
+    }
+
+    /**
+     * 删除接口
+     *
+     * @param versionDetailIdVO
+     * @return
+     */
+    public boolean cancelVersionDetail(VersionDetailIdVO versionDetailIdVO) {
+        // 1.先判断数据是否存在有效
+        VersionDetail versionDetailres = checkExist(versionDetailIdVO.getId());
+        //验证主表是否是可修改状态
+        checkExistMain(versionDetailres.getVersionId());
+        UpdateWrapper<VersionDetail> versionDetailNew = new UpdateWrapper<>();
+        versionDetailNew.in("id", versionDetailIdVO.getId())
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .set("is_deleted", IsDeleteEnum.Y.getKey())
+                .set("modifier", UserUtils.getCurrentPrincipleID())
+                .set("gmt_modified", DateUtil.now());
+        return update(new VersionDetail(), versionDetailNew);
+    }
+
+    /**
+     * 增加明细接口
+     *
+     * @param versionInfoAndDetailIdVO
+     * @return
+     */
+    public boolean addVersionDetail(VersionInfoAndDetailIdVO versionInfoAndDetailIdVO) {
+
+        //1.增加明细前先判断主版本号的id是否有效
+        checkExistMain(versionInfoAndDetailIdVO.getVersionInfoId());
+
+        List<VersionDetail> dataNew = new ArrayList<VersionDetail>();
+        List<VersionDetailVO> datas = versionInfoAndDetailIdVO.getVersionDetail();
+        for (VersionDetailVO data : datas) {
+            VersionDetail versionDetail = new VersionDetail();
+            versionDetail.setCreator(UserUtils.getCurrentPrincipleID());
+            versionDetail.setGmtCreate(DateUtil.now());
+            versionDetail.setGmtModified(DateUtil.now());
+            versionDetail.setModifier(UserUtils.getCurrentPrincipleID());
+            versionDetail.setDescription(data.getDescription());
+            versionDetail.setOrderNo(data.getOrderNo());
+            versionDetail.setTitle(data.getTitle());
+            versionDetail.setVersionId(versionInfoAndDetailIdVO.getVersionInfoId());
+            versionDetail.setRemark(data.getRemark());
+            versionDetail.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
+            dataNew.add(versionDetail);
+
+        }
+
+        boolean res = versionDetailServiceImpl.saveBatch(dataNew);
+
+        return res;
+    }
+
+    /**
+     * 判断数据是否存在有效
+     *
+     * @param id
+     */
+    private VersionDetail checkExist(Long id) {
+        // 1.先判断数据是否存在有效
+        QueryWrapper<VersionDetail> VersionInfoFand = new QueryWrapper<>();
+        VersionInfoFand.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("id", id);
+        VersionDetail versionDetail = getOne(VersionInfoFand);
+        if (null == versionDetail) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该数据不存在");
+        }
+        return versionDetail;
+    }
+
+
+    /**
+     * 判断数据是否存在有效(主版本)
+     *
+     * @param id
+     */
+    private void checkExistMain(Long id) {
+        // 1.先判断数据是否存在有效
+        QueryWrapper<VersionInfo> VersionInfoFand = new QueryWrapper<>();
+        VersionInfoFand.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", id);
+        VersionInfo versionInfo = versionInfoServiceImpl.getOne(VersionInfoFand);
+        if (null == versionInfo) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "主版本号数据不存在");
+        }
+        if (StringUtil.isNotBlank(versionInfo.getStatus())
+                && versionInfo.getStatus().equals(String.valueOf(StatusEnum.Disable.getKey()))) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该版本已停用");
+        }
+    }
+}

+ 322 - 248
icssman-service/src/main/java/com/diagbot/facade/VersionInfoFacade.java

@@ -1,248 +1,322 @@
-package com.diagbot.facade;
-
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.diagbot.client.UserServiceClient;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.VersionDetailDTO;
-import com.diagbot.dto.VersionWrapperDTO;
-import com.diagbot.entity.VersionDetail;
-import com.diagbot.entity.VersionInfo;
-import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.enums.StatusEnum;
-import com.diagbot.exception.CommonErrorCode;
-import com.diagbot.exception.CommonException;
-import com.diagbot.service.impl.VersionDetailServiceImpl;
-import com.diagbot.service.impl.VersionInfoServiceImpl;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.ListUtil;
-import com.diagbot.util.UserUtils;
-import com.diagbot.vo.VersionDetailVO;
-import com.diagbot.vo.VersionInfoAllVO;
-import com.diagbot.vo.VersionInfoIdVO;
-import com.diagbot.vo.VersionInfoVO;
-import com.diagbot.vo.VersionWrapperNameVO;
-
-/**
- * @author wangfeng
- * @Description: 版本信息
- * @date 2018年12月6日 下午2:14:54
- */
-@Component
-public class VersionInfoFacade extends VersionInfoServiceImpl {
-
-    @Autowired
-    VersionDetailFacade versionDetailFacade;
-    @Autowired
-    VersionDetailServiceImpl versionDetailServiceImpl;
-    @Autowired
-    UserServiceClient userServiceClient;
-
-    /**
-     * 查询版本信息
-     *
-     * @return
-     */
-    public IPage<VersionWrapperDTO> getVersionInfoAll(Page page,VersionWrapperNameVO versionWrapperNameVO) {
-        // 模糊查询最新的一条版本信息
-       /* QueryWrapper<VersionInfo> versionInfoQuery = new QueryWrapper<>();
-        versionInfoQuery.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("STATUS", StatusEnum.Enable.getKey())
-                .like("name", name).orderByDesc("refresh_time");
-      
-        // 分页查询
-*/        //IPage<VersionInfo> queryUserInformation = page(page, versionInfoQuery);
-        IPage<VersionWrapperDTO> queryUserInformation = getVersionInfoAPage(page,versionWrapperNameVO);
-        List<VersionWrapperDTO> versionInfos = queryUserInformation.getRecords();
-        List<VersionWrapperDTO> versionLists = new ArrayList<VersionWrapperDTO>();
-        // 取出操作人id
-        List<String> modifierid = new ArrayList<>();
-        modifierid = versionInfos.stream().map(ac -> ac.getModifierid()).collect(Collectors.toList());
-        // 根据操作人的id获取操作人信息
-        Map<String, String> userNames = new HashMap<>();
-        if (ListUtil.isNotEmpty(modifierid)) {
-            RespDTO<Map<String, String>> userNamesDTO = userServiceClient.getUserInfoByIds(modifierid);
-            if (userNamesDTO == null || !CommonErrorCode.OK.getCode().equals(userNamesDTO.code)) {
-                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "获取所有用户信息失败");
-            }
-            userNames = userNamesDTO.data;
-        }
-        // 当查出的数据不为空时,取到版本id,再去版本明细表中查询详细的信息
-		for (VersionWrapperDTO versionInfo : versionInfos) {
-			VersionWrapperDTO versionList = new VersionWrapperDTO();
-			versionList.setId(versionInfo.getId());
-			versionList.setGmtCreate(versionInfo.getGmtCreate());
-			versionList.setName(versionInfo.getName());
-			versionList.setModifierid(userNames.get(versionInfo.getModifierid()));
-			versionList.setRefreshTime(versionInfo.getRefreshTime());
-			versionList.setStatus(versionInfo.getStatus());
-			versionList.setRemark(versionInfo.getRemark());
-			versionLists.add(versionList);
-		}
-        // 取版本id查明细
-        List<Long> ids = new ArrayList<>();
-        if (versionInfos != null) {
-            // 当查出的数据不为空时,取到版本id,再去版本明细表中查询详细的信息
-            for (VersionWrapperDTO versionInfo : versionInfos) {
-                ids.add(versionInfo.getId());
-            }
-            // 获取明细信息
-            List<VersionDetailDTO> details = versionDetailFacade.getByIds(ids);
-            Map<Long, List<VersionDetailDTO>> map = new HashMap<>();
-            // 获取所有用户开通的产品信息
-            map = EntityUtil.makeEntityListMap(details, "versionId");
-            if (map.size() > 0) {
-                for (VersionWrapperDTO versionList : versionLists) {
-                    List<VersionDetailDTO> userAndProdutUDTO = map.get(versionList.getId());
-                    if (ListUtil.isNotEmpty(userAndProdutUDTO)) {
-                        versionList.setDetail(userAndProdutUDTO);
-                    }
-                }
-            }
-        }
-        return queryUserInformation.setRecords(versionLists);
-
-    }
-
-    /**
-     * 保存版本信息
-     *
-     * @param versionInfoVO
-     * @return
-     */
-    public boolean saveVersionInfoAll(VersionInfoVO versionInfoVO) {
-        // 1.判断该版本号是否存在名字相同的数据
-        QueryWrapper<VersionInfo> templateInfoFand = new QueryWrapper<>();
-        templateInfoFand.eq("name", versionInfoVO.getName()).eq("is_deleted", IsDeleteEnum.N.getKey());
-        VersionInfo dataInfo = getOne(templateInfoFand);
-        if (dataInfo != null) {
-            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该版本号已存在");
-        }
-
-        // 增加版本数据
-        VersionInfo versionInfo = new VersionInfo();
-        versionInfo.setCreator(UserUtils.getCurrentPrincipleID());
-        versionInfo.setGmtCreate(DateUtil.now());
-        versionInfo.setName(versionInfoVO.getName());
-        versionInfo.setGmtModified(DateUtil.now());
-        versionInfo.setModifier(UserUtils.getCurrentPrincipleID());
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-        try {
-            versionInfo.setRefreshTime(sdf.parse(versionInfoVO.getRefreshTime()));
-        } catch (ParseException e) {
-            throw new CommonException(CommonErrorCode.NOT_EXISTS, "时间格式有误");
-        }
-        versionInfo.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
-        versionInfo.setRemark(versionInfoVO.getRemark());
-        // 优先保存版本号,成功后再保存明细信息
-        boolean res = save(versionInfo);
-        if (res) {
-            List<VersionDetail> dataNew = new ArrayList<VersionDetail>();
-            List<VersionDetailVO> datas = versionInfoVO.getVersionDetail();
-            if (datas != null && datas.size() > 0) {
-                for (VersionDetailVO data : datas) {
-                    VersionDetail versionDetail = new VersionDetail();
-                    versionDetail.setCreator(UserUtils.getCurrentPrincipleID());
-                    versionDetail.setGmtCreate(DateUtil.now());
-                    versionDetail.setGmtModified(DateUtil.now());
-                    versionDetail.setModifier(UserUtils.getCurrentPrincipleID());
-                    versionDetail.setDescription(data.getDescription());
-                    versionDetail.setOrderNo(data.getOrderNo());
-                    versionDetail.setTitle(data.getTitle());
-                    versionDetail.setVersionId(versionInfo.getId());
-                    versionDetail.setRemark(data.getRemark());
-                    versionDetail.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
-                    dataNew.add(versionDetail);
-                }
-
-                res = versionDetailServiceImpl.saveBatch(dataNew);
-            }
-        }
-        return res;
-    }
-
-    /**
-     * 更新
-     *
-     * @param versionInfoVO
-     * @return
-     */
-    public boolean updateVersionInfoAll(VersionInfoAllVO versionInfoVO) {
-        // 1.先判断数据是否存在有效
-    	checkExist(versionInfoVO.getId());
-        // 2.判断该版本号是否存在名字相同的数据
-        QueryWrapper<VersionInfo> templateInfoFand = new QueryWrapper<>();
-        templateInfoFand.eq("name", versionInfoVO.getName()).eq("is_deleted", IsDeleteEnum.N.getKey());
-        VersionInfo dataInfo = getOne(templateInfoFand);
-        if (dataInfo != null && !dataInfo.getId().equals(versionInfoVO.getId())) {
-            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该版本号已存在");
-        }
-        // 3.修改版本信息
-        VersionInfo versionInfo = new VersionInfo();
-        versionInfo.setId(versionInfoVO.getId());// 模板id
-        versionInfo.setName(versionInfoVO.getName());// 模板名称
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-        if (versionInfoVO.getRefreshTime() != null) {
-            try {
-                versionInfo.setRefreshTime(sdf.parse(versionInfoVO.getRefreshTime()));
-            } catch (ParseException e) {
-                throw new CommonException(CommonErrorCode.NOT_EXISTS, "时间格式有误");
-                // e.printStackTrace();
-            }
-        }
-        versionInfo.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
-        versionInfo.setRemark(versionInfoVO.getRemark());
-        versionInfo.setGmtModified(DateUtil.now());// 修改时间
-        versionInfo.setModifier(UserUtils.getCurrentPrincipleID());
-        boolean res = updateById(versionInfo);
-        if (!res) {
-            throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL);
-        }
-
-        return res;
-    }
-
-    /**
-     * 删除
-     *
-     * @param versionInfoVO
-     * @return
-     */
-    public boolean cancelVersionInfoAll(VersionInfoIdVO versionInfoVO) {
-    	 // 1.先判断数据是否存在有效
-    	checkExist(versionInfoVO.getId());
-        UpdateWrapper<VersionInfo> versionInfoNew = new UpdateWrapper<>();
-        versionInfoNew.in("id", versionInfoVO.getId()).eq("is_deleted", IsDeleteEnum.N.getKey())
-                .set("is_deleted", IsDeleteEnum.Y.getKey()).set("modifier", UserUtils.getCurrentPrincipleID())
-                .set("gmt_modified", DateUtil.now());
-        return update(new VersionInfo(), versionInfoNew);
-    }
-
-    /**
-     * 判断数据是否存在有效
-     *
-     * @param id
-     */
-    private void checkExist(Long id) {
-    	 // 1.先判断数据是否存在有效
-        QueryWrapper<VersionInfo> VersionInfoFand = new QueryWrapper<>();
-        VersionInfoFand.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("id", id);
-        int sum = count(VersionInfoFand);
-        if (sum == 0) {
-            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该数据不存在");
-        }
-    }
-}
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.diagbot.client.UserServiceClient;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.VersionDetailDTO;
+import com.diagbot.dto.VersionDetailSpecDTO;
+import com.diagbot.dto.VersionSpecDTO;
+import com.diagbot.dto.VersionWrapperDTO;
+import com.diagbot.entity.VersionDetail;
+import com.diagbot.entity.VersionInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.ProductTypeEnum;
+import com.diagbot.enums.StatusEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.VersionDetailServiceImpl;
+import com.diagbot.service.impl.VersionInfoServiceImpl;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.util.IntegerUtil;
+import com.diagbot.util.ListUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.util.UserUtils;
+import com.diagbot.vo.VersionDetailVO;
+import com.diagbot.vo.VersionInfoAllVO;
+import com.diagbot.vo.VersionInfoIdVO;
+import com.diagbot.vo.VersionInfoVO;
+import com.diagbot.vo.VersionVO;
+import com.diagbot.vo.VersionWrapperNameVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @author wangfeng
+ * @Description: 版本信息
+ * @date 2018年12月6日 下午2:14:54
+ */
+@Component
+public class VersionInfoFacade extends VersionInfoServiceImpl {
+
+    @Autowired
+    VersionDetailFacade versionDetailFacade;
+    @Autowired
+    VersionDetailServiceImpl versionDetailServiceImpl;
+    @Autowired
+    UserServiceClient userServiceClient;
+
+    /**
+     * 查询版本信息
+     *
+     * @return
+     */
+    public IPage<VersionWrapperDTO> getVersionInfoAll(Page page, VersionWrapperNameVO versionWrapperNameVO) {
+        // 模糊查询最新的一条版本信息
+       /* QueryWrapper<VersionInfo> versionInfoQuery = new QueryWrapper<>();
+        versionInfoQuery.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("STATUS", StatusEnum.Enable.getKey())
+                .like("name", name).orderByDesc("refresh_time");
+      
+        // 分页查询
+*/        //IPage<VersionInfo> queryUserInformation = page(page, versionInfoQuery);
+        IPage<VersionWrapperDTO> queryUserInformation = getVersionInfoAPage(page, versionWrapperNameVO);
+        List<VersionWrapperDTO> versionInfos = queryUserInformation.getRecords();
+        List<VersionWrapperDTO> versionLists = new ArrayList<VersionWrapperDTO>();
+        // 取出操作人id
+        List<String> modifierid = new ArrayList<>();
+        modifierid = versionInfos.stream().map(ac -> ac.getModifierid()).collect(Collectors.toList());
+        // 根据操作人的id获取操作人信息
+        Map<String, String> userNames = new HashMap<>();
+        if (ListUtil.isNotEmpty(modifierid)) {
+            RespDTO<Map<String, String>> userNamesDTO = userServiceClient.getUserInfoByIds(modifierid);
+            if (userNamesDTO == null || !CommonErrorCode.OK.getCode().equals(userNamesDTO.code)) {
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "获取所有用户信息失败");
+            }
+            userNames = userNamesDTO.data;
+        }
+        // 当查出的数据不为空时,取到版本id,再去版本明细表中查询详细的信息
+        for (VersionWrapperDTO versionInfo : versionInfos) {
+            VersionWrapperDTO versionList = new VersionWrapperDTO();
+            versionList.setId(versionInfo.getId());
+            versionList.setGmtCreate(versionInfo.getGmtCreate());
+            versionList.setProductType(versionInfo.getProductType());
+            versionList.setProductTypeName(ProductTypeEnum.getName(versionInfo.getProductType()));
+            versionList.setName(versionInfo.getName());
+            versionList.setModifierid(userNames.get(versionInfo.getModifierid()));
+            versionList.setRefreshTime(versionInfo.getRefreshTime());
+            versionList.setStatus(versionInfo.getStatus());
+            versionList.setRemark(versionInfo.getRemark());
+            versionLists.add(versionList);
+        }
+        // 取版本id查明细
+        List<Long> ids = new ArrayList<>();
+        if (versionInfos != null) {
+            // 当查出的数据不为空时,取到版本id,再去版本明细表中查询详细的信息
+            for (VersionWrapperDTO versionInfo : versionInfos) {
+                ids.add(versionInfo.getId());
+            }
+            // 获取明细信息
+            List<VersionDetailDTO> details = versionDetailFacade.getByIds(ids);
+            Map<Long, List<VersionDetailDTO>> map = new HashMap<>();
+            // 获取所有用户开通的产品信息
+            map = EntityUtil.makeEntityListMap(details, "versionId");
+            if (map.size() > 0) {
+                for (VersionWrapperDTO versionList : versionLists) {
+                    List<VersionDetailDTO> userAndProdutUDTO = map.get(versionList.getId());
+                    if (ListUtil.isNotEmpty(userAndProdutUDTO)) {
+                        versionList.setDetail(userAndProdutUDTO);
+                    }
+                }
+            }
+        }
+        return queryUserInformation.setRecords(versionLists);
+
+    }
+
+    /**
+     * 保存版本信息
+     *
+     * @param versionInfoVO
+     * @return
+     */
+    public boolean saveVersionInfoAll(VersionInfoVO versionInfoVO) {
+        // 1.判断摸个产品该版本号是否存在名字相同的数据
+        QueryWrapper<VersionInfo> templateInfoFand = new QueryWrapper<>();
+        templateInfoFand.eq("product_type", versionInfoVO.getProductType())
+                .eq("name", versionInfoVO.getName())
+                .eq("is_deleted", IsDeleteEnum.N.getKey());
+
+        VersionInfo dataInfo = getOne(templateInfoFand);
+        if (dataInfo != null) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该产品该版本号已存在");
+        }
+        //2.把相同产品类型的版本状态修改为0,
+        UpdateWrapper<VersionInfo> versionInfoUp = new UpdateWrapper<>();
+        versionInfoUp.eq("product_type", versionInfoVO.getProductType())
+                .eq("status", StatusEnum.Enable.getKey())
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .set("status", StatusEnum.Disable.getKey())
+                .set("modifier", UserUtils.getCurrentPrincipleID())
+                .set("gmt_modified", DateUtil.now());
+        update(new VersionInfo(), versionInfoUp);
+
+        //3.增加版本数据
+        VersionInfo versionInfo = new VersionInfo();
+        versionInfo.setCreator(UserUtils.getCurrentPrincipleID());
+        versionInfo.setGmtCreate(DateUtil.now());
+        versionInfo.setProductType(versionInfoVO.getProductType());
+        versionInfo.setName(versionInfoVO.getName());
+        versionInfo.setGmtModified(DateUtil.now());
+        versionInfo.setModifier(UserUtils.getCurrentPrincipleID());
+        versionInfo.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        try {
+            versionInfo.setRefreshTime(sdf.parse(versionInfoVO.getRefreshTime()));
+        } catch (ParseException e) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "时间格式有误");
+        }
+        versionInfo.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
+        versionInfo.setRemark(versionInfoVO.getRemark());
+        // 优先保存版本号,成功后再保存明细信息
+        boolean res = save(versionInfo);
+        if (res) {
+            List<VersionDetail> dataNew = new ArrayList<VersionDetail>();
+            List<VersionDetailVO> datas = versionInfoVO.getVersionDetail();
+            if (datas != null && datas.size() > 0) {
+                for (VersionDetailVO data : datas) {
+                    VersionDetail versionDetail = new VersionDetail();
+                    versionDetail.setCreator(UserUtils.getCurrentPrincipleID());
+                    versionDetail.setGmtCreate(DateUtil.now());
+                    versionDetail.setGmtModified(DateUtil.now());
+                    versionDetail.setModifier(UserUtils.getCurrentPrincipleID());
+                    versionDetail.setDescription(data.getDescription());
+                    versionDetail.setOrderNo(data.getOrderNo());
+                    versionDetail.setTitle(data.getTitle());
+                    versionDetail.setVersionId(versionInfo.getId());
+                    versionDetail.setRemark(data.getRemark());
+                    versionDetail.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
+                    dataNew.add(versionDetail);
+                }
+
+                res = versionDetailServiceImpl.saveBatch(dataNew);
+            }
+        }
+        return res;
+    }
+
+    /**
+     * 更新
+     *
+     * @param versionInfoVO
+     * @return
+     */
+    public boolean updateVersionInfoAll(VersionInfoAllVO versionInfoVO) {
+        // 1.先判断数据是否存在有效
+        VersionInfo versionInfoRes = checkExist(versionInfoVO.getId());
+        //验证是否停用
+        if (versionInfoRes != null
+                && StringUtil.isNotBlank(versionInfoRes.getStatus())
+                && versionInfoRes.getStatus().equals(String.valueOf(StatusEnum.Disable.getKey()))) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该产品该版本号已停用");
+        }
+        // 2.判断该版本号是否存在名字相同的数据
+        QueryWrapper<VersionInfo> templateInfoFand = new QueryWrapper<>();
+        templateInfoFand.eq("product_type", versionInfoVO.getProductType())
+                .eq("name", versionInfoVO.getName())
+                .eq("is_deleted", IsDeleteEnum.N.getKey());
+
+        VersionInfo dataInfo = getOne(templateInfoFand);
+        if (dataInfo != null && !dataInfo.getId().equals(versionInfoVO.getId())) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该产品该版本号已存在");
+        }
+        // 3.修改版本信息
+        VersionInfo versionInfo = new VersionInfo();
+        versionInfo.setId(versionInfoVO.getId());// 模板id
+        versionInfo.setProductType(versionInfoVO.getProductType());
+        versionInfo.setName(versionInfoVO.getName());// 模板名称
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        if (versionInfoVO.getRefreshTime() != null) {
+            try {
+                versionInfo.setRefreshTime(sdf.parse(versionInfoVO.getRefreshTime()));
+            } catch (ParseException e) {
+                throw new CommonException(CommonErrorCode.NOT_EXISTS, "时间格式有误");
+                // e.printStackTrace();
+            }
+        }
+        versionInfo.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
+        versionInfo.setRemark(versionInfoVO.getRemark());
+        versionInfo.setGmtModified(DateUtil.now());// 修改时间
+        versionInfo.setModifier(UserUtils.getCurrentPrincipleID());
+        boolean res = updateById(versionInfo);
+        if (!res) {
+            throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL);
+        }
+
+        return res;
+    }
+
+    /**
+     * 删除
+     *
+     * @param versionInfoVO
+     * @return
+     */
+    public boolean cancelVersionInfoAll(VersionInfoIdVO versionInfoVO) {
+        // 1.先判断数据是否存在有效
+        checkExist(versionInfoVO.getId());
+        UpdateWrapper<VersionInfo> versionInfoNew = new UpdateWrapper<>();
+        versionInfoNew.in("id", versionInfoVO.getId())
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .set("is_deleted", IsDeleteEnum.Y.getKey())
+                .set("modifier", UserUtils.getCurrentPrincipleID())
+                .set("gmt_modified", DateUtil.now());
+        return update(new VersionInfo(), versionInfoNew);
+    }
+
+    /**
+     * 判断数据是否存在有效
+     *
+     * @param id
+     */
+    private VersionInfo checkExist(Long id) {
+        // 1.先判断数据是否存在有效
+        QueryWrapper<VersionInfo> VersionInfoFand = new QueryWrapper<>();
+        VersionInfoFand.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", id);
+        VersionInfo versionInfo = getOne(VersionInfoFand);
+        if (null == versionInfo) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该数据不存在");
+        }
+        return versionInfo;
+    }
+
+    /**
+     * 查询版本信息
+     *
+     * @return
+     */
+    public VersionSpecDTO getVersionInfo(VersionVO versionVO) {
+        //入参配置验证
+        if (null == versionVO) {
+            throw new CommonException(CommonErrorCode.PARAM_IS_NULL);
+        }
+
+        if (IntegerUtil.isNull(versionVO.getProductType())) {
+            throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "产品类型不能为空!");
+        }
+        //查询最新的一条版本信息
+        QueryWrapper<VersionInfo> versionInfoQuery = new QueryWrapper<>();
+        versionInfoQuery.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("product_type", versionVO.getProductType())
+                .eq("STATUS", StatusEnum.Enable.getKey())
+                .orderByDesc("gmt_modified");
+
+        VersionInfo versionInfo = getOne(versionInfoQuery);
+        VersionSpecDTO versionList = new VersionSpecDTO();
+
+        if (versionInfo != null) {
+            //当查出的数据不为空时,取到版本id,再去版本明细表中查询详细的信息
+            long id = versionInfo.getId();
+            List<VersionDetailSpecDTO> detail = versionDetailFacade.getById2(id);
+            //System.out.println(detail.toString());
+            versionList.setId(versionInfo.getId());
+            versionList.setName(versionInfo.getName());
+            versionList.setRefreshTime(versionInfo.getRefreshTime());
+            versionList.setStatus(versionInfo.getStatus());
+            versionList.setDetail(detail);
+        }
+
+        return versionList;
+    }
+}

+ 13 - 1
knowledgeman-service/src/main/java/com/diagbot/mapper/LisMappingMapper.java

@@ -1,12 +1,16 @@
 package com.diagbot.mapper;
 
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.dto.LisMappingPageDTO;
 import com.diagbot.entity.LisMapping;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
 import com.diagbot.vo.LisMappingPageVO;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * <p>
  * 化验项目公表映射 Mapper 接口
@@ -23,4 +27,12 @@ public interface LisMappingMapper extends BaseMapper<LisMapping> {
      * @return
      */
     IPage<LisMappingPageDTO> lisMappingPage(@Param("lisMappingPageVO") LisMappingPageVO lisMappingPageVO);
+
+    /**
+     * 获取化验公表映射
+     *
+     * @param map
+     * @return
+     */
+    List<LisMappingWrapper> getLisMappingByName(Map map);
 }

+ 23 - 8
knowledgeman-service/src/main/java/com/diagbot/mapper/RelationMapper.java

@@ -8,14 +8,14 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.dto.GetRelationInfoListDTO;
 import com.diagbot.dto.LisSonContactListDTO;
-import com.diagbot.dto.MultContactListDTO;
-import com.diagbot.dto.RelationContactListDTO;
+import com.diagbot.dto.OnlyByRootListDTO;
 import com.diagbot.dto.RelationNodeDTO;
+import com.diagbot.dto.SingleRelationListDTO;
 import com.diagbot.entity.Relation;
 import com.diagbot.vo.GetRelationInfoListVO;
 import com.diagbot.vo.LisSonContactListVO;
-import com.diagbot.vo.MultContactListVO;
-import com.diagbot.vo.RelationContactListVO;
+import com.diagbot.vo.OnlyByRootListVO;
+import com.diagbot.vo.SingleRelationListVO;
 
 /**
  * <p>
@@ -29,12 +29,27 @@ public interface RelationMapper extends BaseMapper<Relation> {
 	
 	IPage<GetRelationInfoListDTO> getRelationInfoList(GetRelationInfoListVO getRelationInfoListVO);
 	
-	List<RelationNodeDTO> getRelationNodeDTOs(@Param(value="conceptId")Long conceptId,@Param(value="relationId")Long relationId);
+	List<RelationNodeDTO> getRelationNodeDTOs(@Param(value="conceptId")Long conceptId,@Param(value="relationId")Long relationId,@Param(value="endTypeId")Long endTypeId);
 	
-	IPage<RelationContactListDTO> relationContactList(RelationContactListVO relationContactListVO);
+	/**
+	 * 化验子项分页查询
+	 * @param lisSonContactListVO
+	 * @return
+	 */
+	IPage<LisSonContactListDTO> lisSonContactList(LisSonContactListVO lisSonContactListVO);
 	
-	IPage<MultContactListDTO> multContactList(MultContactListVO multContactListVO);
+	/**
+	 * 起始术语类型id、终点术语类型id、关系类型id
+	 * @param singleRelationListVO
+	 * @return
+	 */
+	IPage<SingleRelationListDTO> singleRelationList(SingleRelationListVO singleRelationListVO);
 	
-	IPage<LisSonContactListDTO> lisSonContactList(LisSonContactListVO lisSonContactListVO);
+	/**
+	 * 根节点术语类型id集合(起始术语类型id集合)、关系类型id
+	 * @param onlyByRootListVO
+	 * @return
+	 */
+	IPage<OnlyByRootListDTO> onlyByRootList(OnlyByRootListVO onlyByRootListVO);
 	
 }

icssman-service/src/main/java/com/diagbot/mapper/VersionDetailMapper.java → knowledgeman-service/src/main/java/com/diagbot/mapper/VersionDetailMapper.java


icssman-service/src/main/java/com/diagbot/mapper/VersionInfoMapper.java → knowledgeman-service/src/main/java/com/diagbot/mapper/VersionInfoMapper.java


+ 14 - 2
knowledgeman-service/src/main/java/com/diagbot/service/LisMappingService.java

@@ -1,12 +1,16 @@
 package com.diagbot.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
 import com.diagbot.dto.LisMappingPageDTO;
 import com.diagbot.entity.LisMapping;
-import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
 import com.diagbot.vo.LisMappingPageVO;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * <p>
  * 化验项目公表映射 服务类
@@ -23,4 +27,12 @@ public interface LisMappingService extends IService<LisMapping> {
      * @return
      */
     IPage<LisMappingPageDTO> lisMappingPage(@Param("lisMappingPageVO") LisMappingPageVO lisMappingPageVO);
-}
+
+    /**
+     * 获取化验公表映射
+     *
+     * @param map
+     * @return
+     */
+    List<LisMappingWrapper> getLisMappingByName(Map map);
+}

icssman-service/src/main/java/com/diagbot/service/VersionDetailService.java → knowledgeman-service/src/main/java/com/diagbot/service/VersionDetailService.java


icssman-service/src/main/java/com/diagbot/service/VersionInfoService.java → knowledgeman-service/src/main/java/com/diagbot/service/VersionInfoService.java


+ 16 - 5
knowledgeman-service/src/main/java/com/diagbot/service/impl/EnumsDataServiceImpl.java

@@ -8,6 +8,8 @@ import com.diagbot.enums.HasQuestionEnum;
 import com.diagbot.enums.LexiconRSTypeEnum;
 import com.diagbot.enums.LexiconTypeEnum;
 import com.diagbot.enums.PositionTypeEnum;
+import com.diagbot.enums.ProductTypeEnum;
+import com.diagbot.enums.RelationModelTypeEnum;
 import com.diagbot.service.EnumsDataService;
 import com.diagbot.util.EnumEntriesBuilder;
 import org.springframework.stereotype.Service;
@@ -35,11 +37,20 @@ public class EnumsDataServiceImpl implements EnumsDataService {
                 .addEnums("positionTypeEnum", PositionTypeEnum.values())
                 .addEnums("lexiconRSTypeEnum", LexiconRSTypeEnum.INCLUDE_OF, LexiconRSTypeEnum.PUSH)
                 .addEnums("lexiconTypeEnum", LexiconTypeEnum.values())
-                .addEnums("concatLexiconTypeEnum", 
-                		LexiconTypeEnum.SYMPTOM,LexiconTypeEnum.BODYPART,LexiconTypeEnum.LIS_PACKAGE,LexiconTypeEnum.PACS_PACKAGE,
-                		LexiconTypeEnum.PACS_ITEMS,LexiconTypeEnum.DIAGNOSIS,LexiconTypeEnum.PACS_CATEGORY_BIG,LexiconTypeEnum.PACS_CATEGORY_SMALL,
-                		LexiconTypeEnum.DEPARTMENT,LexiconTypeEnum.GAUGE,LexiconTypeEnum.SIDE_EFFECTS,LexiconTypeEnum.CORE_INDICATORS,
-                		LexiconTypeEnum.LIS_TABLES)
+                .addEnums("productTypeEnum", ProductTypeEnum.values())
+                .addEnums("concatLexiconTypeEnum",
+                        LexiconTypeEnum.SYMPTOM, LexiconTypeEnum.BODYPART,
+                        LexiconTypeEnum.LIS_PACKAGE, LexiconTypeEnum.PACS_PACKAGE,
+                        LexiconTypeEnum.PACS_ITEMS, LexiconTypeEnum.DIAGNOSIS,
+                        LexiconTypeEnum.PACS_CATEGORY_BIG, LexiconTypeEnum.PACS_CATEGORY_SMALL,
+                        LexiconTypeEnum.DEPARTMENT, LexiconTypeEnum.GAUGE,
+                        LexiconTypeEnum.SIDE_EFFECTS, LexiconTypeEnum.CORE_INDICATORS,
+                        LexiconTypeEnum.LIS_TABLES)
+                .addEnums("conceptDetailLexiconTypeEnum",
+                        LexiconTypeEnum.DIAGNOSIS, LexiconTypeEnum.LIS_TABLES,
+                        LexiconTypeEnum.PACS_ITEMS, LexiconTypeEnum.DRUGS,
+                        LexiconTypeEnum.SIDE_EFFECTS)
+                .addEnums("relationModelTypeEnum", RelationModelTypeEnum.values())
                 .addEnums("diagnoseFeatureTypeEnum", DiagnoseFeatureTypeEnum.values())
                 .addEnums("diagnoseFieldEnum", DiagnoseFieldEnum.values())
                 .addEnums("diagnoseTypeEnum", DiagnoseTypeEnum.values())

+ 15 - 1
knowledgeman-service/src/main/java/com/diagbot/service/impl/LisMappingServiceImpl.java

@@ -1,15 +1,19 @@
 package com.diagbot.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.diagbot.dto.LisMappingPageDTO;
 import com.diagbot.entity.LisMapping;
+import com.diagbot.entity.wrapper.LisMappingWrapper;
 import com.diagbot.mapper.LisMappingMapper;
 import com.diagbot.service.LisMappingService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.diagbot.vo.LisMappingPageVO;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * <p>
  * 化验项目公表映射 服务实现类
@@ -29,4 +33,14 @@ public class LisMappingServiceImpl extends ServiceImpl<LisMappingMapper, LisMapp
     public IPage<LisMappingPageDTO> lisMappingPage(@Param("lisMappingPageVO") LisMappingPageVO lisMappingPageVO) {
         return this.baseMapper.lisMappingPage(lisMappingPageVO);
     }
+
+    /**
+     * 获取化验公表映射
+     *
+     * @param map
+     * @return
+     */
+    public List<LisMappingWrapper> getLisMappingByName(Map map) {
+        return this.baseMapper.getLisMappingByName(map);
+    }
 }

icssman-service/src/main/java/com/diagbot/service/impl/VersionDetailServiceImpl.java → knowledgeman-service/src/main/java/com/diagbot/service/impl/VersionDetailServiceImpl.java


icssman-service/src/main/java/com/diagbot/service/impl/VersionInfoServiceImpl.java → knowledgeman-service/src/main/java/com/diagbot/service/impl/VersionInfoServiceImpl.java


+ 40 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/DeleteRelationContactVO.java

@@ -0,0 +1,40 @@
+package com.diagbot.vo;
+
+import java.util.List;
+
+import javax.validation.constraints.NotNull;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: Weixuan Huang
+ * @time: 2019/3/14 16:03
+ */
+@Getter
+@Setter
+public class DeleteRelationContactVO {
+    
+    /**
+     * 概念id
+     */
+	@ApiModelProperty(value="概念id",required=true)
+	@NotNull(message="概念id必传")
+    private Long conceptId;
+	
+	/**
+	 * 各级关系类型id集合
+	 */
+	@ApiModelProperty(value="各级关系类型id集合")
+	private List<Long> relationIds;
+	
+	/**
+	 * 各级终点术语类型id集合
+	 */
+	@ApiModelProperty(value="各级终点术语类型id集合")
+	private List<Long> typeIds;
+	
+    
+}

+ 6 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/GetAllForRelationVO.java

@@ -39,6 +39,12 @@ public class GetAllForRelationVO {
     @ApiModelProperty(value="相关联的概念id")
     private Long relationConceptId;
     
+    /**
+     * 相关联的概念类型
+     */
+    @ApiModelProperty(value="相关联的概念类型")
+    private Long relationTypeId;
+    
     /**
      * 关系类型id
      */

+ 6 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/GetConceptDetailListVO.java

@@ -21,6 +21,12 @@ public class GetConceptDetailListVO extends Page {
      */
 	@ApiModelProperty(value="术语名称")
     private String conceptName;
+	
+	/**
+     * 术语类型id
+     */
+	@ApiModelProperty(value="术语类型id")
+    private Long libType;
 
 
 	@ApiModelProperty(value = "状态值,已删除=Y,启用中=N")

+ 17 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/IdListVO.java

@@ -0,0 +1,17 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/9/24 10:25
+ */
+@Getter
+@Setter
+public class IdListVO {
+    List<Long> idList;
+}

+ 22 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/KLQuestionVO.java

@@ -0,0 +1,22 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2019/9/24 11:42
+ */
+@Getter
+@Setter
+public class KLQuestionVO {
+    private List<String> tagNames;
+    private List<String> names;
+    private Integer sexType;
+    private Integer age;
+    private Integer type;
+    private List<Integer> tagType;
+}

+ 0 - 38
knowledgeman-service/src/main/java/com/diagbot/vo/MultContactListVO.java

@@ -1,38 +0,0 @@
-package com.diagbot.vo;
-
-import java.util.List;
-
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * @Description:
- * @author: Weixuan Huang
- * @time: 2019/3/14 16:03
- */
-@SuppressWarnings({ "serial", "rawtypes" })
-@Getter
-@Setter
-public class MultContactListVO extends Page {
-    
-    /**
-     * 术语名称
-     */
-    @ApiModelProperty(value="术语名称")
-    private String name;
-
-    /**
-     * 术语类型
-     */
-    @ApiModelProperty(value="术语类型")
-    private String type;
-	
-	/**
-	 * 非前端传参,后台查询时临时使用
-	 */
-	private List<Long> rootNodeConceptIds;
-    
-}

+ 46 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/OnlyByRootListVO.java

@@ -0,0 +1,46 @@
+package com.diagbot.vo;
+
+import java.util.List;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: Weixuan Huang
+ * @time: 2019/3/14 16:03
+ */
+@SuppressWarnings({ "serial", "rawtypes" })
+@Getter
+@Setter
+public class OnlyByRootListVO extends Page {
+    
+    /**
+     * 标准术语名称
+     */
+    @ApiModelProperty(value="标准术语名称")
+    private String name;
+    
+    /**
+     * 根节点术语类型id集合(起始术语类型id集合)
+     */
+    @NotEmpty(message="根节点术语类型id集合(起始术语类型id集合)必传")
+    @ApiModelProperty(value="根节点术语类型id集合(起始术语类型id集合)")
+    private List<Long> startTypeIds;
+    
+    /**
+     * 关系类型id
+     */
+    @NotNull(message="关系类型id必传")
+    @ApiModelProperty(value="关系类型id")
+    private Long relationId;
+
+    
+    
+}

+ 11 - 3
knowledgeman-service/src/main/java/com/diagbot/vo/RelationContactDetailVO.java

@@ -1,5 +1,7 @@
 package com.diagbot.vo;
 
+import java.util.List;
+
 import javax.validation.constraints.NotNull;
 
 import io.swagger.annotations.ApiModelProperty;
@@ -23,9 +25,15 @@ public class RelationContactDetailVO {
     private Long conceptId;
 	
 	/**
-	 * 关系id
+	 * 各级关系类型id集合
+	 */
+	@ApiModelProperty(value="各级关系类型id集合")
+	private List<Long> relationIds;
+	
+	/**
+	 * 各级终点术语类型id集合
 	 */
-	@ApiModelProperty(value="关系id")
-	private Long relationId;
+	@ApiModelProperty(value="各级终点术语类型id集合")
+	private List<Long> typeIds;
     
 }

+ 0 - 37
knowledgeman-service/src/main/java/com/diagbot/vo/RelationContactListVO.java

@@ -1,37 +0,0 @@
-package com.diagbot.vo;
-
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * @Description:
- * @author: Weixuan Huang
- * @time: 2019/3/14 16:03
- */
-@SuppressWarnings({ "serial", "rawtypes" })
-@Getter
-@Setter
-public class RelationContactListVO extends Page {
-    
-    /**
-     * 术语名称
-     */
-    @ApiModelProperty(value="术语名称")
-    private String name;
-
-    /**
-     * 术语类型
-     */
-    @ApiModelProperty(value="术语类型")
-    private String type;
-    
-    /**
-     * 状态:Y-已删除,N-启用中
-     */
-	@ApiModelProperty(value="状态:Y-已删除,N-启用中")
-	private String isDeleted;
-    
-}

+ 4 - 4
knowledgeman-service/src/main/java/com/diagbot/vo/RelationNodeVO.java

@@ -19,10 +19,10 @@ public class RelationNodeVO {
 	 */
 	private Long conceptId;
 	
-//	/**
-//	 * 上一级概念id end_id
-//	 */
-//	private Long parentConceptId;
+	/**
+	 * 下一级概念类型id
+	 */
+	private Long sonTypeId;
 	
 	/**
 	 * 当前概念(起点术语) 与 上一级概念(终点术语) 关系id

+ 56 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/SingleRelationListVO.java

@@ -0,0 +1,56 @@
+package com.diagbot.vo;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: Weixuan Huang
+ * @time: 2019/3/14 16:03
+ */
+@SuppressWarnings({ "serial", "rawtypes" })
+@Getter
+@Setter
+public class SingleRelationListVO extends Page {
+    
+    /**
+     * 标准术语名称
+     */
+    @ApiModelProperty(value="标准术语名称")
+    private String name;
+    
+    /**
+     * 关系模块类型编码:科室常用、化验常用、辅检常用、诊断关联量表
+     */
+    @NotBlank(message="关系模块类型编码必传")
+    @ApiModelProperty(value="关系模块类型编码:科室常用、化验常用、辅检常用、诊断关联量表")
+    private String relationModelTypeCode;
+
+    /**
+     * 起始术语类型id
+     */
+    @ApiModelProperty(value="起始术语类型id")
+    private Long startTypeId;
+    
+    /**
+     * 终点术语类型id
+     */
+    @ApiModelProperty(value="终点术语类型id")
+    private Long endTypeId;
+    
+    /**
+     * 关系类型id
+     */
+    @NotNull(message="关系类型id必传")
+    @ApiModelProperty(value="关系类型id")
+    private Long relationId;
+    
+    
+    
+}

+ 19 - 21
icssman-service/src/main/java/com/diagbot/vo/VersionDetailIdVO.java

@@ -1,21 +1,19 @@
-package com.diagbot.vo;
-
-import java.util.Date;
-
-import javax.validation.constraints.NotNull;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 删除版本详情信息
- * @author wangfeng
- * @Description: TODO
- * @date 2018年12月13日 下午2:35:33
- */
-@Getter
-@Setter
-public class VersionDetailIdVO {
-	@NotNull(message = "请输入id")
-	private Long id;
-}
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * 删除版本详情信息
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年12月13日 下午2:35:33
+ */
+@Getter
+@Setter
+public class VersionDetailIdVO {
+	@NotNull(message = "请输入id")
+	private Long id;
+}

+ 47 - 48
icssman-service/src/main/java/com/diagbot/vo/VersionDetailVO.java

@@ -1,48 +1,47 @@
-package com.diagbot.vo;
-
-import javax.validation.constraints.NotNull;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 更新版本详情信息
- * @author wangfeng
- * @Description: TODO
- * @date 2018年11月27日 上午10:20:56
- */
-@Getter
-@Setter
-public class VersionDetailVO {
-
-	   /**
-     * 版本主表id
-     */
-	@NotNull(message = "请输入id")
-    private Long detailId;
-
-    /**
-     * 标题
-     */
-    private String title;
-
-    /**
-     * 描述
-     */
-    private String description;
-
-    /**
-     * 排序号
-     */
-    private String orderNo;
-
-    /**
-     * 1:启动,0:不启用
-     */
-    private String status;
-
-    /**
-     * 备注
-     */
-    private String remark;
-}
+package com.diagbot.vo;
+
+import javax.validation.constraints.NotNull;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 更新版本详情信息
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月27日 上午10:20:56
+ */
+@Getter
+@Setter
+public class VersionDetailVO {
+	   /**
+     * 版本主表id
+     */
+	@NotNull(message = "请输入id")
+    private Long detailId;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 描述
+     */
+    private String description;
+
+    /**
+     * 排序号
+     */
+    private String orderNo;
+
+    /**
+     * 1:启动,0:不启用
+     */
+    private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 48 - 44
icssman-service/src/main/java/com/diagbot/vo/VersionInfoAllVO.java

@@ -1,44 +1,48 @@
-package com.diagbot.vo;
-
-import java.util.Date;
-
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 更新版本信息
- * @author wangfeng
- * @Description: TODO
- * @date 2018年11月29日 下午4:01:30
- */
-@Getter
-@Setter
-public class VersionInfoAllVO {
-	/**
-	 * 版本id
-	 */
-	@NotNull(message = "请输入id")
-	private Long id;
-	/**
-     * 名称
-     */
-    private String name;
-
-    /**
-     * 时间
-     */
-    private String refreshTime;
-
-    /**
-     * 1:启动,0:不启用
-     */
-   // private String status;
-
-    /**
-     * 备注
-     */
-    private String remark;
-}
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * 更新版本信息
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年11月29日 下午4:01:30
+ */
+@Getter
+@Setter
+public class VersionInfoAllVO {
+	/**
+	 * 版本id
+	 */
+	@NotNull(message = "请输入id")
+	private Long id;
+
+	/**
+	 * 产品类型
+	 */
+	@NotNull(message = "产品类型不能为空")
+	private Integer productType;
+
+	/**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 时间
+     */
+    private String refreshTime;
+
+    /**
+     * 1:启动,0:不启用
+     */
+   // private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 26 - 26
icssman-service/src/main/java/com/diagbot/vo/VersionInfoAndDetailIdVO.java

@@ -1,26 +1,26 @@
-package com.diagbot.vo;
-
-import java.util.List;
-
-import javax.validation.constraints.NotNull;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 增加版本详情信息
- * @author wangfeng
- * @Description: TODO
- * @date 2018年12月13日 下午2:35:41
- */
-@Getter
-@Setter
-public class VersionInfoAndDetailIdVO {
-	/**
-	 * 用户id
-	 */
-	@NotNull(message = "请输入id")
-	private Long versionInfoId;
-	
-    private List<VersionDetailVO> versionDetail;
-}
+package com.diagbot.vo;
+
+import java.util.List;
+
+import javax.validation.constraints.NotNull;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 增加版本详情信息
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年12月13日 下午2:35:41
+ */
+@Getter
+@Setter
+public class VersionInfoAndDetailIdVO {
+	/**
+	 * 用户id
+	 */
+	@NotNull(message = "请输入id")
+	private Long versionInfoId;
+	
+    private List<VersionDetailVO> versionDetail;
+}

+ 19 - 19
icssman-service/src/main/java/com/diagbot/vo/VersionInfoIdVO.java

@@ -1,19 +1,19 @@
-package com.diagbot.vo;
-
-import javax.validation.constraints.NotNull;
-
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * 删除版本信息
- * @author wangfeng
- * @Description: TODO
- * @date 2018年12月13日 下午2:35:02
- */
-@Getter
-@Setter
-public class VersionInfoIdVO {
-	@NotNull(message = "请输入id")
-	private Long id;
-}
+package com.diagbot.vo;
+
+import javax.validation.constraints.NotNull;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 删除版本信息
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2018年12月13日 下午2:35:02
+ */
+@Getter
+@Setter
+public class VersionInfoIdVO {
+	@NotNull(message = "请输入id")
+	private Long id;
+}

+ 0 - 0
icssman-service/src/main/java/com/diagbot/vo/VersionInfoVO.java


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