package com.project.system.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import cn.hutool.core.convert.Convert;
|
import com.project.common.utils.StringUtils;
|
import org.springframework.stereotype.Service;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import org.springframework.transaction.annotation.Transactional;
|
import com.project.system.domain.vo.SysDocVo;
|
import com.project.system.domain.bo.editBo.SysDocBo;
|
import com.project.system.domain.bo.queryBo.SysDocQueryBo;
|
import com.project.system.domain.SysDoc;
|
import com.project.system.mapper.SysDocMapper;
|
import com.project.system.service.ISysDocService;
|
|
import java.util.Collection;
|
import java.util.List;
|
|
/**
|
* 文档管理Service业务层处理
|
*
|
* @author manton
|
*/
|
@Service
|
@RequiredArgsConstructor(onConstructor_ = @Autowired)
|
public class SysDocServiceImpl extends ServiceImpl<SysDocMapper, SysDoc> implements ISysDocService {
|
|
|
|
@Override//列表查询
|
public List<SysDocVo> queryList(SysDocQueryBo bo)
|
{
|
QueryWrapper<SysDoc> qw = getQw(bo);
|
List<SysDoc> list = this.list(qw);
|
return Convert.toList(SysDocVo.class , list);
|
}
|
|
@Override//id查询
|
public SysDocVo queryById(Long docId)
|
{
|
SysDoc db = this.baseMapper.selectById(docId);
|
return Convert.convert(SysDocVo.class , db);
|
}
|
|
|
@Override//添加
|
@Transactional
|
public Boolean insertByBo(SysDocBo bo)
|
{
|
SysDoc add = Convert.convert(SysDoc.class, bo);
|
validEntityBeforeSave(add);
|
return this.save(add);
|
}
|
|
@Override//修改
|
@Transactional
|
public Boolean updateByBo(SysDocBo bo)
|
{
|
SysDoc update = Convert.convert(SysDoc.class, bo);
|
validEntityBeforeSave(update);
|
return this.updateById(update);
|
}
|
|
@Override//删除
|
@Transactional
|
public Boolean deleteByIds(Collection<Long> ids)
|
{
|
|
//做一些业务上的校验,判断是否需要校验
|
|
return this.removeByIds(ids);
|
}
|
|
|
//-------------------------------------------------------------------------------------
|
|
//保存前校验
|
private void validEntityBeforeSave(SysDoc entity)
|
{
|
//做一些数据校验,如唯一约束
|
}
|
|
//获取查询参数
|
private QueryWrapper<SysDoc> getQw(SysDocQueryBo bo)
|
{
|
QueryWrapper<SysDoc> qw = Wrappers.query();
|
|
qw.eq(StringUtils.isNotEmpty(bo.getDocTitle()), "doc_title", bo.getDocTitle());
|
qw.eq(StringUtils.isNotEmpty(bo.getDocType()), "doc_type", bo.getDocType());
|
qw.eq(StringUtils.isNotEmpty(bo.getDocContent()), "doc_content", bo.getDocContent());
|
qw.eq(bo.getDocStatus() != null, "doc_status", bo.getDocStatus());
|
if (StringUtils.isNotEmpty(bo.getIsAsc()) && StringUtils.isNotEmpty(bo.getOrderByColumn())){
|
if ("acs".equals(bo.getIsAsc())) {
|
qw.orderByAsc(bo.getOrderByColumn());
|
} else if ("desc".equals(bo.getIsAsc())) {
|
qw.orderByDesc(bo.getOrderByColumn());
|
}
|
}
|
return qw;
|
}
|
}
|