package com.ylx.banner.domain;

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 io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * 轮播图
 *
 * @author YJR
 * @since 2023-11-24
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("banner")
@ApiModel(value = "Banner", description = "轮播图")
public class Banner implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键。
     */
    @TableId("id")
    @ApiModelProperty("主键")
    private String id;

    /**
     * 标题。
     */
    @TableField("title")
    @ApiModelProperty("标题")
    private String title;

    /**
     * 图片地址。
     */
    @TableField("img_url")
    @ApiModelProperty("图片地址")
    private String imgUrl;

    /**
     * 跳转地址，支持 HTTP 链接或内部路由。
     */
    @TableField("jump_url")
    @ApiModelProperty("跳转地址，支持HTTP链接或内部路由")
    private String jumpUrl;

    /**
     * 序号。
     */
    @TableField("sort")
    @ApiModelProperty("序号")
    private Integer sort;

    /**
     * 显示状态：0-隐藏，1-显示。
     */
    @TableField("status")
    @ApiModelProperty("显示状态：0-隐藏，1-显示")
    private Integer status;

    /**
     * 创建时间。
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("create_time")
    @ApiModelProperty("创建时间")
    private Date createTime;

    /**
     * 修改时间。
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("update_time")
    @ApiModelProperty("修改时间")
    private Date updateTime;

    /**
     * 是否删除：0-否，1-是。
     */
    @TableLogic
    @TableField("is_delete")
    @ApiModelProperty("是否删除：0-否，1-是")
    private Integer isDelete;
}
