package com.crunii.micro.domain.entity.main;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;

/**
 * @author baoxy
 * @date 2023-06-28
 */
@Entity
@Table(name = "ycq_match_carousel")
@DynamicInsert
@DynamicUpdate
@Getter
@Setter
@ToString
@EqualsAndHashCode(of = {"carouselId"})
@GenericGenerator(name = "idGenerator", strategy = "com.crunii.micro.core.distributed.DistributedSnowFlakeId")
@ApiModel(description = "团委组织表")
public class YcqMatchCarousel implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(generator = "idGenerator")
    @Column(name = "carousel_id")
    @ApiModelProperty(value = "主键id")
    private Long carouselId;

    @Column(name = "article_id")
    @ApiModelProperty(value = "文章id")
    private Long articleId;

    @Column(name = "file_name")
    @ApiModelProperty(value = "文件名称")
    private String fileName;

    @Column(name = "file_type")
    @ApiModelProperty(value = "文件类型")
    private String fileType;

    @Column(name = "file_size")
    @ApiModelProperty(value = "文件大小")
    private String fileSize;

    @Column(name = "pic_width")
    @ApiModelProperty(value = "图片宽度")
    private Integer picWidth;

    @Column(name = "pic_height")
    @ApiModelProperty(value = "图片宽度")
    private Integer picHeight;

    @Column(name = "file_key")
    @ApiModelProperty(value = "图片key")
    private String fileKey;

    @Column(name = "start_time")
    @ApiModelProperty(value = "轮播展示开始时间")
    private Date startTime;

    @Column(name = "end_time")
    @ApiModelProperty(value = "轮播展示结束时间")
    private Date endTime;

    @Column(name = "show_day")
    @ApiModelProperty(value = "轮播展示天数")
    private Integer showDay;

    @Column(name = "state")
    @ApiModelProperty(value = "状态")
    private Integer state;

    @Column(name = "web_pic")
    @ApiModelProperty(value = "网页图片 0 否 1 是")
    private Integer webPic;
}

