package com.ruoyi.info.collection.domain.excel;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.ruoyi.common.annotation.DictDropdown;
import com.ruoyi.common.annotation.Required;
import com.ruoyi.common.annotation.TextFormat;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * 员工招聘信息Excel导入导出对象
 *
 * @author ruoyi
 * @date 2025-02-05
 */
@Data
public class CcdiStaffRecruitmentExcel implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /** 招聘记录编号 */
    @ExcelProperty(value = "招聘记录编号", index = 0)
    @ColumnWidth(20)
    @Required
    @TextFormat
    private String recruitId;

    /** 招聘项目名称 */
    @ExcelProperty(value = "招聘项目名称", index = 1)
    @ColumnWidth(20)
    @Required
    private String recruitName;

    /** 职位名称 */
    @ExcelProperty(value = "职位名称", index = 2)
    @ColumnWidth(20)
    @Required
    private String posName;

    /** 职位类别 */
    @ExcelProperty(value = "职位类别", index = 3)
    @ColumnWidth(15)
    @Required
    private String posCategory;

    /** 职位描述 */
    @ExcelProperty(value = "职位描述", index = 4)
    @ColumnWidth(30)
    @Required
    private String posDesc;

    /** 录用情况 */
    @ExcelProperty(value = "录用情况", index = 5)
    @ColumnWidth(10)
    @DictDropdown(dictType = "ccdi_admit_status")
    @Required
    private String admitStatus;

    /** 候选人姓名 */
    @ExcelProperty(value = "候选人姓名", index = 6)
    @ColumnWidth(15)
    @Required
    private String candName;

    /** 招聘类型 */
    @ExcelProperty(value = "招聘类型", index = 7)
    @ColumnWidth(12)
    @DictDropdown(dictType = "ccdi_recruit_type")
    @Required
    private String recruitType;

    /** 应聘人员学历 */
    @ExcelProperty(value = "学历", index = 8)
    @ColumnWidth(15)
    @Required
    private String candEdu;

    /** 应聘人员证件号码 */
    @ExcelProperty(value = "证件号码", index = 9)
    @ColumnWidth(20)
    @Required
    @TextFormat
    private String candId;

    /** 应聘人员毕业年月 */
    @ExcelProperty(value = "毕业年月", index = 10)
    @ColumnWidth(15)
    @Required
    private String candGrad;

    /** 应聘人员毕业院校 */
    @ExcelProperty(value = "毕业院校", index = 11)
    @ColumnWidth(20)
    @Required
    private String candSchool;

    /** 应聘人员专业 */
    @ExcelProperty(value = "专业", index = 12)
    @ColumnWidth(15)
    @Required
    private String candMajor;

    /** 面试官1姓名 */
    @ExcelProperty(value = "面试官1姓名", index = 13)
    @ColumnWidth(15)
    private String interviewerName1;

    /** 面试官1工号 */
    @ExcelProperty(value = "面试官1工号", index = 14)
    @ColumnWidth(15)
    @TextFormat
    private String interviewerId1;

    /** 面试官2姓名 */
    @ExcelProperty(value = "面试官2姓名", index = 15)
    @ColumnWidth(15)
    private String interviewerName2;

    /** 面试官2工号 */
    @ExcelProperty(value = "面试官2工号", index = 16)
    @ColumnWidth(15)
    @TextFormat
    private String interviewerId2;
}
