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.Required;
import com.ruoyi.common.annotation.TextFormat;
import lombok.Data;

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

/**
 * 招聘记录历史工作经历Excel导入对象
 *
 * @author ruoyi
 * @date 2026-04-20
 */
@Data
public class CcdiStaffRecruitmentWorkExcel 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(15)
    @Required
    private String candName;

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

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

    /** 排序号 */
    @ExcelProperty(value = "排序号", index = 4)
    @ColumnWidth(10)
    @Required
    private Integer sortOrder;

    /** 工作单位 */
    @ExcelProperty(value = "工作单位", index = 5)
    @ColumnWidth(25)
    @Required
    private String companyName;

    /** 所属部门 */
    @ExcelProperty(value = "所属部门", index = 6)
    @ColumnWidth(18)
    private String departmentName;

    /** 岗位名称 */
    @ExcelProperty(value = "岗位名称", index = 7)
    @ColumnWidth(20)
    @Required
    private String positionName;

    /** 入职年月 */
    @ExcelProperty(value = "入职时间", index = 8)
    @ColumnWidth(12)
    @Required
    private String jobStartMonth;

    /** 离职年月 */
    @ExcelProperty(value = "离职时间", index = 9)
    @ColumnWidth(12)
    private String jobEndMonth;

    /** 离职原因 */
    @ExcelProperty(value = "离职原因", index = 10)
    @ColumnWidth(30)
    private String departureReason;

    /** 主要工作内容 */
    @ExcelProperty(value = "主要工作内容", index = 11)
    @ColumnWidth(35)
    private String workContent;

    /** 备注 */
    @ExcelProperty(value = "备注", index = 12)
    @ColumnWidth(25)
    private String remark;
}
