manage: 疾病列表查询接口 返回值添加 是否关联疾病属性

dev_2.1.0
xueqingkun 1 year ago
parent 391a0d5196
commit 6646dc3c15

@ -3,11 +3,8 @@ package com.supervision.manage.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.lang.UUID;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.exception.BusinessException;
import com.supervision.manage.service.*;
import com.supervision.model.Disease;
@ -101,10 +98,7 @@ public class DiseaseManageServiceImpl implements DiseaseManageService {
diseaseReqVo.setDiseaseType(0);
}
LambdaQueryChainWrapper<Disease> wrapper = diseaseService.lambdaQuery()
.eq(Disease::getDiseaseType, diseaseReqVo.getDiseaseType())
.like(StrUtil.isNotEmpty(diseaseReqVo.getDiseaseName()), Disease::getDiseaseName, diseaseReqVo.getDiseaseName());
Page<Disease> page = wrapper.page(new Page<>(pageNum, pageSize));
IPage<? extends Disease> page = diseaseService.queryPageList(pageNum, pageSize, diseaseReqVo);
if (page.getSize() == 0) {
return page;

@ -1,7 +1,12 @@
package com.supervision.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.supervision.model.Disease;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.supervision.vo.manage.AskQuestionLibraryResVo;
import com.supervision.vo.manage.DiseaseReqVo;
import com.supervision.vo.manage.DiseaseResVo;
import org.apache.ibatis.annotations.Param;
/**
* @author flevance
@ -11,6 +16,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface DiseaseMapper extends BaseMapper<Disease> {
IPage<DiseaseResVo> queryPageList(IPage<AskQuestionLibraryResVo> page,@Param("diseaseReqVo") DiseaseReqVo diseaseReqVo);
}

@ -1,7 +1,9 @@
package com.supervision.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.supervision.model.Disease;
import com.baomidou.mybatisplus.extension.service.IService;
import com.supervision.vo.manage.DiseaseReqVo;
import java.util.List;
@ -21,5 +23,7 @@ public interface DiseaseService extends IService<Disease> {
*/
List<Disease> listDiseaseNestIfComposite(String id);
IPage<? extends Disease> queryPageList(Integer pageNum, Integer pageSize, DiseaseReqVo diseaseReqVo);
}

@ -2,12 +2,13 @@ package com.supervision.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.supervision.exception.BusinessException;
import com.supervision.model.Disease;
import com.supervision.service.DiseaseService;
import com.supervision.mapper.DiseaseMapper;
import com.supervision.vo.manage.DiseaseReqVo;
import org.springframework.stereotype.Service;
import java.util.List;
@ -33,6 +34,13 @@ public class DiseaseServiceImpl extends ServiceImpl<DiseaseMapper, Disease>
return super.listByIds(disease.getContainDiseaseIds());
}
@Override
public IPage<? extends Disease> queryPageList(Integer pageNum, Integer pageSize, DiseaseReqVo diseaseReqVo) {
return super.getBaseMapper().queryPageList(new Page<>(pageNum, pageSize), diseaseReqVo);
}
/**
*

@ -11,4 +11,9 @@ import java.util.List;
public class DiseaseResVo extends Disease {
private List<String> containDiseaseNames;
/**
* 使 true使 false使
*/
private boolean isUsedMedicalRec;
}

@ -24,4 +24,31 @@
id,disease_name,disease_name_alias,code,status,diseaseType,symptom,contain_disease_ids,
create_user_id,create_time,update_user_id,update_time
</sql>
<select id="queryPageList" resultType="com.supervision.vo.manage.DiseaseResVo">
SELECT d.id as id,
d.code as code,
d.disease_name as diseaseName,
d.disease_name_alias as diseaseNameAlias,
d.status as status,
d.disease_type as diseaseType,
d.symptom as symptom,
d.contain_disease_ids as containDiseaseIds,
d.create_user_id as createUserId,
d.create_time as createTime,
d.update_user_id as updateUserId,
d.update_time as updateTime,
IF(mr.id IS NOT NULL, true, false) AS isUsedMedicalRec
FROM vp_disease d left join vp_medical_rec mr on d.id = mr.disease_id
<where>
<if test="diseaseReqVo.diseaseName!= null and diseaseReqVo.diseaseName!= ''">
AND d.disease_name like concat("%",#{diseaseReqVo.diseaseName}, "%")
</if>
<if test="diseaseReqVo.diseaseType!= null and diseaseReqVo.diseaseType != ''">
AND d.disease_type = #{diseaseReqVo.diseaseType}
</if>
</where>
order by d.create_time desc
</select>
</mapper>
Loading…
Cancel
Save