package cn.iocoder.yudao.module.hrm.dal.mysql.workhour;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import cn.iocoder.yudao.module.hrm.controller.admin.workhour.vo.HrmWorkHourSummaryPageReqVO;
|
import cn.iocoder.yudao.module.hrm.dal.dataobject.workhour.HrmWorkHourSummaryDO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
import java.util.List;
|
|
/**
|
* 月度工时汇总 Mapper
|
*
|
* @author 超级管理员
|
*/
|
@Mapper
|
public interface HrmWorkHourSummaryMapper extends BaseMapperX<HrmWorkHourSummaryDO> {
|
|
default PageResult<HrmWorkHourSummaryDO> selectPage(HrmWorkHourSummaryPageReqVO reqVO) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<HrmWorkHourSummaryDO>()
|
.eqIfPresent(HrmWorkHourSummaryDO::getEmployeeId, reqVO.getEmployeeId())
|
.eqIfPresent(HrmWorkHourSummaryDO::getDeptId, reqVO.getDeptId())
|
.eqIfPresent(HrmWorkHourSummaryDO::getPeriod, reqVO.getPeriod())
|
.orderByDesc(HrmWorkHourSummaryDO::getId));
|
}
|
|
default HrmWorkHourSummaryDO selectByEmployeeIdAndPeriod(Long employeeId, String period) {
|
return selectOne(new LambdaQueryWrapperX<HrmWorkHourSummaryDO>()
|
.eq(HrmWorkHourSummaryDO::getEmployeeId, employeeId)
|
.eq(HrmWorkHourSummaryDO::getPeriod, period)
|
.last("LIMIT 1"));
|
}
|
|
default List<HrmWorkHourSummaryDO> selectListByPeriod(String period) {
|
return selectList(new LambdaQueryWrapperX<HrmWorkHourSummaryDO>()
|
.eq(HrmWorkHourSummaryDO::getPeriod, period)
|
.orderByAsc(HrmWorkHourSummaryDO::getEmployeeId));
|
}
|
|
}
|