import request from '@/config/axios'

// 离职信息 VO
export interface EmployeeQuitInfoVO {
  quitInfoId: number // 主键
  employeeId: number // 员工id
  planQuitTime: Date // 计划离职日期
  applyQuitTime: Date // 申请离职日期
  salarySettlementTime: Date // 薪资结算日期
  quitType: number // 离职类型 1 主动离职 2 被动离职 3 退休
  quitReason: number // 离职原因 1家庭原因 2身体原因 3薪资原因 4交通不便 5工作压力 6管理问题 7无晋升机会 8职业规划 9合同到期放弃续签 10其他个人原因  11试用期内辞退 12违反公司条例 13组织调整/裁员 14绩效不达标辞退 15合同到期不续签 16 其他原因被动离职
  remarks: string // 备注
  oldStatus: number // 离职前状态
}

// 离职信息 API
export const EmployeeQuitInfoApi = {
  // 查询离职信息分页
  getEmployeeQuitInfoPage: async (params: any) => {
    return await request.get({ url: `/hr/employee-quit-info/page`, params })
  },

  // 查询离职信息详情
  getEmployeeQuitInfo: async (id: number) => {
    return await request.get({ url: `/hr/employee-quit-info/get?id=` + id })
  },

  // 新增离职信息
  createEmployeeQuitInfo: async (data: EmployeeQuitInfoVO) => {
    return await request.post({ url: `/hr/employee-quit-info/create`, data })
  },

  // 修改离职信息
  updateEmployeeQuitInfo: async (data: EmployeeQuitInfoVO) => {
    return await request.put({ url: `/hr/employee-quit-info/update`, data })
  },

  // 删除离职信息
  deleteEmployeeQuitInfo: async (id: number) => {
    return await request.delete({ url: `/hr/employee-quit-info/delete?id=` + id })
  },

  // 导出离职信息 Excel
  exportEmployeeQuitInfo: async (params) => {
    return await request.download({ url: `/hr/employee-quit-info/export-excel`, params })
  },
}
