package com.yida.data.common.core.entity.exam;


import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;

import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.List;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 考试成绩发布配置管理 Entity
 *
 * @author zhanghaijun
 * @date 2021-06-22 10:20:58
 */
@Data
@TableName("core_examination_publish")
public class CoreExaminationPublish {

    /**
     *
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     *
     */
    @TableField(value = "create_id", fill = FieldFill.INSERT)
    private Long createId;

    /**
     * 创建、发布时间
     */
    @TableField(value = "create_date", fill = FieldFill.INSERT)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createDate;

    /**
     *
     */
    @TableField(value = "update_id", fill = FieldFill.UPDATE)
    private Long updateId;

    /**
     *
     */
    @TableField(value = "update_date", fill = FieldFill.UPDATE)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateDate;

    /**
     *
     */
    @TableField("del_flag")
    @TableLogic(value = "0", delval = "1")
    private String delFlag;

    /**
     * 本次考试主键
     */
    @TableField("core_examination_id")
    private Long coreExaminationId;

    /**
     * 是否需要回执（1=是，0=否）
     */
    @TableField("receipt")
    private Integer receipt;

    /**
     * 是否添加评语（1=是，0=否）
     */
    @TableField("comment")
    private Integer comment;

    /**
     * 评语
     */
    @TableField("comment_content")
    private String commentContent;

    /**
     * 是否屏蔽学校 0:否, 1:是
     */
    @TableField("school_block")
    private Integer schoolBlock;

    /**
     * 是否屏蔽老师 0:否, 1:是
     */
    @TableField("teacher_block")
    private Integer teacherBlock;

    /**
     * 是否屏蔽家长 0:否, 1:是
     */
    @TableField("parent_block")
    private Integer parentBlock;

    /**
     * 是否屏蔽学生 0:否, 1:是
     */
    @TableField("student_block")
    private Integer studentBlock;

    /**
     * 是否屏蔽联考排名 0:否, 1:是
     */
    @TableField("joint_rank_block")
    private Integer jointRankBlock;

    /**
     * 是否屏蔽学校排名 0:否, 1:是
     */
    @TableField("school_rank_block")
    private Integer schoolRankBlock;

    /**
     * 是否屏蔽年级排名 0:否, 1:是
     */
    @TableField("grade_rank_block")
    private Integer gradeRankBlock;

    /**
     * 是否屏蔽班级排名 0:否, 1:是
     */
    @TableField("class_rank_block")
    private Integer classRankBlock;

    @ApiModelProperty("是否屏蔽成绩（只显示排名），0-否，1-是")
    private Integer scoreBlock;

    @ApiModelProperty("是否屏蔽总分，0-否，1-是")
    private Integer totalScoreBlock;

    @ApiModelProperty("总分 划分分数段分数")
    private Integer scoreSection;

    @ApiModelProperty("各科 划分分数段分数")
    private Integer courseScoreSection;


    @TableField(exist = false)
    private List<CoreExaminationPublishGradeConvertType> typeList;
}