import request from '@/config/axios'

// 人才信息 VO
export interface PersonInfoVO {
  id: number // id
  userId: number // 用户id
  name: string // 真实姓名
  sex: string // 用户性别
  avatar: string // 头像地址
  phone: string // 联系手机号
  email: string // 用户邮箱
  wxCode: string // 微信号
  birthday: Date // 出生日期
  maritalStatus: string // 婚姻状况（0未婚 1已婚 2离异 3保密）
  areaId: number // 现居住地
  jobType: string // 求职类型（0全职 1兼职 2临时 3实习）
  jobStatus: string // 求职状态（0离职-随时到岗 1在职-月内到岗 2在职-考虑机会 3在职-暂不考虑）
  firstWorkTime: Date // 首次工作时间
  advantage: string // 个人优势
  expType: string // 工作经验
  eduType: string // 学历
}

// 人才信息 API
export const PersonInfoApi = {
  // 查询人才信息分页
  getPersonInfoPage: async (params: any) => {
    return await request.get({ url: `/menduner/system/person-info/page`, params })
  },

  // 查询人才信息详情
  getPersonInfo: async (id: number) => {
    return await request.get({ url: `/menduner/system/person-info/get?id=` + id })
  },

  // 新增人才信息
  createPersonInfo: async (data: PersonInfoVO) => {
    return await request.post({ url: `/menduner/system/person-info/create`, data })
  },

  // 修改人才信息
  updatePersonInfo: async (data: PersonInfoVO) => {
    return await request.put({ url: `/menduner/system/person-info/update`, data })
  },

  // 删除人才信息
  deletePersonInfo: async (id: number) => {
    return await request.delete({ url: `/menduner/system/person-info/delete?id=` + id })
  },

  // 导出人才信息 Excel
  exportPersonInfo: async (params) => {
    return await request.download({ url: `/menduner/system/person-info/export-excel`, params })
  },

  // 查询人才档案
  getPersonDetails: async (id: string) => {
    return await request.get({ url: `/menduner/system/person-info/get?id=` + id })
  },

  // 查询用户详情
  getUserDetails: async (userId: string) => {
    return await request.get({ url: `/menduner/system/mde-user/get?id=` + userId })
  },

  // 获取用户账户
  getPersonAccount: async (userId: string) => {
    return await request.get({ url: `/menduner/system/user-account/get?userId=` + userId })
  },

  // 获得用户钱包明细
  getPersonWallet: async (userId: string) => {
    return await request.get({ url: `/pay/wallet/get?userId=` + userId })
  },

  // 教育经历分页
  getPersonEduPage: async (params: any) => {
    return await request.get({ url: `/menduner/system/edu-exp/page`, params })
  },

  // 工作经历分页
  getPersonExpPage: async (params: any) => {
    return await request.get({ url: `/menduner/system/work-exp/page`, params })
  },

  // 项目经历分页
  getPersonProjectPage: async (params: any) => {
    return await request.get({ url: `/menduner/system/project-exp/page`, params })
  },

  // 求职意向分页
  getPersonJobIntentionPage: async (params: any) => {
    return await request.get({ url: `/menduner/system/job-interested/page`, params })
  },

  // 培训经历分页
  getPersonTrainingPage: async (params: any) => {
    return await request.get({ url: `/menduner/system/train-exp/page`, params })
  },

  // 获得钱包充值记录分页
  getPersonWalletRechargePage: async (params: any) => {
    return await request.get({ url: `/pay/wallet-recharge/page`, params })
  },

  // 积分变动分页
  getPersonAccountRecordPage: async (params: any) => {
    return await request.get({ url: `/menduner/system/user/account/record/page`, params })
  },

  // 根据用户编号获取招聘职位收藏数量
  getPersonJobFavoriteCount: async (userId: string) => {
    return await request.get({ url: `/menduner/system/person-job-favorite/count?userId=` + userId })
  },

  // 根据用户编号获取企业关注订阅数量
  getPersonEnterpriseSubscribeCount: async (userId: string) => {
    return await request.get({ url: `/menduner/system/person-enterprise-subscribe/count?userId=` + userId })
  },

  // 禁用账户
  disabledUserAccount: async (id: number) => {
    return await request.post({ url: `/menduner/system/mde-user/disable?id=${id}` })
  },

  // 启用账户
  enableUserAccount: async (id: number) => {
    return await request.post({ url: `/menduner/system/mde-user/enable?id=${id}` })
  },

   // 重置用户密码
   resetUserRegister: async (data: any) => {
    return await request.put({ url: `/menduner/system/mde-user/update-password`, data })
  },

  // 会员类型-获取用户套餐列表
  getPersonPackageList: async () => {
    return await request.get({ url: `/menduner/system/user-package/list` })
  },

  // 人才附件简历
  getPersonAttachmentList: async (params: any) => {
    return await request.get({ url: `/menduner/system/cv-attachment/page`, params })
  },

  // 获取投递职位列表
  getPersonJobDeliveryList: async (params: any) => {
    return await request.get({ url: `/menduner/system/job-cv-rel/page`, params })
  },

  // 面试邀约分页
  getInterviewInvitePage: async (params: any) => {
    return await request.get({ url: `/menduner/system/interview-invite/page`, params })
  },

  // 获取学生基本信息
  getStudentInfo: async (userId: string) => {
    return await request.post({ url: `/menduner/system/student/get?userId=${userId}` })
  }
}