package com.sckw.operation.model.vo.req;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.sckw.core.model.page.PageRequest;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

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

/**
 * @author sky
 * @desc 新增入参
 * @date 2023/7/10
 */
@Data
public class BannerAddReqVo extends PageRequest implements Serializable {

    @Serial
    private static final long serialVersionUID = 5677297006062954377L;

    private Long id;

    @NotBlank(message = "名称不能为空")
    @Size(max = 40, message = "名称内容超长")
    private String name;
    /**
     * 展示图片
     */
    @NotBlank(message = "图片地址不能为空")
    @Size(max = 200, message = "图片地址超长")
    private String url;
    /**
     * 跳转地址
     */
    @Size(max = 100, message = "跳转地址超长")
    private String jumpUrl;

    /**
     * 显示区域（0首页,1建材市场,2求购大厅,3运需广场,4运力大厅,5金融服务,6车后服务,7绿智新能）
     */
    @NotNull(message = "显示区域不能为空")
    private Integer district;

    /**
     * 创建开始时间（时间戳）
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @NotNull(message = "开始时间不能为空")
    private Date startTime;

    /**
     * 创建结束时间（时间戳）
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;

    /**
     * 排序
     */

    private Integer sort;

    /**
     * 排序
     */

    private String clientType;


    /**
     * 备注
     */

    private String remark;

    /**
     * 状态(0 草稿 1已发布 2取消发布)
     */
    @NotNull(message = "状态不能为空")
    private Integer status;


}
