zhangwencui
7 天以前 7619c19a67c2ac824f803090bab753fc5ea14408
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
import type { PageParam, PageResult } from '#/packages/effects/request/src';
 
import { requestClient } from '#/api/request';
 
export namespace HrmAttendanceSummaryApi {
  /** 考勤统计 */
  export interface AttendanceSummary {
    id?: number;
    userId?: number;
    userName?: string;
    deptId?: number;
    deptName?: string;
    yearMonth?: string;
    workDays?: number;
    actualDays?: number;
    lateCount?: number;
    earlyCount?: number;
    absentCount?: number;
    overtimeHours?: number;
    leaveHours?: number;
    remark?: string;
    createTime?: string;
  }
 
  /** 生成统计参数 */
  export interface GenerateParams {
    yearMonth: string;
    deptId?: number;
    userId?: number;
  }
}
 
/** 查询考勤统计分页列表 */
export function getAttendanceSummaryPage(params: PageParam) {
  return requestClient.get<PageResult<HrmAttendanceSummaryApi.AttendanceSummary>>(
    '/hrm/attendance/summary/page',
    { params },
  );
}
 
/** 查询员工月度汇总 */
export function getAttendanceSummary(params: { userId: number; yearMonth: string }) {
  return requestClient.get<HrmAttendanceSummaryApi.AttendanceSummary>(
    '/hrm/attendance/summary/get',
    { params },
  );
}
 
/** 生成月度考勤汇总 */
export function generateAttendanceSummary(params: HrmAttendanceSummaryApi.GenerateParams) {
  return requestClient.post('/hrm/attendance/summary/generate', null, { params });
}
 
/** 导出考勤统计 Excel */
export function exportAttendanceSummary(params: any) {
  return requestClient.download('/hrm/attendance/summary/export-excel', { params });
}