liu
23 小时以前 e347fd6e8b523b75e7eb28627ba3597cf9e40f6a
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
package cn.iocoder.yudao.module.system.dal.mysql.approval;
 
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.system.dal.dataobject.approval.ApprovalConfigUserDO;
import org.apache.ibatis.annotations.Mapper;
 
import java.util.Collection;
import java.util.List;
 
/**
 * 通用审批配置-审批人 Mapper
 *
 * 类名带 System 前缀,避免 Spring 按字段名注入时与其它模块的审批 Mapper 冲突。
 *
 * @author 超级管理员
 */
@Mapper
public interface SystemApprovalConfigUserMapper extends BaseMapperX<ApprovalConfigUserDO> {
 
    default List<ApprovalConfigUserDO> selectListByConfigId(Long configId) {
        return selectList(new LambdaQueryWrapperX<ApprovalConfigUserDO>()
                .eq(ApprovalConfigUserDO::getConfigId, configId)
                .orderByAsc(ApprovalConfigUserDO::getSort));
    }
 
    default List<ApprovalConfigUserDO> selectListByConfigIds(Collection<Long> configIds) {
        return selectList(new LambdaQueryWrapperX<ApprovalConfigUserDO>()
                .in(ApprovalConfigUserDO::getConfigId, configIds)
                .orderByAsc(ApprovalConfigUserDO::getSort));
    }
 
    /**
     * 按配置ID物理删除审批人记录
     *
     * 配置审批人采用「先删后插」整体覆盖的保存方式,若走逻辑删除,
     * 反复保存会在表中堆积大量 deleted = 1 的历史行,故此处直接物理删除。
     *
     * @param configId 审批配置ID
     * @return 删除行数
     */
    default int deleteByConfigId(Long configId) {
        return delete(new LambdaQueryWrapperX<ApprovalConfigUserDO>()
                .eq(ApprovalConfigUserDO::getConfigId, configId));
    }
 
}