Quellcode durchsuchen

模板接口拷贝

zhoutg vor 5 Jahren
Ursprung
Commit
6cd36f77aa
36 geänderte Dateien mit 1144 neuen und 0 gelöschten Zeilen
  1. 1 0
      src/main/java/com/diagbot/config/ResourceServerConfigurer.java
  2. 1 0
      src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java
  3. 29 0
      src/main/java/com/diagbot/dto/GetModuleInfoOneDTO.java
  4. 32 0
      src/main/java/com/diagbot/dto/QcModuleDetailDTO.java
  5. 33 0
      src/main/java/com/diagbot/dto/QuestionDTO.java
  6. 78 0
      src/main/java/com/diagbot/entity/QcModuleDetail.java
  7. 73 0
      src/main/java/com/diagbot/entity/QcModuleInfo.java
  8. 118 0
      src/main/java/com/diagbot/entity/QcQuestionInfo.java
  9. 73 0
      src/main/java/com/diagbot/entity/QcQuestionMapping.java
  10. 21 0
      src/main/java/com/diagbot/entity/wrapper/QuestionInfoWrapper.java
  11. 42 0
      src/main/java/com/diagbot/entity/wrapper/QuestionMappingWrapper.java
  12. 35 0
      src/main/java/com/diagbot/entity/wrapper/QuestionWrapper.java
  13. 14 0
      src/main/java/com/diagbot/facade/QcModuleDetailFacade.java
  14. 77 0
      src/main/java/com/diagbot/facade/QcModuleInfoFacade.java
  15. 74 0
      src/main/java/com/diagbot/facade/QcQuestionFacade.java
  16. 14 0
      src/main/java/com/diagbot/facade/QcQuestionMappingFacade.java
  17. 15 0
      src/main/java/com/diagbot/facade/QuestionVO.java
  18. 16 0
      src/main/java/com/diagbot/mapper/QcModuleDetailMapper.java
  19. 15 0
      src/main/java/com/diagbot/mapper/QcModuleInfoMapper.java
  20. 22 0
      src/main/java/com/diagbot/mapper/QcQuestionInfoMapper.java
  21. 16 0
      src/main/java/com/diagbot/mapper/QcQuestionMappingMapper.java
  22. 16 0
      src/main/java/com/diagbot/service/QcModuleDetailService.java
  23. 16 0
      src/main/java/com/diagbot/service/QcModuleInfoService.java
  24. 28 0
      src/main/java/com/diagbot/service/QcQuestionInfoService.java
  25. 16 0
      src/main/java/com/diagbot/service/QcQuestionMappingService.java
  26. 22 0
      src/main/java/com/diagbot/service/impl/QcModuleDetailServiceImpl.java
  27. 20 0
      src/main/java/com/diagbot/service/impl/QcModuleInfoServiceImpl.java
  28. 28 0
      src/main/java/com/diagbot/service/impl/QcQuestionInfoServiceImpl.java
  29. 22 0
      src/main/java/com/diagbot/service/impl/QcQuestionMappingServiceImpl.java
  30. 18 0
      src/main/java/com/diagbot/vo/GetModuleInfoOneVO.java
  31. 15 0
      src/main/java/com/diagbot/vo/QuestionIdsVO.java
  32. 41 0
      src/main/java/com/diagbot/web/QcModuleInfoController.java
  33. 19 0
      src/main/resources/mapper/QcModuleDetailMapper.xml
  34. 19 0
      src/main/resources/mapper/QcModuleInfoMapper.xml
  35. 46 0
      src/main/resources/mapper/QcQuestionInfoMapper.xml
  36. 19 0
      src/main/resources/mapper/QcQuestionMappingMapper.xml

+ 1 - 0
src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -47,6 +47,7 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/qc/behospitalInfo/execule").permitAll()
                 .antMatchers("/qc/behospitalInfo/analyze_rpc").permitAll()
                 .antMatchers("/qc/behospitalInfo/analyze_api").permitAll()
+                .antMatchers("/qc/module/getById").permitAll()
                 .antMatchers("/**").authenticated();
 //                .antMatchers("/**").permitAll();
     }

+ 1 - 0
src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -90,6 +90,7 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/qc/behospitalInfo/execule", request)
                 || matchers("/qc/behospitalInfo/analyze_rpc", request)
                 || matchers("/qc/behospitalInfo/analyze_api", request)
+                || matchers("/qc/module/getById", request)
                 || matchers("/", request)) {
             return true;
         }

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

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

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

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

+ 33 - 0
src/main/java/com/diagbot/dto/QuestionDTO.java

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

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

@@ -0,0 +1,78 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 模型明细表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Data
+public class QcModuleDetail implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * module_id
+     */
+    private Long moduleId;
+
+    /**
+     * 分组Id
+     */
+    private Integer groupId;
+
+    /**
+     * questionId
+     */
+    private Long questionId;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 73 - 0
src/main/java/com/diagbot/entity/QcModuleInfo.java

@@ -0,0 +1,73 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 模型表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Data
+public class QcModuleInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 模板名称
+     */
+    private String name;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 数据模块ID
+     */
+    private Long modeId;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 118 - 0
src/main/java/com/diagbot/entity/QcQuestionInfo.java

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

+ 73 - 0
src/main/java/com/diagbot/entity/QcQuestionMapping.java

@@ -0,0 +1,73 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 标签映射表
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Data
+public class QcQuestionMapping implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 上级question
+     */
+    private Long parentQuestion;
+
+    /**
+     * 下级question
+     */
+    private Long sonQuestion;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

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

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

+ 42 - 0
src/main/java/com/diagbot/entity/wrapper/QuestionMappingWrapper.java

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

+ 35 - 0
src/main/java/com/diagbot/entity/wrapper/QuestionWrapper.java

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

+ 14 - 0
src/main/java/com/diagbot/facade/QcModuleDetailFacade.java

@@ -0,0 +1,14 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.QcModuleDetailServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class QcModuleDetailFacade extends QcModuleDetailServiceImpl {
+
+}

+ 77 - 0
src/main/java/com/diagbot/facade/QcModuleInfoFacade.java

@@ -0,0 +1,77 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.GetModuleInfoOneDTO;
+import com.diagbot.dto.QcModuleDetailDTO;
+import com.diagbot.dto.QuestionDTO;
+import com.diagbot.entity.QcModuleDetail;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.QcModuleInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.vo.GetModuleInfoOneVO;
+import com.diagbot.vo.QuestionIdsVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
+
+    @Autowired
+    QcModuleDetailFacade qcModuleDetailFacade;
+    @Autowired
+    QcQuestionFacade qcQuestionFacade;
+
+    /**
+     * 根据id获取模板信息
+     *
+     * @param getModuleInfoOneVO
+     * @return
+     */
+    public GetModuleInfoOneDTO getById(GetModuleInfoOneVO getModuleInfoOneVO) {
+        GetModuleInfoOneDTO getModuleInfoOneDTO = new GetModuleInfoOneDTO();
+        //获取模板信息
+        QueryWrapper<QcModuleInfo> moduleInfoQueryWrapper = new QueryWrapper<>();
+        moduleInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", getModuleInfoOneVO.getModuleId());
+        QcModuleInfo moduleInfo = this.getOne(moduleInfoQueryWrapper, false);
+        if (null == moduleInfo) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
+                    "模板已删除【" + getModuleInfoOneVO.getModuleId() + "】");
+        }
+        BeanUtil.copyProperties(moduleInfo, getModuleInfoOneDTO);
+        List<QcModuleDetail> qcModuleDetailList = qcModuleDetailFacade.list(new QueryWrapper<QcModuleDetail>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("module_id", getModuleInfoOneDTO.getId())
+                .orderByDesc("order_no")
+        );
+        List<QcModuleDetailDTO> qcModuleDetailDTOList = BeanUtil.listCopyTo(qcModuleDetailList, QcModuleDetailDTO.class);
+
+        // 根据questionId获取所有的标签
+        List<String> questionIds = qcModuleDetailList.stream().map(r -> r.getQuestionId().toString()).collect(Collectors.toList());
+        QuestionIdsVO questionIdsVO = new QuestionIdsVO();
+        questionIdsVO.setIds(String.join(",", questionIds));
+        Map<Long, QuestionDTO> questionDTOMap = qcQuestionFacade.getByIds(questionIdsVO);
+        for (QcModuleDetailDTO bean : qcModuleDetailDTOList) {
+            QuestionDTO questionDTO = questionDTOMap.get(bean.getQuestionId());
+            if (questionDTO != null) {
+                bean.setQuestionDTO(questionDTO);
+            }
+        }
+        Map<Integer, List<QcModuleDetailDTO>> map = EntityUtil.makeEntityListMap(qcModuleDetailDTOList, "groupId");
+        getModuleInfoOneDTO.setModuleDetail(map);
+        return getModuleInfoOneDTO;
+    }
+}

+ 74 - 0
src/main/java/com/diagbot/facade/QcQuestionFacade.java

@@ -0,0 +1,74 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.QuestionDTO;
+import com.diagbot.entity.QcQuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.impl.QcQuestionInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.vo.QuestionIdsVO;
+import org.springframework.stereotype.Component;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class QcQuestionFacade extends QcQuestionInfoServiceImpl {
+
+    /**
+     * 根据参数返回标签内容
+     *
+     * @param questionVO 获取标签内容参数
+     * @return 标签内容
+     */
+    public QuestionDTO getById(QuestionVO questionVO) {
+        Map paramMap = new HashMap<>();
+        paramMap.put("id", questionVO.getId());
+
+        QcQuestionInfo questionInfo = this.getOne(new QueryWrapper<QcQuestionInfo>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", questionVO.getId()), false
+        );
+        if (questionInfo == null) { //无数据直接返回,不通过报错的形式返回
+            return new QuestionDTO();
+        }
+        QuestionDTO res = new QuestionDTO();
+        BeanUtil.copyProperties(questionInfo, res);
+
+        //获取子标签
+        List<QuestionInfoWrapper> questionMapping = this.getByQuestionMapping(paramMap);
+        List<QuestionDTO> sonQuestionList = BeanUtil.listCopyTo(questionMapping, QuestionDTO.class);
+        res.setQuestionMapping(sonQuestionList);
+        return res;
+    }
+
+
+    /**
+     * 查询多个id返回标签内容
+     *
+     * @param questionIdsVO 获取标签内容参数
+     * @return 标签内容
+     */
+    public Map<Long, QuestionDTO> getByIds(QuestionIdsVO questionIdsVO) {
+        Map<Long, QuestionDTO> data = new HashMap<>();
+        if (StringUtil.isEmpty(questionIdsVO.getIds())) {
+            return data;
+        }
+        String[] ids = questionIdsVO.getIds().split(",");
+        for (String id : ids) {
+            QuestionVO questionVO = new QuestionVO();
+            questionVO.setId(Long.parseLong(id));
+            QuestionDTO item = this.getById(questionVO);
+            data.put(item.getId(), item);
+        }
+        return data;
+    }
+}

+ 14 - 0
src/main/java/com/diagbot/facade/QcQuestionMappingFacade.java

@@ -0,0 +1,14 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.QcQuestionMappingServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author zhoutg
+ * @Description:
+ * @date 2020-03-10 16:32
+ */
+@Component
+public class QcQuestionMappingFacade extends QcQuestionMappingServiceImpl {
+
+}

+ 15 - 0
src/main/java/com/diagbot/facade/QuestionVO.java

@@ -0,0 +1,15 @@
+package com.diagbot.facade;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: zhoutg
+ * @time: 2018/8/6 10:16
+ */
+@Getter
+@Setter
+public class QuestionVO {
+    private Long id;
+}

+ 16 - 0
src/main/java/com/diagbot/mapper/QcModuleDetailMapper.java

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

+ 15 - 0
src/main/java/com/diagbot/mapper/QcModuleInfoMapper.java

@@ -0,0 +1,15 @@
+package com.diagbot.mapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.entity.QcModuleInfo;
+
+/**
+ * <p>
+ * 模型表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcModuleInfoMapper extends BaseMapper<QcModuleInfo> {
+
+}

+ 22 - 0
src/main/java/com/diagbot/mapper/QcQuestionInfoMapper.java

@@ -0,0 +1,22 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.entity.QcQuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签基础表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcQuestionInfoMapper extends BaseMapper<QcQuestionInfo> {
+
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map);
+
+}

+ 16 - 0
src/main/java/com/diagbot/mapper/QcQuestionMappingMapper.java

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.entity.QcQuestionMapping;
+
+/**
+ * <p>
+ * 标签映射表 Mapper 接口
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcQuestionMappingMapper extends BaseMapper<QcQuestionMapping> {
+
+}

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

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

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

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

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

@@ -0,0 +1,28 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.entity.QcQuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签基础表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcQuestionInfoService extends IService<QcQuestionInfo> {
+
+    /**
+     * 根据questionMapping获取标签信息
+     *
+     * @param map 参数
+     * @return
+     */
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map);
+
+}

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

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.entity.QcQuestionMapping;
+
+/**
+ * <p>
+ * 标签映射表 服务类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+public interface QcQuestionMappingService extends IService<QcQuestionMapping> {
+
+}

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

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

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

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.mapper.QcModuleInfoMapper;
+import com.diagbot.service.QcModuleInfoService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 模型表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Service
+public class QcModuleInfoServiceImpl extends ServiceImpl<QcModuleInfoMapper, QcModuleInfo> implements QcModuleInfoService {
+
+}

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

@@ -0,0 +1,28 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.entity.QcQuestionInfo;
+import com.diagbot.entity.wrapper.QuestionInfoWrapper;
+import com.diagbot.mapper.QcQuestionInfoMapper;
+import com.diagbot.service.QcQuestionInfoService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 标签基础表 服务实现类
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-27
+ */
+@Service
+public class QcQuestionInfoServiceImpl extends ServiceImpl<QcQuestionInfoMapper, QcQuestionInfo> implements QcQuestionInfoService {
+
+    @Override
+    public List<QuestionInfoWrapper> getByQuestionMapping(Map map) {
+        return baseMapper.getByQuestionMapping(map);
+    }
+}

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

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

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

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/28 17:03
+ */
+@Getter
+@Setter
+public class GetModuleInfoOneVO {
+    /**
+     * 模板id
+     */
+    private Long moduleId;
+}

+ 15 - 0
src/main/java/com/diagbot/vo/QuestionIdsVO.java

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

+ 41 - 0
src/main/java/com/diagbot/web/QcModuleInfoController.java

@@ -0,0 +1,41 @@
+package com.diagbot.web;
+
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.GetModuleInfoOneDTO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.facade.QcModuleInfoFacade;
+import com.diagbot.vo.GetModuleInfoOneVO;
+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 zhoutg
+ * @since 2020-04-27
+ */
+@RestController
+@RequestMapping("/qc/module")
+@SuppressWarnings("unchecked")
+@Api(value = "模板相关API", tags = { "模板相关API" })
+public class QcModuleInfoController {
+
+    @Autowired
+    QcModuleInfoFacade qcModuleInfoFacade;
+
+    @ApiOperation(value = "根据id获取模板信息[by:zhoutg]",
+            notes = "moduleId: 模板id<br>")
+    @PostMapping("/getById")
+    @SysLogger("getById")
+    public RespDTO<GetModuleInfoOneDTO> getById(@RequestBody GetModuleInfoOneVO getModuleInfoVO) {
+        GetModuleInfoOneDTO date = qcModuleInfoFacade.getById(getModuleInfoVO);
+        return RespDTO.onSuc(date);
+    }
+}

+ 19 - 0
src/main/resources/mapper/QcModuleDetailMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.QcModuleDetailMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.QcModuleDetail">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="module_id" property="moduleId" />
+        <result column="question_id" property="questionId" />
+        <result column="order_no" property="orderNo" />
+        <result column="remark" property="remark" />
+    </resultMap>
+
+</mapper>

+ 19 - 0
src/main/resources/mapper/QcModuleInfoMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.QcModuleInfoMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.QcModuleInfo">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="name" property="name" />
+        <result column="hospital_id" property="hospitalId" />
+        <result column="mode_id" property="modeId" />
+        <result column="remark" property="remark" />
+    </resultMap>
+
+</mapper>

+ 46 - 0
src/main/resources/mapper/QcQuestionInfoMapper.xml

@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.QcQuestionInfoMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.QcQuestionInfo">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="hospital_id" property="hospitalId" />
+        <result column="mode_id" property="modeId" />
+        <result column="tag_name" property="tagName" />
+        <result column="name" property="name" />
+        <result column="val" property="val" />
+        <result column="tag_type" property="tagType" />
+        <result column="control_type" property="controlType" />
+        <result column="retract" property="retract" />
+        <result column="add_line" property="addLine" />
+        <result column="bold" property="bold" />
+        <result column="cases_entry_ids" property="casesEntryIds" />
+        <result column="remark" property="remark" />
+    </resultMap>
+
+
+    <select id="getByQuestionMapping" parameterType="java.util.Map" resultType="com.diagbot.entity.wrapper.QuestionInfoWrapper">
+        select t.*, m.parent_question from qc_question_info t, qc_question_mapping m
+        where t.is_deleted = 'N' and m.is_deleted = 'N' and m.son_question = t.id
+        <if test="id != null">
+            and m.parent_question = #{id}
+        </if>
+        <if test="ids != null and ids.size > 0">
+            <foreach item="myId" collection="ids" open="and(" separator="or" close=")" >
+                m.parent_question = #{myId}
+            </foreach>
+        </if>
+        <if test="id != null">
+            order by m.order_no
+        </if>
+        <if test="ids != null and ids.size > 0">
+            order by m.parent_question, m.order_no
+        </if>
+    </select>
+</mapper>

+ 19 - 0
src/main/resources/mapper/QcQuestionMappingMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.QcQuestionMappingMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.QcQuestionMapping">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="parent_question" property="parentQuestion" />
+        <result column="son_question" property="sonQuestion" />
+        <result column="order_no" property="orderNo" />
+        <result column="remark" property="remark" />
+    </resultMap>
+
+</mapper>