package cn.com.ctop.common.module.utils;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 外部素材集信息表
 *
 * @author jeecg-boot
 * @version V1.0
 * @date 2022-01-12
 */
@Data
@TableName("ctop_external_material_collection")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "ctop_external_material_collection对象", description = "外部素材集信息表")
public class ExternalMaterialCollection {

    /**
     * id
     */
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "id")
    private Long id;
    /**
     * 创建人id
     */
    @Excel(name = "创建人id", width = 15)
    @ApiModelProperty(value = "创建人id")
    private String userId;
    /**
     * 媒体类型 1头条，2快手
     */
    @Excel(name = "媒体类型 1头条，2快手", width = 15)
    @ApiModelProperty(value = "媒体类型 1头条，2快手")
    private Integer mediaType;
    /**
     * 创建形式：1视频、2链接
     */
    @Excel(name = "创建形式：1视频、2链接,3导入，4同步内部", width = 15)
    @ApiModelProperty(value = "创建形式：1视频、2链接,3导入，4同步内部")
    private Integer createType;
    /**
     * 素材唯一标识
     */
    @Excel(name = "素材唯一标识", width = 15)
    @ApiModelProperty(value = "素材唯一标识")
    private String md5;
    /**
     * url
     */
    @Excel(name = "url", width = 15)
    @ApiModelProperty(value = "url")
    private String url;

    /**
     * 外部 url
     */
    @Excel(name = "externalUrl", width = 15)
    @ApiModelProperty(value = "externalUrl")
    private String externalUrl;
    /**
     * coverUrl
     */
    @Excel(name = "coverUrl", width = 15)
    @ApiModelProperty(value = "coverUrl")
    private String coverUrl;
    /**
     * 创建时间
     */
    private String statDate;
    /**
     * 素材来源
     */
    @Excel(name = "素材来源", width = 15)
    @ApiModelProperty(value = "素材来源")
    private String materialSource;
    /**
     * 行业标签
     */
    @Excel(name = "行业", width = 15)
    @ApiModelProperty(value = "行业")
    private String industry;

    /**
     * 产品
     */
    @Excel(name = "产品", width = 15)
    @ApiModelProperty(value = "产品")
    private String product;
    /**
     * 形式标签 modalityTagList::1
     */
    @Excel(name = "形式标签", width = 15)
    @ApiModelProperty(value = "形式标签")
    private String modalityTag;
    /**
     * 场景标签 senceTagList 4
     */
    @Excel(name = "场景标签", width = 15)
    @ApiModelProperty(value = "场景标签")
    private String sceneTag;
    /**
     * 基调标签 daTagList:2
     */
    @Excel(name = "基调标签", width = 15)
    @ApiModelProperty(value = "基调标签")
    private String daTag;
    /**
     * 版位
     */
    @Excel(name = "版位", width = 15)
    @ApiModelProperty(value = "版位")
    private String platePosition;
    /**
     * 素材描述
     */
    @Excel(name = "素材描述", width = 15)
    @ApiModelProperty(value = "素材描述")
    private String materialDescribe;
    /**
     * 素材名称
     */
    @Excel(name = "素材名称", width = 15)
    @ApiModelProperty(value = "素材名称")
    private String materialName;
    /**
     * 视频秒数
     */
    @Excel(name = "视频秒数", width = 15)
    @ApiModelProperty(value = "视频秒数")
    private Long second;
    /**
     * 格式
     */
    @Excel(name = "格式", width = 15)
    @ApiModelProperty(value = "格式")
    private String format;
    /**
     * 宽度
     */
    @Excel(name = "宽度", width = 15)
    @ApiModelProperty(value = "宽度")
    private String width;
    /**
     * 高度
     */
    @Excel(name = "高度", width = 15)
    @ApiModelProperty(value = "高度")
    private String height;
    /**
     * 大小
     */
    @Excel(name = "大小", width = 15)
    @ApiModelProperty(value = "大小")
    private String size;
    /**
     * createTime
     */
    @Excel(name = "createTime", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "createTime")
    private Date createTime;
    /**
     * updateTime
     */
    @Excel(name = "updateTime", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "updateTime")
    private Date updateTime;

    @TableField(exist = false)
    private String startTime;
    @TableField(exist = false)
    private String endTime;
}
