package com.xjrsoft.module.student.vo;

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 io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;

/**
* @title: 个人行为导出出参
* @Author szs
* @Date: 2024-01-25
* @Version 1.0
*/

/**
 * @OnceAbsoluteMerge 指定从哪一行/列开始,哪一行/列结束,进行单元格合并
 * firstRowIndex 起始行索引,从0开始
 * lastRowIndex 结束行索引
 * firstColumnIndex 起始列索引,从0开始
 * lastColumnIndex 结束列索引
 */
// 例如: 第2-3行,2-3列进行合并
//@OnceAbsoluteMerge(firstRowIndex = 1, lastRowIndex = 2, firstColumnIndex = 1, lastColumnIndex = 2)
@Data
public class QuantitativeAssessmentSubTableExcelVo {

    /**
    * 班主任user_id
    */
    //每隔两行合并一次(竖着合并单元格)
    //@ContentLoopMerge(eachRow = 2)
    @ExcelIgnore
    @ApiModelProperty("班主任user_id")
    private Long headTeacherUserId;
    /**
     * 班主任OA
     */
    @ExcelProperty(index = 0, value = "班主任OA")
    @ColumnWidth(10)
    @ApiModelProperty("班主任OA")
    private String headTeacherUserName;
    /**
     * 班主任姓名
     */
    @ExcelProperty(index = 1, value = "班主任OA")
    @ColumnWidth(10)
    @ApiModelProperty("班主任姓名")
    private String headTeacherName;
    /**
     * 班级id
     */
    @ExcelIgnore
    @ApiModelProperty("班级id")
    private Long classId;
    /**
     * 班级名
     */
    @ExcelProperty(index = 2, value = "班级名")
    @ColumnWidth(10)
    @ApiModelProperty("班级名")
    private String className;
    /**
     * 学生user_id
     */
    @ExcelIgnore
    @ApiModelProperty("学生user_id")
    private Long studentUserId;
    /**
     * 学号
     */
    @ExcelProperty(index = 3, value = "学号")
    @ColumnWidth(20)
    @ApiModelProperty("学号")
    private String studentId;
    /**
     * 学生名
     */
    @ExcelProperty(index = 4, value = "学生名")
    @ColumnWidth(10)
    @ApiModelProperty("学生名")
    private String studentName;
    /**
     * 学生基础分数
     */
    @ExcelProperty(index = 5, value = "学生基础分数")
    @ColumnWidth(10)
    @ApiModelProperty("学生基础分数")
    private Integer baseScore;
    /**
     * 考核项目id
     */
    @ExcelIgnore
    @ApiModelProperty("考核项目id")
    private Long baseStudentAssessmentProjectId;
    /**
     * 考核项目
     */
    @ExcelProperty(index = 6, value = "考核项目")
    @ColumnWidth(30)
    @ApiModelProperty("考核项目")
    private String baseStudentAssessmentProjectIdCN;
    /**
     * 考核项目
     */
    @DateTimeFormat("yyyy年MM月dd日HH时mm分ss秒")
    @ExcelProperty(index = 7, value = "考核时间")
    @ColumnWidth(30)
    @ApiModelProperty("考核时间")
    private LocalDateTime assessmentDate;
    /**
     * 项目分数
     */
    @ExcelProperty(index = 8, value = "项目分数")
    @ColumnWidth(6)
    @ApiModelProperty("项目分数")
    private Integer projectScore;
    /**
     * 最终得分
     */
    @ExcelProperty(index = 9, value = "最终得分")
    @ColumnWidth(6)
    @ApiModelProperty("最终得分")
    private Integer finalScore;
}
