package com.xjrsoft.module.student.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
* @title: 学生干部管理表单出参
* @Author dzx
* @Date: 2023-11-14
* @Version 1.0
*/
@Data
public class BaseStudentCadreVo {

    /**
     * 主键编号
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("主键编号")
    @ApiModelProperty("主键编号")
    private String id;

    /**
     * 学生id
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("学生id")
    @ApiModelProperty("学生id")
    private Long userId;

    @ContentStyle(dataFormat = 49)
    @ExcelProperty("学生姓名")
    @ApiModelProperty("学生姓名")
    private String userName;

    @ContentStyle(dataFormat = 49)
    @ExcelProperty("学号")
    @ApiModelProperty("学号")
    private String studentId;
    /**
     * 班级id
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("班级id")
    @ApiModelProperty("班级id")
    private Long classId;

    @ContentStyle(dataFormat = 49)
    @ExcelProperty("班级名称")
    @ApiModelProperty("班级名称")
    private String className;
    /**
     * 职务id
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("职务id")
    @ApiModelProperty("职务id")
    private Long postId;


    @ContentStyle(dataFormat = 49)
    @ExcelProperty("职务")
    @ApiModelProperty("职务")
    private String post;

    @ContentStyle(dataFormat = 49)
    @ExcelProperty("职务级别")
    @ApiModelProperty("职务级别")
    private String level;
    /**
     * 干部部门编号
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("干部部门编号")
    @ApiModelProperty("干部部门编号")
    private Long cadreDeptId;

    @ContentStyle(dataFormat = 49)
    @ExcelProperty("干部部门编号")
    @ApiModelProperty("干部部门编号")
    private String cadreDeptIdCN;

    /**
     * 任职开始时间
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("任职开始时间")
    @ApiModelProperty("任职开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startTime;
    /**
     * 任职结束时间
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("任职结束时间")
    @ApiModelProperty("任职结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endTime;
    /**
     * 状态（1:在职 0:离职）
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("状态（1:在职 0:离职）")
    @ApiModelProperty("状态（1:在职 0:离职）")
    private Integer status;
    /**
     * 离职生效日期
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("离职生效日期")
    @ApiModelProperty("离职生效日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date leaveTime;
    /**
     * 离职原因
     */
    @ContentStyle(dataFormat = 49)
    @ExcelProperty("离职原因")
    @ApiModelProperty("离职原因")
    private String leaveReason;
}
