attendanceRecord.js 2.47 KB
import request from '@/utils/request'

// 获取月度考勤记录矩阵
export function getAttendanceMonthReport(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/MonthReport',
    method: 'get',
    data
  })
}

// 导出月度考勤明细(与列表相同筛选条件,全量不分页)
export function exportAttendanceMonthReport(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/MonthReportExport',
    method: 'get',
    data,
    responseType: 'blob'
  })
}

// 提交考勤打卡
export function submitAttendancePunch(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/Punch',
    method: 'post',
    data
  })
}

// 获取考勤记录详情
export function getAttendanceRecordDetail(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/Detail',
    method: 'get',
    data
  })
}

// 后台补卡
export function supplementAttendanceRecord(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/Supplement',
    method: 'post',
    data
  })
}

// 销假(按单日考勤记录维度修正)
export function cancelAttendanceLeave(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/CancelLeave',
    method: 'post',
    data
  })
}

// 取消流程补卡(回退流程写入的打卡,并记通用操作日志)
export function cancelAttendanceWorkflowSupplement(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/CancelWorkflowSupplement',
    method: 'post',
    data
  })
}

// 历史缺卡补全(含今日之前无打卡修正为缺卡;可选补 INSERT 无考勤行,供定时任务调用)
export function backfillAttendanceAbsentStatusForPastDays(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/BackfillAbsentStatusForPastDays',
    method: 'post',
    data: data || {}
  })
}

// 销假流程:可选考勤行(当前用户近期请假/病假)
export function getLeaveCancelCandidates(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/LeaveCancelCandidates',
    method: 'get',
    data: data || {}
  })
}

// 补卡流程:近 3 个自然日可补卡候选(不含当日)
export function getPunchApplyCandidates(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/PunchApplyCandidates',
    method: 'get',
    data: data || {}
  })
}

// 模拟新增考勤记录
export function mockCreateAttendanceRecord(data) {
  return request({
    url: '/api/Extend/LqAttendanceRecord/MockCreate',
    method: 'post',
    data
  })
}