package cn.iocoder.yudao.module.hrm.dal.mysql.training;
|
|
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.training.HrmTrainingParticipantDO;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import org.apache.ibatis.annotations.Mapper;
|
|
import java.util.Collection;
|
import java.util.List;
|
|
/**
|
* HRM 培训参训人员 Mapper
|
*
|
* @author 超级管理员
|
*/
|
@Mapper
|
public interface HrmTrainingParticipantMapper extends BaseMapperX<HrmTrainingParticipantDO> {
|
|
/**
|
* 查询某次培训的全部参训人员
|
*
|
* @param trainingId 培训活动编号
|
* @return 参训人员列表
|
*/
|
default List<HrmTrainingParticipantDO> selectListByTrainingId(Long trainingId) {
|
return selectList(new LambdaQueryWrapperX<HrmTrainingParticipantDO>()
|
.eq(HrmTrainingParticipantDO::getTrainingId, trainingId)
|
.orderByAsc(HrmTrainingParticipantDO::getId));
|
}
|
|
/**
|
* 批量查询指定培训的参训人员(分页统计参训人数用)
|
*
|
* @param trainingIds 培训活动编号集合
|
* @return 参训人员列表
|
*/
|
default List<HrmTrainingParticipantDO> selectListByTrainingIds(Collection<Long> trainingIds) {
|
return selectList(new LambdaQueryWrapperX<HrmTrainingParticipantDO>()
|
.in(HrmTrainingParticipantDO::getTrainingId, trainingIds));
|
}
|
|
/**
|
* 查询某次培训下某位员工的参训记录(防重复添加用)
|
*
|
* @param trainingId 培训活动编号
|
* @param employeeId 员工编号
|
* @return 参训记录,无则返回 null
|
*/
|
default HrmTrainingParticipantDO selectByTrainingIdAndEmployeeId(Long trainingId, Long employeeId) {
|
return selectOne(new LambdaQueryWrapperX<HrmTrainingParticipantDO>()
|
.eq(HrmTrainingParticipantDO::getTrainingId, trainingId)
|
.eq(HrmTrainingParticipantDO::getEmployeeId, employeeId));
|
}
|
|
/**
|
* 删除某次培训的全部参训人员(培训删除时级联)
|
*
|
* @param trainingId 培训活动编号
|
*/
|
default void deleteByTrainingId(Long trainingId) {
|
delete(new LambdaQueryWrapperX<HrmTrainingParticipantDO>()
|
.eq(HrmTrainingParticipantDO::getTrainingId, trainingId));
|
}
|
|
/**
|
* 回写联动生成的证书编号
|
*
|
* @param id 参训人员编号
|
* @param certificateId 证书资质编号
|
*/
|
default void updateCertificateId(Long id, Long certificateId) {
|
update(null, new LambdaUpdateWrapper<HrmTrainingParticipantDO>()
|
.eq(HrmTrainingParticipantDO::getId, id)
|
.set(HrmTrainingParticipantDO::getCertificateId, certificateId));
|
}
|
|
}
|