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));
|
}
|
|
}
|