package com.contract.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.time.LocalDateTime;

@Data
@TableName("app_header")
public class AppHeader {

    @TableId(type = IdType.AUTO)
    private Long id;

    /** Header标题 */
    private String title;

    /** 媒体类型: image=图片, video=视频 */
    private String mediaType;

    /** 展示类型: 0=通用, 1=日间/夜间 */
    private Integer displayType;

    /** 通用媒体地址（displayType=0时使用） */
    private String mediaUrl;

    /** 日间媒体地址（displayType=1时使用） */
    private String dayMediaUrl;

    /** 夜间媒体地址（displayType=1时使用） */
    private String nightMediaUrl;

    /** 跳转类型: internal=APP内部页面, external=外部网页 */
    private String linkType;

    /** 跳转地址 */
    private String linkUrl;

    /** 排序值，越大越靠前 */
    private Integer sort;

    /** 状态: 1=启用, 0=禁用 */
    private Integer status;

    /** 生效开始时间（为空则不限制） */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime startTime;

    /** 生效结束时间（为空则不限制） */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime endTime;

    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;

    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;
}
