瀏覽代碼

标签相关接口

zhoutg 5 年之前
父節點
當前提交
89478dc4fb
共有 32 個文件被更改,包括 848 次插入124 次删除
  1. 69 0
      mrman-service/src/main/java/com/diagbot/dto/GetModuleDetailInfoDTO.java
  2. 29 0
      mrman-service/src/main/java/com/diagbot/dto/GetModuleInfoOneDTO.java
  3. 19 0
      mrman-service/src/main/java/com/diagbot/dto/GetModuleTypeDTO.java
  4. 23 0
      mrman-service/src/main/java/com/diagbot/dto/ModuleInfoDTO.java
  5. 17 0
      mrman-service/src/main/java/com/diagbot/dto/ModuleInfoListDTO.java
  6. 30 0
      mrman-service/src/main/java/com/diagbot/dto/ModuleQuestionDTO.java
  7. 1 0
      mrman-service/src/main/java/com/diagbot/dto/QuestionDTO.java
  8. 10 0
      mrman-service/src/main/java/com/diagbot/dto/QuestionPageDTO.java
  9. 5 87
      mrman-service/src/main/java/com/diagbot/entity/QcModuleDetail.java
  10. 5 0
      mrman-service/src/main/java/com/diagbot/entity/QcQuestionInfo.java
  11. 1 0
      mrman-service/src/main/java/com/diagbot/entity/wrapper/QuestionWrapper.java
  12. 92 0
      mrman-service/src/main/java/com/diagbot/facade/QcModuleDetailFacade.java
  13. 186 0
      mrman-service/src/main/java/com/diagbot/facade/QcModuleInfoFacade.java
  14. 2 2
      mrman-service/src/main/java/com/diagbot/facade/QcQuestionFacade.java
  15. 5 0
      mrman-service/src/main/java/com/diagbot/mapper/QcModuleDetailMapper.java
  16. 16 1
      mrman-service/src/main/java/com/diagbot/mapper/QcModuleInfoMapper.java
  17. 18 0
      mrman-service/src/main/java/com/diagbot/service/QcModuleDetailService.java
  18. 21 1
      mrman-service/src/main/java/com/diagbot/service/QcModuleInfoService.java
  19. 12 1
      mrman-service/src/main/java/com/diagbot/service/impl/QcModuleDetailServiceImpl.java
  20. 15 1
      mrman-service/src/main/java/com/diagbot/service/impl/QcModuleInfoServiceImpl.java
  21. 19 0
      mrman-service/src/main/java/com/diagbot/vo/AddModuleDetailVO.java
  22. 23 0
      mrman-service/src/main/java/com/diagbot/vo/AddModuleInfoVO.java
  23. 18 0
      mrman-service/src/main/java/com/diagbot/vo/GetModuleInfoOneVO.java
  24. 18 0
      mrman-service/src/main/java/com/diagbot/vo/GetModuleInfoVO.java
  25. 19 0
      mrman-service/src/main/java/com/diagbot/vo/GetModuleTypeVO.java
  26. 37 0
      mrman-service/src/main/java/com/diagbot/vo/ModuleGetQuestionInfoVO.java
  27. 26 0
      mrman-service/src/main/java/com/diagbot/vo/UpdateModuleInfoVO.java
  28. 65 3
      mrman-service/src/main/java/com/diagbot/web/QcModuleInfoController.java
  29. 4 8
      mrman-service/src/main/java/com/diagbot/web/QcQuestionInfoController.java
  30. 0 20
      mrman-service/src/main/java/com/diagbot/web/QcQuestionMappingController.java
  31. 20 0
      mrman-service/src/main/resources/mapper/QcModuleDetailMapper.xml
  32. 23 0
      mrman-service/src/main/resources/mapper/QcModuleInfoMapper.xml

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

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

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

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

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

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

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

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

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

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

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

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

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

@@ -26,6 +26,7 @@ public class QuestionDTO {
     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;//备注

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

@@ -51,6 +51,16 @@ public class QuestionPageDTO implements Serializable {
      */
     private String modifier;
 
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 数据模块ID
+     */
+    private Long modeId;
+
     /**
      * 标签名
      */

+ 5 - 87
mrman-service/src/main/java/com/diagbot/entity/QcModuleDetail.java

@@ -56,6 +56,11 @@ public class QcModuleDetail implements Serializable {
      */
     private Long moduleId;
 
+    /**
+     * 分组Id
+     */
+    private Integer groupId;
+
     /**
      * questionId
      */
@@ -70,91 +75,4 @@ public class QcModuleDetail implements Serializable {
      * 备注
      */
     private String remark;
-
-    public Long getId() {
-        return id;
-    }
-
-    public void setId(Long id) {
-        this.id = id;
-    }
-    public String getIsDeleted() {
-        return isDeleted;
-    }
-
-    public void setIsDeleted(String isDeleted) {
-        this.isDeleted = isDeleted;
-    }
-    public Date getGmtCreate() {
-        return gmtCreate;
-    }
-
-    public void setGmtCreate(Date gmtCreate) {
-        this.gmtCreate = gmtCreate;
-    }
-    public Date getGmtModified() {
-        return gmtModified;
-    }
-
-    public void setGmtModified(Date gmtModified) {
-        this.gmtModified = gmtModified;
-    }
-    public String getCreator() {
-        return creator;
-    }
-
-    public void setCreator(String creator) {
-        this.creator = creator;
-    }
-    public String getModifier() {
-        return modifier;
-    }
-
-    public void setModifier(String modifier) {
-        this.modifier = modifier;
-    }
-    public Long getModuleId() {
-        return moduleId;
-    }
-
-    public void setModuleId(Long moduleId) {
-        this.moduleId = moduleId;
-    }
-    public Long getQuestionId() {
-        return questionId;
-    }
-
-    public void setQuestionId(Long questionId) {
-        this.questionId = questionId;
-    }
-    public Integer getOrderNo() {
-        return orderNo;
-    }
-
-    public void setOrderNo(Integer orderNo) {
-        this.orderNo = orderNo;
-    }
-    public String getRemark() {
-        return remark;
-    }
-
-    public void setRemark(String remark) {
-        this.remark = remark;
-    }
-
-    @Override
-    public String toString() {
-        return "QcModuleDetail{" +
-            "id=" + id +
-            ", isDeleted=" + isDeleted +
-            ", gmtCreate=" + gmtCreate +
-            ", gmtModified=" + gmtModified +
-            ", creator=" + creator +
-            ", modifier=" + modifier +
-            ", moduleId=" + moduleId +
-            ", questionId=" + questionId +
-            ", orderNo=" + orderNo +
-            ", remark=" + remark +
-        "}";
-    }
 }

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

@@ -101,6 +101,11 @@ public class QcQuestionInfo implements Serializable {
      */
     private Integer bold;
 
+    /**
+     * 显示位置(1:靠右显示)
+     */
+    private Integer position;
+
     /**
      * 质控条目id列表
      */

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

@@ -28,6 +28,7 @@ public class QuestionWrapper implements Serializable {
     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<>(); //映射关系

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

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

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

@@ -0,0 +1,186 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.client.UserServiceClient;
+import com.diagbot.dto.GetModuleInfoOneDTO;
+import com.diagbot.dto.ModuleInfoListDTO;
+import com.diagbot.dto.QuestionDTO;
+import com.diagbot.entity.QcModuleDetail;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.impl.QcModuleInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.UserUtils;
+import com.diagbot.vo.AddModuleInfoVO;
+import com.diagbot.vo.GetModuleInfoOneVO;
+import com.diagbot.vo.GetModuleInfoVO;
+import com.diagbot.vo.QuestionIdsVO;
+import com.diagbot.vo.UpdateModuleInfoVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Arrays;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
+
+    @Autowired
+    QcModuleDetailFacade qcModuleDetailFacade;
+    @Autowired
+    UserServiceClient userServiceClient;
+    @Autowired
+    DictionaryFacade dictionaryFacade;
+    @Autowired
+    QcQuestionFacade qcQuestionFacade;
+
+    /**
+     * 根据id删除标签模板
+     *
+     * @param ids
+     * @return
+     */
+    public Boolean deleteByIdsFac(String ids) {
+        String userId = UserUtils.getCurrentPrincipleID();
+        Date date = DateUtil.now();
+        Map paramMap = new HashMap<>();
+        paramMap.put("delete", IsDeleteEnum.Y.getKey());
+        paramMap.put("ids", Arrays.asList(ids.split(",")));
+        paramMap.put("gmtModified", date);
+        paramMap.put("modifier", userId);
+
+        //删除模板
+        this.deleteByIds(paramMap);
+
+        //删除明细表
+        qcModuleDetailFacade.deleteByModuleIdFac(paramMap);
+        return true;
+    }
+
+    /**
+     * 添加模板
+     *
+     * @param addModulInfoVO
+     * @return
+     */
+    public Boolean saveOrUpdateModuleInfo(AddModuleInfoVO addModulInfoVO) {
+        Long moduleId = null;
+        Boolean bac = false;
+        if (addModulInfoVO.getId() == null) {
+            String userId = UserUtils.getCurrentPrincipleID();
+            Date now = DateUtil.now();
+            QcModuleInfo moduleInfo = new QcModuleInfo();
+            BeanUtil.copyProperties(addModulInfoVO, moduleInfo);
+            moduleInfo.setCreator(userId);
+            moduleInfo.setModifier(userId);
+            moduleInfo.setGmtCreate(now);
+            moduleInfo.setGmtModified(now);
+            this.save(moduleInfo);
+            moduleId = moduleInfo.getId();
+            bac = qcModuleDetailFacade.saveOrUpdateInfos(addModulInfoVO, moduleId);
+        } else {
+            UpdateModuleInfoVO updateModuleInfoVO = new UpdateModuleInfoVO();
+            BeanUtil.copyProperties(addModulInfoVO, updateModuleInfoVO);
+            bac = this.updateModuleInfo(updateModuleInfoVO);
+        }
+        return bac;
+    }
+
+    /**
+     * 修改模板
+     *
+     * @param updateModuleInfoVO
+     * @return
+     */
+    public Boolean updateModuleInfo(UpdateModuleInfoVO updateModuleInfoVO) {
+        String userId = UserUtils.getCurrentPrincipleID();
+        UpdateWrapper<QcModuleInfo> moduleInfoUpdateWrapper = new UpdateWrapper<>();
+        moduleInfoUpdateWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", updateModuleInfoVO.getId())
+                .set("name", updateModuleInfoVO.getName())
+                .set("modifier", userId)
+                .set("gmt_modified", DateUtil.now())
+                .set("remark", updateModuleInfoVO.getRemark());
+        this.update(new QcModuleInfo(), moduleInfoUpdateWrapper);
+        AddModuleInfoVO addModuleInfoVO = new AddModuleInfoVO();
+        BeanUtil.copyProperties(updateModuleInfoVO, addModuleInfoVO);
+        return qcModuleDetailFacade.saveOrUpdateInfos(addModuleInfoVO, updateModuleInfoVO.getId());
+    }
+
+
+    /**
+     * 模板维护页面获取模板列表
+     *
+     * @param getModuleInfoVO
+     * @return
+     */
+    public IPage<ModuleInfoListDTO> getModuleInfoList(GetModuleInfoVO getModuleInfoVO) {
+        //获取模板信息
+        IPage<ModuleInfoListDTO> moduleInfoDTOIPage = this.getModuleInfoListByType(getModuleInfoVO);
+        return moduleInfoDTOIPage;
+    }
+
+    /**
+     * 模板维护页面获取模板列表
+     *
+     * @param getModuleInfoOneVO
+     * @return
+     */
+    public GetModuleInfoOneDTO getModuleInfoOne(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<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);
+
+
+//        Map<Integer, List<QcModuleDetail>> map = EntityUtil.makeEntityListMap(qcModuleDetailList, "groupId");
+//        getModuleInfoOneDTO.setModuleDetail(map);
+        return getModuleInfoOneDTO;
+    }
+
+
+//    /**
+//     * 获取模板信息
+//     *
+//     * @param moduleType
+//     * @param type
+//     * @return
+//     */
+//    public List<ModuleInfo> getModuleInfos(Long moduleType, String type) {
+//        QueryWrapper<ModuleInfo> moduleInfoQueryWrapper = new QueryWrapper<>();
+//        moduleInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+//                .eq("module_type", moduleType)
+//                .eq("type", type);
+//        return this.list(moduleInfoQueryWrapper);
+//    }
+}

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

@@ -367,8 +367,8 @@ public class QcQuestionFacade extends QcQuestionInfoServiceImpl {
      * @param questionIdsVO 获取标签内容参数
      * @return 标签内容
      */
-    public Map<Long, Object> getByIds(QuestionIdsVO questionIdsVO) {
-        Map<Long, Object> data = new HashMap<>();
+    public Map<Long, QuestionDTO> getByIds(QuestionIdsVO questionIdsVO) {
+        Map<Long, QuestionDTO> data = new HashMap<>();
         if (StringUtil.isEmpty(questionIdsVO.getIds())) {
             return data;
         }

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

@@ -3,6 +3,8 @@ package com.diagbot.mapper;
 import com.diagbot.entity.QcModuleDetail;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
+import java.util.Map;
+
 /**
  * <p>
  * 模型明细表 Mapper 接口
@@ -13,4 +15,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface QcModuleDetailMapper extends BaseMapper<QcModuleDetail> {
 
+    public void deleteByQuestionIds(Map map);
+
+    public void deleteByModuleIds(Map map);
 }

+ 16 - 1
mrman-service/src/main/java/com/diagbot/mapper/QcModuleInfoMapper.java

@@ -1,7 +1,12 @@
 package com.diagbot.mapper;
 
-import com.diagbot.entity.QcModuleInfo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.ModuleInfoListDTO;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.vo.GetModuleInfoVO;
+
+import java.util.Map;
 
 /**
  * <p>
@@ -13,4 +18,14 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface QcModuleInfoMapper extends BaseMapper<QcModuleInfo> {
 
+
+    public void deleteByIds(Map map);
+
+    /**
+     * 获取模板列表
+     *
+     * @param getModuleInfoVO
+     * @return
+     */
+    public IPage<ModuleInfoListDTO> getModuleInfoListByType(GetModuleInfoVO getModuleInfoVO);
 }

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

@@ -3,6 +3,8 @@ package com.diagbot.service;
 import com.diagbot.entity.QcModuleDetail;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.Map;
+
 /**
  * <p>
  * 模型明细表 服务类
@@ -13,4 +15,20 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface QcModuleDetailService extends IService<QcModuleDetail> {
 
+    /**
+     * 根据id删除标签
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByQuestionIds(Map map);
+
+
+    /**
+     * 根据id删除标签模板
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByModuleIds(Map map);
 }

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

@@ -1,7 +1,12 @@
 package com.diagbot.service;
 
-import com.diagbot.entity.QcModuleInfo;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.ModuleInfoListDTO;
+import com.diagbot.entity.QcModuleInfo;
+import com.diagbot.vo.GetModuleInfoVO;
+
+import java.util.Map;
 
 /**
  * <p>
@@ -13,4 +18,19 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface QcModuleInfoService extends IService<QcModuleInfo> {
 
+    /**
+     * 根据id删除标签模板
+     *
+     * @param map
+     * @return
+     */
+    public void deleteByIds(Map map);
+
+    /**
+     * 获取模板列表
+     *
+     * @param getModuleInfoVO
+     * @return
+     */
+    public IPage<ModuleInfoListDTO> getModuleInfoListByType(GetModuleInfoVO getModuleInfoVO);
 }

+ 12 - 1
mrman-service/src/main/java/com/diagbot/service/impl/QcModuleDetailServiceImpl.java

@@ -1,11 +1,13 @@
 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 com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
+import java.util.Map;
+
 /**
  * <p>
  * 模型明细表 服务实现类
@@ -17,4 +19,13 @@ import org.springframework.stereotype.Service;
 @Service
 public class QcModuleDetailServiceImpl extends ServiceImpl<QcModuleDetailMapper, QcModuleDetail> implements QcModuleDetailService {
 
+    @Override
+    public void deleteByQuestionIds(Map map) {
+        baseMapper.deleteByQuestionIds(map);
+    }
+
+    @Override
+    public void deleteByModuleIds(Map map) {
+        baseMapper.deleteByModuleIds(map);
+    }
 }

+ 15 - 1
mrman-service/src/main/java/com/diagbot/service/impl/QcModuleInfoServiceImpl.java

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

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

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

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

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

+ 18 - 0
mrman-service/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;
+}

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

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/26 15:27
+ */
+@Getter
+@Setter
+public class GetModuleInfoVO extends Page {
+    private String name; // 模板名称
+    private Long hospitalId; //医院ID
+    private Long modeId; //数据模块ID
+}

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

@@ -0,0 +1,19 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/3/28 14:46
+ */
+@Getter
+@Setter
+public class GetModuleTypeVO {
+    @NotNull(message = "请输入moduleType")
+    private Long moduleType;
+    private Long relationId;
+}

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

@@ -0,0 +1,37 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/25 17:26
+ */
+@Getter
+@Setter
+public class ModuleGetQuestionInfoVO {
+    /**
+     * 标签名称
+     */
+    private String tagName;
+
+    /**
+     * 模板id
+     */
+    private String moduleId;
+
+    /**
+     * 要去重的id
+     */
+    private List<Long> noIds;
+
+    /**
+     * 标签类型
+     */
+    @NotNull(message = "归属类型不能为空")
+    private Integer type;
+}

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

@@ -0,0 +1,26 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/12/24 11:35
+ */
+@Getter
+@Setter
+public class UpdateModuleInfoVO {
+    @NotNull(message="模板id不能为空")
+    private Long id;
+    @NotNull(message="模板名称不能为空")
+    private String name;
+    private Long hospitalId; //医院ID
+    private Long modeId; //数据模块ID
+    @NotNull(message="标签id不能为空")
+    private List<AddModuleDetailVO> moduleDetail;
+    private String remark;
+}

+ 65 - 3
mrman-service/src/main/java/com/diagbot/web/QcModuleInfoController.java

@@ -1,9 +1,24 @@
 package com.diagbot.web;
 
-
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.GetModuleInfoOneDTO;
+import com.diagbot.dto.ModuleInfoListDTO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.facade.QcModuleInfoFacade;
+import com.diagbot.vo.AddModuleInfoVO;
+import com.diagbot.vo.DeleteModuleVO;
+import com.diagbot.vo.GetModuleInfoOneVO;
+import com.diagbot.vo.GetModuleInfoVO;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+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.stereotype.Controller;
+import javax.validation.Valid;
 
 /**
  * <p>
@@ -14,7 +29,54 @@ import org.springframework.stereotype.Controller;
  * @since 2020-04-27
  */
 @Controller
-@RequestMapping("/qcModuleInfo")
+@RequestMapping("/qc/qcModuleInfo")
 public class QcModuleInfoController {
 
+    @Autowired
+    QcModuleInfoFacade qcModuleInfoFacade;
+
+    @ApiOperation(value = "模板新增或修改[by:zhoutg]",
+            notes = "id,修改时传,新增不用传<br>" +
+                    "name: 模板名称,必填<br>" +
+                    "modeId: 数据模块ID,必填<br>" +
+                    "hospitalId: 医院ID,必填<br>" +
+                    "moduleDetail: 标签列表<br>" +
+                    "remark:备注")
+    @PostMapping("/saveOrUpdateModuleInfo")
+    @SysLogger("saveOrUpdateModuleInfo")
+    @Transactional
+    public RespDTO<Boolean> saveOrUpdateModuleInfo(@Valid @RequestBody AddModuleInfoVO addModuleInfoVO) {
+        Boolean data = qcModuleInfoFacade.saveOrUpdateModuleInfo(addModuleInfoVO);
+        return RespDTO.onSuc(data);
+    }
+
+    @ApiOperation(value = "模板删除[by:zhoutg]",
+            notes = "")
+    @PostMapping("/delete")
+    @SysLogger("delete")
+    @Transactional
+    public RespDTO<Boolean> delete(@RequestBody DeleteModuleVO deleteModuleVO) {
+        qcModuleInfoFacade.deleteByIdsFac(deleteModuleVO.getIds());
+        return RespDTO.onSuc(true);
+    }
+
+    @ApiOperation(value = "模板分页列表(主页面查询)[by:zhoutg]",
+            notes = "name: 模板名称<br>" +
+                    "modeId: 数据模块ID<br>" +
+                    "hospitalId: 医院ID<br>")
+    @PostMapping("/page")
+    @SysLogger("page")
+    public RespDTO<IPage<ModuleInfoListDTO>> getModuleInfoList(@RequestBody GetModuleInfoVO getModuleInfoVO) {
+        IPage<ModuleInfoListDTO> date = qcModuleInfoFacade.getModuleInfoList(getModuleInfoVO);
+        return RespDTO.onSuc(date);
+    }
+
+    @ApiOperation(value = "获取单个模板信息(修改用)[by:zhoutg]",
+            notes = "moduleId: 模板id<br>")
+    @PostMapping("/getById")
+    @SysLogger("getById")
+    public RespDTO<GetModuleInfoOneDTO> getModuleInfoOne(@RequestBody GetModuleInfoOneVO getModuleInfoVO) {
+        GetModuleInfoOneDTO date = qcModuleInfoFacade.getModuleInfoOne(getModuleInfoVO);
+        return RespDTO.onSuc(date);
+    }
 }

+ 4 - 8
mrman-service/src/main/java/com/diagbot/web/QcQuestionInfoController.java

@@ -93,9 +93,7 @@ public class QcQuestionInfoController {
 
 
     @ApiOperation(value = "根据参数返回标签内容[by:zhoutg]",
-            notes = "id: questionId<br>" +
-                    "sexType:性别,1:男,2:女<br>" +
-                    "age:年龄")
+            notes = "id: questionId<br>" )
     @PostMapping("/getById")
     public RespDTO<QuestionDTO> getById(@RequestBody QuestionVO questionVO) {
         QuestionDTO data = qcQuestionFacade.getById(questionVO);
@@ -104,12 +102,10 @@ public class QcQuestionInfoController {
 
 
     @ApiOperation(value = "查询多个id返回标签内容[by:zhoutg]",
-            notes = "ids: 多个questionId<br>" +
-                    "sexType:性别,1:男,2:女<br>" +
-                    "age:年龄")
+            notes = "ids: 多个questionId<br>")
     @PostMapping("/getByIds")
-    public RespDTO<Map<Long, Object>> getByIds(@RequestBody QuestionIdsVO questionIdsVO) {
-        Map<Long, Object> data = qcQuestionFacade.getByIds(questionIdsVO);
+    public RespDTO<Map<Long, QuestionDTO>> getByIds(@RequestBody QuestionIdsVO questionIdsVO) {
+        Map<Long, QuestionDTO> data = qcQuestionFacade.getByIds(questionIdsVO);
         return RespDTO.onSuc(data);
     }
 }

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

@@ -1,20 +0,0 @@
-package com.diagbot.web;
-
-
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.stereotype.Controller;
-
-/**
- * <p>
- * 标签映射表 前端控制器
- * </p>
- *
- * @author zhoutg
- * @since 2020-04-27
- */
-@Controller
-@RequestMapping("/qcQuestionMapping")
-public class QcQuestionMappingController {
-
-}

+ 20 - 0
mrman-service/src/main/resources/mapper/QcModuleDetailMapper.xml

@@ -16,4 +16,24 @@
         <result column="remark" property="remark" />
     </resultMap>
 
+    <delete id="deleteByQuestionIds" parameterType="java.util.Map">
+        update `qc_module_detail`
+        set gmt_modified = #{gmtModified}, modifier = #{modifier}, is_deleted = #{delete}
+        where is_deleted = 'N'
+        and question_id in
+        <foreach item="id" collection="ids" open="(" separator="," close=")" >
+            #{id}
+        </foreach>
+    </delete>
+
+
+    <delete id="deleteByModuleIds" parameterType="java.util.Map">
+        update `qc_module_detail`
+        set gmt_modified = #{gmtModified}, modifier = #{modifier}, is_deleted = #{delete}
+        where is_deleted = 'N'
+        and module_id in
+        <foreach item="id" collection="ids" open="(" separator="," close=")" >
+            #{id}
+        </foreach>
+    </delete>
 </mapper>

+ 23 - 0
mrman-service/src/main/resources/mapper/QcModuleInfoMapper.xml

@@ -16,4 +16,27 @@
         <result column="remark" property="remark" />
     </resultMap>
 
+    <delete id="deleteByIds" parameterType="java.util.Map">
+        update `qc_module_info`
+        set gmt_modified = #{gmtModified}, modifier = #{modifier}, is_deleted = #{delete}
+        where is_deleted = 'N'
+        and id in
+        <foreach item="id" collection="ids" open="(" separator="," close=")" >
+            #{id}
+        </foreach>
+    </delete>
+
+    <select id="getModuleInfoListByType" resultType="com.diagbot.dto.ModuleInfoListDTO">
+        SELECT * FROM `qc_module_info` WHERE is_deleted = 'N'
+        <if test="name != null and name != ''">
+            and UPPER(name) like concat ('%',UPPER(trim(#{name})),'%')
+        </if>
+        <if test="hospitalId != null">
+            AND hospital_id = #{hospitalId}
+        </if>
+        <if test="modeId != null">
+            AND mode_id = #{modeId}
+        </if>
+        order by gmt_modified desc
+    </select>
 </mapper>