package com.evo.attendance.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.evo.attendance.domain.RzAttendanceDetail; import org.apache.ibatis.annotations.Param; import java.util.Date; import java.util.List; import java.util.Map; /** * 考勤明细Mapper接口 * * @author chenyj * @date 2024-09-14 */ public interface RzAttendanceDetailMapper extends BaseMapper { /** * 查询员工最后一次打卡明细 ,按钮切换使用 * * @param staffId * @return 考勤明细集合 */ public RzAttendanceDetail selectLastRzAttendanceDetail(@Param("staffId") Long staffId); /** * 新增考勤明细 * * @param rzAttendanceDetail 考勤明细 * @return 结果 */ public int insertRzAttendanceDetail(RzAttendanceDetail rzAttendanceDetail); /** * 修改考勤明细 * @param rzAttendanceDetail * @return */ public int updateRzAttendanceDetail(RzAttendanceDetail rzAttendanceDetail); /** * 查询员工最后一次上班打卡 计算工时 其他地方不可使用 * * @param staffId * @return 考勤明细集合 */ public RzAttendanceDetail selectRzAttendanceDetailByStaffId(@Param("staffId") Long staffId); /** * 查询员工最后一次上班卡. 只要上班卡, 其他地方可不使用 * * @param staffId * @return 考勤明细集合 */ public RzAttendanceDetail selectLastWorkCardByStaffId(@Param("staffId") Long staffId); public List selectRzAttendanceDetailByMonth(Date date); /*** * 检查加班情况 * @param userId * @param date * @return */ Long checkOverTimeCard(@Param("userId") Long userId, @Param("date") Date date); /** * 查询员工最后一次上班卡. 只要上班卡, 其他地方可不使用 * * @param staffId * @return 考勤明细集合 */ public RzAttendanceDetail selectLastRzAttendanceDetailByBk(@Param("staffId") Long staffId, @Param("buttonType") String buttonType, @Param("startDateTime") Date startDateTime, @Param("endDateTime") Date endDateTime); List> getThreeDayNotCheck(); }