27 lines
1004 B
C#
27 lines
1004 B
C#
using F9WebAiTest.Application.Common;
|
|
using F9WebAiTest.Application.Dtos;
|
|
using F9WebAiTest.Application.Dtos.Attendance;
|
|
|
|
namespace F9WebAiTest.Application.Services.Attendance;
|
|
|
|
public interface IAttendanceService
|
|
{
|
|
// 打卡
|
|
Task<PunchResultDto> PunchAsync(long employeeId);
|
|
|
|
// 我的考勤记录(分页)
|
|
Task<PageResult<AttendanceDto>> GetMyRecordsAsync(long employeeId, int pageIndex, int pageSize);
|
|
|
|
// 我的考勤统计
|
|
Task<AttendanceSummaryDto> GetMySummaryAsync(long employeeId, string month);
|
|
|
|
// 全部考勤记录(管理员)
|
|
Task<PageResult<AttendanceDto>> GetAllRecordsAsync(AttendanceQueryDto query);
|
|
|
|
// 请假
|
|
Task<LeaveRequestDto> ApplyLeaveAsync(long employeeId, CreateLeaveDto dto);
|
|
Task<List<LeaveRequestDto>> GetMyLeavesAsync(long employeeId);
|
|
Task<List<LeaveRequestDto>> GetAllLeavesAsync(string status);
|
|
Task<LeaveRequestDto> ApproveLeaveAsync(long leaveId, long approverId, string approverName, ApproveLeaveDto dto);
|
|
}
|