Files
zkxw/web-admin/src/api/leave.ts
T
2026-05-17 08:36:37 +08:00

79 lines
1.5 KiB
TypeScript

import request from '@/utils/http'
/** 请假申请列表 */
export function fetchLeaveList(params?: {
page?: number
pageSize?: number
keyword?: string
status?: string
}) {
return request.get<{
list: Api.Leave.LeaveItem[]
total: number
page: number
pageSize: number
totalPages: number
}>({
url: '/web/admin/leave',
params
})
}
/** 创建请假申请 */
export function fetchCreateLeave(data: {
leaveType: string
startDate: string
endDate: string
days: number
reason?: string
remark?: string
}) {
return request.post<Api.Leave.LeaveItem>({
url: '/web/admin/leave',
data,
showSuccessMessage: true
})
}
/** 编辑请假申请 */
export function fetchUpdateLeave(
id: string,
data: Partial<{
leaveType: string
startDate: string
endDate: string
days: number
reason: string
remark: string
}>
) {
return request.put<Api.Leave.LeaveItem>({
url: `/web/admin/leave/${id}`,
data,
showSuccessMessage: true
})
}
/** 删除请假申请 */
export function fetchDeleteLeave(id: string) {
return request.del({
url: `/web/admin/leave/${id}`,
showSuccessMessage: true
})
}
/** 提交请假申请并发起审批 */
export function fetchSubmitLeave(id: string) {
return request.post<{ instanceId: string; status: string }>({
url: `/web/admin/leave/${id}/submit`,
showSuccessMessage: true
})
}
/** 请假详情 */
export function fetchLeaveDetail(id: string) {
return request.get<Api.Leave.LeaveItem>({
url: `/web/admin/leave/${id}`
})
}