package cn.iocoder.yudao.module.hrm.dal.mysql.salary;
|
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import cn.iocoder.yudao.module.hrm.dal.dataobject.salary.HrmSocialSecuritySchemeDeptDO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
import java.util.Collection;
|
import java.util.List;
|
import java.util.Set;
|
import java.util.stream.Collectors;
|
|
/**
|
* 社保公积金方案适用部门 Mapper
|
*
|
* @author 超级管理员
|
*/
|
@Mapper
|
public interface HrmSocialSecuritySchemeDeptMapper extends BaseMapperX<HrmSocialSecuritySchemeDeptDO> {
|
|
/**
|
* 按方案整组替换:先删除该方案的全部(逻辑删除)关联行
|
*/
|
default void deleteBySchemeId(Long schemeId) {
|
delete(new LambdaQueryWrapperX<HrmSocialSecuritySchemeDeptDO>()
|
.eq(HrmSocialSecuritySchemeDeptDO::getSchemeId, schemeId));
|
}
|
|
default List<HrmSocialSecuritySchemeDeptDO> selectListBySchemeId(Long schemeId) {
|
return selectList(new LambdaQueryWrapperX<HrmSocialSecuritySchemeDeptDO>()
|
.eq(HrmSocialSecuritySchemeDeptDO::getSchemeId, schemeId));
|
}
|
|
default List<HrmSocialSecuritySchemeDeptDO> selectListBySchemeIds(Collection<Long> schemeIds) {
|
return selectList(new LambdaQueryWrapperX<HrmSocialSecuritySchemeDeptDO>()
|
.inIfPresent(HrmSocialSecuritySchemeDeptDO::getSchemeId, schemeIds));
|
}
|
|
default List<HrmSocialSecuritySchemeDeptDO> selectListByDeptIds(Collection<Long> deptIds) {
|
return selectList(new LambdaQueryWrapperX<HrmSocialSecuritySchemeDeptDO>()
|
.inIfPresent(HrmSocialSecuritySchemeDeptDO::getDeptId, deptIds));
|
}
|
|
default List<HrmSocialSecuritySchemeDeptDO> selectListByDeptId(Long deptId) {
|
return selectList(new LambdaQueryWrapperX<HrmSocialSecuritySchemeDeptDO>()
|
.eq(HrmSocialSecuritySchemeDeptDO::getDeptId, deptId));
|
}
|
|
/**
|
* 查询全部已绑定部门的方案ID(用于区分「部门专属方案」与「全局默认方案」)
|
*/
|
default Set<Long> selectAllBoundSchemeIds() {
|
return selectObjs(new LambdaQueryWrapperX<HrmSocialSecuritySchemeDeptDO>()
|
.select(HrmSocialSecuritySchemeDeptDO::getSchemeId))
|
.stream().map(obj -> (Long) obj).collect(Collectors.toSet());
|
}
|
|
}
|