package cn.iocoder.yudao.module.knowledge.entity;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.module.knowledge.annotation.ExcelOut;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 违章表(TViolation)表实体类
 *
 * @author makejava
 * @since 2024-04-13 14:58:19
 */
@Data
public class TViolation extends BaseDO {
    @Schema(description = "主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @Schema(
            description = "违章标题",
            example = "违章了"
    )
    @ExcelOut(name = "违章标题", sort = 1)
    private String title;

    @Schema(
            description = "违章类别",
            example = "1"
    )
    @ExcelOut(name = "违章类别", sort = 2)
    private String type;

    @Schema(
            description = "违章人员",
            example = "王"
    )
    @ExcelOut(name = "违章人员", sort = 3)
    private String violator;

    @Schema(
            description = "备注说明",
            example = "备注"
    )
    private String descr;

    @Schema(
            description = "违章编码",
            example = "A02"
    )
    private String code;

    @Schema(
            description = "违章时间",
            example = "2024-04-14 15:13:42"
    )
    @ExcelOut(name = "违章时间", sort = 5,width = 25,dateFormat = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date violationTime;

    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date violationTimes;

    @Schema(
            description = "最后推送时间",
            example = "2024-04-14 15:13:42"
    )
    private Date lastPushTime;

    @Schema(
            description = "预留字段",
            example = "预留字段"
    )
    private String violationB;

    @Schema(
            description = "创建人",
            example = "人员"
    )
    @ExcelOut(name = "创建人", sort = 4)
    private String creator;


}

