Browse Source

Merge branch 'dev/icssNCD' of http://192.168.2.236:10080/gaodm/diagbotcloud.git into dev/icssNCD

wangfeng 6 years ago
parent
commit
5a395925e9

+ 32 - 0
icssman-service/src/main/java/com/diagbot/dto/GetDisScaleAllInfoDTO.java

@@ -0,0 +1,32 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/4/1 16:12
+ */
+@Getter
+@Setter
+public class GetDisScaleAllInfoDTO{
+    //id
+    private Long id;
+    //记录修改时间,如果时间是1970年则表示纪录未修改
+    private Date gmtModified;
+    //诊断id
+    private Long disId;
+    //量表id
+    private Long scaleId;
+    //修改人
+    private String modifier;
+    //诊断名称
+    private String disName;
+    //量表名称
+    private String scaleName;
+    //操作人名称
+    private String userName;
+}

+ 160 - 0
icssman-service/src/main/java/com/diagbot/entity/DisScale.java

@@ -0,0 +1,160 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 诊断量表映射表
+ * </p>
+ *
+ * @author wangyu
+ * @since 2019-04-01
+ */
+@TableName("icss_dis_scale")
+public class DisScale 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 disId;
+
+    /**
+     * 量表标签id
+     */
+    private Long scaleId;
+
+    /**
+     * 排序号
+     */
+    private Integer orderNo;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public 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 getDisId() {
+        return disId;
+    }
+
+    public void setDisId(Long disId) {
+        this.disId = disId;
+    }
+    public Long getScaleId() {
+        return scaleId;
+    }
+
+    public void setScaleId(Long scaleId) {
+        this.scaleId = scaleId;
+    }
+    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 "DisScale{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", disId=" + disId +
+        ", scaleId=" + scaleId +
+        ", orderNo=" + orderNo +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 3 - 1
icssman-service/src/main/java/com/diagbot/enums/QuestionTypeEnum.java

@@ -16,7 +16,9 @@ public enum QuestionTypeEnum implements KeyedNamed {
     Pacs(6, "辅检"),
     Disease(7, "诊断"),
     Drug(8, "药品"),
-    DrugClass(9, "药品分类");
+    DrugClass(9, "药品分类"),
+    Scale(21, "量表"),
+    Index(22, "核心指标");
 
     @Setter
     private Integer key;

+ 172 - 0
icssman-service/src/main/java/com/diagbot/facade/DisScaleFacade.java

@@ -0,0 +1,172 @@
+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.GetDisScaleAllInfoDTO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.entity.DisScale;
+import com.diagbot.entity.QuestionInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
+import com.diagbot.service.DisScaleService;
+import com.diagbot.service.impl.DisScaleServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.RespDTOUtil;
+import com.diagbot.util.UserUtils;
+import com.diagbot.vo.AddDisScaleInfoVO;
+import com.diagbot.vo.DelDisScaleInfoVO;
+import com.diagbot.vo.GetDisScaleAllInfoVO;
+import com.diagbot.vo.GetDisScaleByDisIdVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/4/1 13:29
+ */
+@Component
+public class DisScaleFacade extends DisScaleServiceImpl {
+    @Autowired
+    private QuestionFacade questionFacade;
+    @Autowired
+    @Qualifier("disScaleServiceImpl")
+    private DisScaleService disScaleService;
+    @Autowired
+    private UserServiceClient userServiceClient;
+
+    /**
+     * 添加诊断量表关联信息
+     *
+     * @param addDisScaleInfoVO
+     * @return
+     */
+    public Boolean addDisScaleInfo(AddDisScaleInfoVO addDisScaleInfoVO) {
+        String userId = UserUtils.getCurrentPrincipleID();
+        //判断诊断是否已被删除
+        QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
+        questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("id", addDisScaleInfoVO.getDisId());
+        if (questionFacade.count(questionInfoQueryWrapper) == 0) {
+            throw new CommonException(CommonErrorCode.NOT_EXISTS,
+                    "关联诊断标签已删除");
+        }
+        //判断该诊断是否关联过量表
+        QueryWrapper<DisScale> disScaleQueryWrapper = new QueryWrapper<>();
+        disScaleQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("dis_id", addDisScaleInfoVO.getDisId());
+        //如果添加过将原来的标签删除
+        if (this.count(disScaleQueryWrapper) != 0) {
+            UpdateWrapper<DisScale> updateWrapper = new UpdateWrapper();
+            updateWrapper.eq("dis_id", addDisScaleInfoVO.getDisId())
+                    .set("is_deleted", IsDeleteEnum.Y.getKey())
+                    .set("modifier", userId)
+                    .set("gmt_modified", DateUtil.now());
+            this.update(new DisScale(), updateWrapper);
+        }
+        //重新添加标签
+        DisScale disScale = new DisScale();
+        List<DisScale> addList = new ArrayList<>();
+        for (int i = 0; i < addDisScaleInfoVO.getScaleId().size(); i++) {
+            disScale = new DisScale();
+            disScale.setCreator(userId);
+            disScale.setModifier(userId);
+            disScale.setGmtCreate(DateUtil.now());
+            disScale.setGmtModified(DateUtil.now());
+            disScale.setScaleId(addDisScaleInfoVO.getScaleId().get(i));
+            disScale.setDisId(addDisScaleInfoVO.getDisId());
+            disScale.setOrderNo(i + 1);
+            addList.add(disScale);
+        }
+        disScaleService.saveBatch(addList);
+        return true;
+    }
+
+    /**
+     * 分页获取诊断关联量表信息
+     *
+     * @param getDisScaleAllInfoVO
+     * @return
+     */
+    public IPage<GetDisScaleAllInfoDTO> getDisScaleAllInfo(GetDisScaleAllInfoVO getDisScaleAllInfoVO) {
+        IPage<GetDisScaleAllInfoDTO> data = this.getDisScaleInfo(getDisScaleAllInfoVO);
+        List<String> userIds = new ArrayList<>();
+        for (GetDisScaleAllInfoDTO getDisScaleAllInfoDTO : data.getRecords()) {
+            userIds.add(getDisScaleAllInfoDTO.getModifier());
+        }
+        RespDTO<Map<String, String>> userMap = userServiceClient.getUserInfoByIds(userIds);
+        if (RespDTOUtil.respIsNG(userMap)) {
+            throw new CommonException(CommonErrorCode.RPC_ERROR,
+                    "获取用户信息失败");
+        }
+        for (GetDisScaleAllInfoDTO getDisScaleAllInfoDTO : data.getRecords()) {
+            getDisScaleAllInfoDTO.setUserName(userMap.data.get(getDisScaleAllInfoDTO.getModifier()));
+        }
+        return data;
+    }
+
+    /**
+     * 修改时获取已经添加过得诊断量表关联信息
+     *
+     * @param getDisScaleByDisIdVO
+     * @return
+     */
+    public List<GetDisScaleAllInfoDTO> getDisScaleByDisId(GetDisScaleByDisIdVO getDisScaleByDisIdVO) {
+        //查询诊断量表关联信息
+        QueryWrapper<DisScale> disScaleQueryWrapper = new QueryWrapper<>();
+        disScaleQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("dis_id", getDisScaleByDisIdVO.getDisId());
+        List<DisScale> disScales = this.list(disScaleQueryWrapper);
+        List<Long> questionIds = new ArrayList<>();
+        List<GetDisScaleAllInfoDTO> getDisScaleAllInfoDTOS = BeanUtil.listCopyTo(disScales, GetDisScaleAllInfoDTO.class);
+        for (DisScale disScale : disScales) {
+            questionIds.add(disScale.getDisId());
+            questionIds.add(disScale.getScaleId());
+        }
+        //查询相关标签名称
+        QueryWrapper<QuestionInfo> questionInfoQueryWrapper = new QueryWrapper<>();
+        questionInfoQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("id", questionIds);
+        List<QuestionInfo> questionInfoList = questionFacade.list(questionInfoQueryWrapper);
+        Map<Long, QuestionInfo> questionInfoMap
+                = questionInfoList.stream().collect(Collectors.toMap(QuestionInfo::getId, questionInfo -> questionInfo));
+        //将标签名称放入出参
+        for (GetDisScaleAllInfoDTO getDisScaleAllInfoDTO : getDisScaleAllInfoDTOS) {
+            getDisScaleAllInfoDTO.setDisName(questionInfoMap.get(getDisScaleAllInfoDTO.getDisId()).getName());
+            getDisScaleAllInfoDTO.setScaleName(questionInfoMap.get(getDisScaleAllInfoDTO.getScaleId()).getName());
+        }
+        return getDisScaleAllInfoDTOS;
+    }
+
+    /**
+     * 删除诊断关联量表信息
+     *
+     * @param delDisScaleInfoVO
+     * @return
+     */
+    public Boolean delDisScaleInfo(DelDisScaleInfoVO delDisScaleInfoVO){
+        UpdateWrapper<DisScale> disScaleUpdateWrapper = new UpdateWrapper<>();
+        if(delDisScaleInfoVO.getDisId() != null){
+            disScaleUpdateWrapper.eq("dis_id",delDisScaleInfoVO.getDisId());
+        }else if (delDisScaleInfoVO.getScaleId() != null){
+            disScaleUpdateWrapper.eq("scale_id",delDisScaleInfoVO.getScaleId());
+        }else {
+            disScaleUpdateWrapper.eq("id",delDisScaleInfoVO.getId());
+        }
+        disScaleUpdateWrapper.set("is_deleted",IsDeleteEnum.Y.getKey())
+                .set("modifier",UserUtils.getCurrentPrincipleID())
+                .set("gmt_modified",DateUtil.now());
+        this.update(new DisScale(),disScaleUpdateWrapper);
+        return true;
+    }
+}

+ 22 - 5
icssman-service/src/main/java/com/diagbot/facade/QuestionFacade.java

@@ -11,6 +11,7 @@ import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.CommonParam;
 import com.diagbot.entity.DeptInfo;
 import com.diagbot.entity.DeptVital;
+import com.diagbot.entity.DisScale;
 import com.diagbot.entity.DisType;
 import com.diagbot.entity.ModuleDetail;
 import com.diagbot.entity.ModuleInfo;
@@ -97,7 +98,8 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
     RetrievalMappingFacade retrievalMappingFacade;
     @Autowired
     DisTypeFacade disTypeFacade;
-
+    @Autowired
+    DisScaleFacade disScaleFacade;
 
     /**
      * 标签保存
@@ -505,18 +507,33 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
                     .set("gmt_modified", now)
                     .set("modifier", person)
                     .set("is_deleted", IsDeleteEnum.Y.getKey()));
-
-            //如果是诊断,删除映射关系
+            //如果是诊断
             if (deleteQuestionVO.getType() == QuestionTypeEnum.Disease.getKey()) {
+                // 删除诊断类型映射关系
                 disTypeFacade.update(new DisType(), new UpdateWrapper<DisType>()
                         .eq("dis_id", id)
                         .eq("is_deleted", IsDeleteEnum.N.getKey())
                         .set("gmt_modified", now)
                         .set("modifier", person)
                         .set("is_deleted", IsDeleteEnum.Y.getKey()));
+                //删除诊断和量表的映射关系
+                disScaleFacade.update(new DisScale(), new UpdateWrapper<DisScale>()
+                        .eq("dis_id", id)
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .set("gmt_modified", now)
+                        .set("modifier", person)
+                        .set("is_deleted", IsDeleteEnum.Y.getKey()));
+            }
+            //如果是量表
+            if(deleteQuestionVO.getType() == QuestionTypeEnum.Scale.getKey()){
+                //删除诊断和量表的映射关系
+                disScaleFacade.update(new DisScale(), new UpdateWrapper<DisScale>()
+                        .eq("scale_id", id)
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .set("gmt_modified", now)
+                        .set("modifier", person)
+                        .set("is_deleted", IsDeleteEnum.Y.getKey()));
             }
-            //TODO 如果是量表,删除量表内容,并删除诊断和量表的关联
-
 
             //TODO 删除映射关系或检查抛异常
 

+ 27 - 0
icssman-service/src/main/java/com/diagbot/mapper/DisScaleMapper.java

@@ -0,0 +1,27 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.GetDisScaleAllInfoDTO;
+import com.diagbot.entity.DisScale;
+import com.diagbot.vo.GetDisScaleAllInfoVO;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * <p>
+ * 诊断量表映射表 Mapper 接口
+ * </p>
+ *
+ * @author wangyu
+ * @since 2019-04-01
+ */
+public interface DisScaleMapper extends BaseMapper<DisScale> {
+
+    /**
+     * 分页获取诊断关联量表信息
+     *
+     * @param getDisScaleAllInfoVO
+     * @return
+     */
+    public IPage<GetDisScaleAllInfoDTO> getDisScaleInfo(@Param("getDisScaleAllInfoVO") GetDisScaleAllInfoVO getDisScaleAllInfoVO);
+}

+ 26 - 0
icssman-service/src/main/java/com/diagbot/service/DisScaleService.java

@@ -0,0 +1,26 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.GetDisScaleAllInfoDTO;
+import com.diagbot.entity.DisScale;
+import com.diagbot.vo.GetDisScaleAllInfoVO;
+
+/**
+ * <p>
+ * 诊断量表映射表 服务类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2019-04-01
+ */
+public interface DisScaleService extends IService<DisScale> {
+
+    /**
+     * 分页获取诊断关联量表信息
+     *
+     * @param getDisScaleAllInfoVO
+     * @return
+     */
+    public IPage<GetDisScaleAllInfoDTO> getDisScaleInfo(GetDisScaleAllInfoVO getDisScaleAllInfoVO);
+}

+ 27 - 0
icssman-service/src/main/java/com/diagbot/service/impl/DisScaleServiceImpl.java

@@ -0,0 +1,27 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.GetDisScaleAllInfoDTO;
+import com.diagbot.entity.DisScale;
+import com.diagbot.mapper.DisScaleMapper;
+import com.diagbot.service.DisScaleService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.vo.GetDisScaleAllInfoVO;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 诊断量表映射表 服务实现类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2019-04-01
+ */
+@Service
+public class DisScaleServiceImpl extends ServiceImpl<DisScaleMapper, DisScale> implements DisScaleService {
+
+    @Override
+    public IPage<GetDisScaleAllInfoDTO> getDisScaleInfo(GetDisScaleAllInfoVO getDisScaleAllInfoVO) {
+        return baseMapper.getDisScaleInfo(getDisScaleAllInfoVO);
+    }
+}

+ 2 - 0
icssman-service/src/main/java/com/diagbot/service/impl/EnumsDataServiceImpl.java

@@ -4,6 +4,7 @@ import com.diagbot.enums.DisclaimerCodeEnum;
 import com.diagbot.enums.IntroducePositionEnum;
 import com.diagbot.enums.ModuleTypeEnum;
 import com.diagbot.enums.QuestionTypeEnum;
+import com.diagbot.enums.QuestionUsualTypeEnum;
 import com.diagbot.service.EnumsDataService;
 import com.diagbot.util.EnumEntriesBuilder;
 import org.springframework.stereotype.Service;
@@ -31,6 +32,7 @@ public class EnumsDataServiceImpl implements EnumsDataService {
                 .addEnums("introducePositionEnum", IntroducePositionEnum.values())
                 .addEnums("disclaimerCodeEnum", DisclaimerCodeEnum.values())
                 .addEnums("moduleTypeEnum", ModuleTypeEnum.values())
+                .addEnums("questionUsualTypeEnum", QuestionUsualTypeEnum.values())
                 .build();
         return enumMap;
     }

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

@@ -0,0 +1,21 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/4/1 13:25
+ */
+@Getter
+@Setter
+public class AddDisScaleInfoVO {
+    @NotNull(message = "请输入诊断标签id")
+    private Long disId;
+    @NotNull(message = "请输入量表标签id")
+    private List<Long> scaleId;
+}

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

@@ -0,0 +1,20 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/4/2 9:41
+ */
+@Getter
+@Setter
+public class DelDisScaleInfoVO {
+    //诊断关联id
+    private Long id;
+    //诊断id
+    private Long disId;
+    //量表id
+    private Long scaleId;
+}

+ 1 - 1
icssman-service/src/main/java/com/diagbot/vo/DisTypeVO.java

@@ -27,7 +27,7 @@ public class DisTypeVO implements Serializable {
 //    private Long disId;
 
     /**
-     * 1:慢病,2:急诊
+     * 0:普通病,1:慢病,2:急诊
      */
     private Integer type;
 }

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

@@ -0,0 +1,20 @@
+package com.diagbot.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/4/1 16:14
+ */
+@Getter
+@Setter
+public class GetDisScaleAllInfoVO extends Page {
+    //诊断名称
+    private String disName;
+    //量表名称
+    private String scaleName;
+
+}

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

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/4/1 16:57
+ */
+@Getter
+@Setter
+public class GetDisScaleByDisIdVO {
+    @NotNull(message="请输入诊断id")
+    private Long disId;
+}

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

@@ -19,4 +19,5 @@ public class QuestionPageVO extends Page {
     private String tagName;
     private List<Integer> tagTypeList;
     private List<Integer> controlTypeList;
+    private Integer disType;
 }

+ 83 - 0
icssman-service/src/main/java/com/diagbot/web/DisScaleController.java

@@ -0,0 +1,83 @@
+package com.diagbot.web;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.GetDisScaleAllInfoDTO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.facade.DisScaleFacade;
+import com.diagbot.vo.AddDisScaleInfoVO;
+import com.diagbot.vo.DelDisScaleInfoVO;
+import com.diagbot.vo.GetDisScaleAllInfoVO;
+import com.diagbot.vo.GetDisScaleByDisIdVO;
+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;
+
+/**
+ * <p>
+ * 诊断量表映射表 前端控制器
+ * </p>
+ *
+ * @author wangyu
+ * @since 2019-04-01
+ */
+@RestController
+@RequestMapping("/disScale")
+@Api(value = "诊断关联量表相关API", tags = { "2期-诊断关联量表相关API" })
+@SuppressWarnings("unchecked")
+public class DisScaleController {
+
+    @Autowired
+    private DisScaleFacade disScaleFacade;
+
+    @ApiOperation(value = "2期-诊断量表关联——添加和修改[by:wangyu]",
+            notes = "disId: 诊断id,必填<br>" +
+                    "scaleId: 量表id,必填<br>")
+    @PostMapping("/addDisScaleInfo")
+    @SysLogger("addDisScaleInfo")
+    @Transactional
+    public RespDTO<Boolean> addDisScaleInfo(@RequestBody @Valid AddDisScaleInfoVO addDisScaleInfoVO){
+        Boolean data = disScaleFacade.addDisScaleInfo(addDisScaleInfoVO);
+        return RespDTO.onSuc(data);
+    }
+
+    @ApiOperation(value = "2期-诊断量表关联——分页获取关联信息[by:wangyu]",
+            notes = "disName: 诊断名称<br>" +
+                    "scaleName: 量表名称<br>")
+    @PostMapping("/getDisScaleAllInfo")
+    @SysLogger("getDisScaleAllInfo")
+    public RespDTO<IPage<GetDisScaleAllInfoDTO>> getDisScaleAllInfo(@RequestBody GetDisScaleAllInfoVO getDisScaleAllInfoVO) {
+        IPage<GetDisScaleAllInfoDTO> data = disScaleFacade.getDisScaleAllInfo(getDisScaleAllInfoVO);
+        return RespDTO.onSuc(data);
+    }
+
+    @ApiOperation(value = "2期-诊断量表关联——根据诊断id获取诊断量表关联信息(修改回读用)[by:wangyu]",
+            notes = "disId: 诊断id,必填<br>")
+    @PostMapping("/getDisScaleByDisId")
+    @SysLogger("getDisScaleByDisId")
+    public RespDTO<List<GetDisScaleAllInfoDTO>> getDisScaleByDisId(@Valid @RequestBody GetDisScaleByDisIdVO getDisScaleByDisIdVO) {
+        List<GetDisScaleAllInfoDTO> data = disScaleFacade.getDisScaleByDisId(getDisScaleByDisIdVO);
+        return RespDTO.onSuc(data);
+    }
+
+    @ApiOperation(value = "2期-诊断量表关联——删除[by:wangyu]",
+            notes = "id: 分页查询主页面的id <br>" +
+                    "disId: 诊断id<br>" +
+                    "scaleId: 量表id<br>")
+    @PostMapping("/delDisScaleInfo")
+    @SysLogger("delDisScaleInfo")
+    @Transactional
+    public RespDTO<Boolean> delDisScaleInfo(@RequestBody @Valid DelDisScaleInfoVO delDisScaleInfoVO){
+        Boolean data = disScaleFacade.delDisScaleInfo(delDisScaleInfoVO);
+        return RespDTO.onSuc(data);
+    }
+}

+ 35 - 0
icssman-service/src/main/resources/mapper/DisScaleMapper.xml

@@ -0,0 +1,35 @@
+<?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.DisScaleMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.DisScale">
+        <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="dis_id" property="disId" />
+        <result column="scale_id" property="scaleId" />
+        <result column="order_no" property="orderNo" />
+        <result column="remark" property="remark" />
+    </resultMap>
+
+    <select id="getDisScaleInfo" resultType="com.diagbot.dto.GetDisScaleAllInfoDTO">
+        SELECT
+        a.modifier,a.gmt_modified,a.id,a.dis_id,a.scale_id,b.`name` AS dis_name,c.`name` AS scale_name
+        FROM
+	      `icss_dis_scale` a
+        LEFT JOIN icss_question_info b ON a.dis_id = b.id
+        LEFT JOIN icss_question_info c ON a.scale_id = c.id
+        WHERE a.is_deleted = 'N' and b.is_deleted = 'N' and c.is_deleted = 'N'
+        <if test="getDisScaleAllInfoVO.disName != null and getDisScaleAllInfoVO.disName != ''">
+            and b.`name` LIKE CONCAT('%',#{getDisScaleAllInfoVO.disName},'%')
+        </if>
+        <if test="getDisScaleAllInfoVO.scaleName != null and getDisScaleAllInfoVO.scaleName != ''">
+            and c.`name` LIKE CONCAT('%',#{getDisScaleAllInfoVO.scaleName},'%')
+        </if>
+    </select>
+
+</mapper>

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

@@ -164,6 +164,9 @@
         SELECT a.*, b.type dis_type FROM `icss_question_info` a
             left join icss_dis_type b on a.id = b.dis_id
         WHERE a.is_deleted = 'N'
+        <if test="disType != null">
+            AND b.type = #{disType}
+        </if>
         <if test="type != null and type != ''">
             AND a.type = #{type}
         </if>

+ 9 - 7
pom.xml

@@ -47,6 +47,8 @@
         <mybatis-spring-boot.version>1.3.2</mybatis-spring-boot.version>
         <druid.version>1.1.9</druid.version>
         <swagger.version>2.9.2</swagger.version>
+        <logstash.version>5.2</logstash.version>
+        <docker-maven-plugin.version>1.1.1</docker-maven-plugin.version>
         <docker.image.prefix>192.168.2.236:5000/diagbotcloud</docker.image.prefix>
     </properties>
 
@@ -99,11 +101,11 @@
                 <version>${swagger.version}</version>
             </dependency>
 
-            <dependency>
-                <groupId>de.codecentric</groupId>
-                <artifactId>spring-boot-admin-starter-client</artifactId>
-                <version>2.0.2</version>
-            </dependency>
+            <!--<dependency>-->
+                <!--<groupId>de.codecentric</groupId>-->
+                <!--<artifactId>spring-boot-admin-starter-client</artifactId>-->
+                <!--<version>2.0.2</version>-->
+            <!--</dependency>-->
 
             <!-- springboot整合mybatis(核心就这一个) -->
             <!-- 注意顺序,这个一定要放在最下面 -->
@@ -116,14 +118,14 @@
             <dependency>
                 <groupId>com.spotify</groupId>
                 <artifactId>docker-maven-plugin</artifactId>
-                <version>1.1.1</version>
+                <version>${docker-maven-plugin.version}</version>
             </dependency>
 
             <!-- Logstash encoder -->
             <dependency>
                 <groupId>net.logstash.logback</groupId>
                 <artifactId>logstash-logback-encoder</artifactId>
-                <version>5.2</version>
+                <version>${logstash.version}</version>
             </dependency>
 
         </dependencies>