ZQN
2024-06-17 951feaeef11f38701290ced94f71c9e103a419bf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
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;
    }
}