package jnpf.model.personnels.vo.black;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.fastjson.annotation.JSONField;
import jnpf.easyexcel.EasyEnumNamesConverter;
import jnpf.easyexcel.FastJsonEnumConverter;
import lombok.Data;

import java.util.Date;

@Data
public class FtbPersonnelsBlackListHistoryVO {
    /**
     * 黑名单主键id
     */
    @ExcelIgnore
    private String id;

    /**
     * 用户姓名
     */
    @ExcelProperty(value = "姓名", index = 1)
    private String userName;

    /**
     * 手机号码
     */
    @ExcelProperty(value = "手机号", index = 2)
    private String phone;

    /**
     * 黑名单期限，0三个月，1六个月，2一年，3一年六个月，4两年，5三年，6五年，7永久
     */
    @JSONField(serializeUsing = FastJsonEnumConverter.class)
    @ExcelProperty(value = "黑名单期限", index = 6, converter = EasyEnumNamesConverter.class)
    private BlackTermEnum type;

    /**
     * 移除状态，0自动移除，1手动移除
     */
    @JSONField(serializeUsing = FastJsonEnumConverter.class)
    @ExcelProperty(value = "移除状态", index = 7, converter = EasyEnumNamesConverter.class)
    private BlackHistoryStatus status;

    /**
     * 员工ID，页面显示
     */
    @ExcelProperty(value = "员工ID", index = 0)
    private String userSystemId;

    /**
     * 所属组织名称
     */
    @ExcelProperty(value = "组织", index = 3)
    private String orgName;

    /**
     * 所属岗位名称
     */
    @ExcelProperty(value = "岗位", index = 4)
    private String postName;

    /**
     * 黑名单类型名
     */
    @ExcelProperty(value = "黑名单类型", index = 5)
    private String blackTypeName;

    /**
     * 移除时间
     */
    @ExcelProperty(value = "移除时间", index = 8)
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ColumnWidth(value = 18)
    private Date createTime;

}
