package com.sptg.ad.api.entity;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/**
 * title: AdPushApp
 * package: com.sptg.estate.biz.service
 * description: 移动端广告发布任务的广告类容
 *
 *               
 *                     
 */
@Getter
@Setter
@TableName(value = "ad_push_app")
public class AdPushApp {

    /**
     *主键
     */
    @TableId(value = "l_id",type = IdType.AUTO)
    private Long id;

    /**
     * 广告id
     */
    @TableField(value = "l_ad_id")
    private Long adId;
    /**
     * 广告标题
     */
    @TableField(value = "s_ad_title")
    private String adTitle;

    /**
     * 广告类型id
     */
    @TableField(value = "l_ad_type_id")
    private Long adTypeId;

    /**
     * 广告类型名称
     */
    @TableField(value = "s_ad_type_name")
    private String adTypeName;

    /**
     * 广告编号的格式用yyMMdd+2位排序号前面补0
     */
    @TableField(value = "s_ad_code")
    private String adCode;
    /**
     *  广告类型 0-图片 1-视频
     */
    @TableField(value = "i_video_type")
    private Integer videoType;
    /**
     * 图片/视频文件路径
     */
    @TableField(value = "s_video_uri")
    private String videoUri;

    /**
     * 图片/视频文件的md5值
     */
    @TableField(value = "s_video_md5")
    private String videoMd5;
    /**
     * 排序
     */
    @TableField(value = "i_sort")
    private Integer sort;
    /**
     *  公告在app端显示的位置 0-启动页广告 1-首页轮播图广告 2-授权密码页面广告 3-消息通知广告
     */
    @TableField(value = "i_position_type")
    private Integer positionType;

    /**
     * 发布类型{ 0 ：默认，1 ：按小区发布，2：按单元发布，3：按区域发布，4：按用户标签发布}
     */
    @TableField(value = "i_push_type")
    private Integer pushType;

    /**
     * 发布类型{ 0 ：所有，2：小程序，3：安卓，4：苹果}
     */
    @TableField(value = "i_app_type")
    private Integer appType;
    /**
     * 是否启用：{ -1：禁用，0：正常 }
     */
    @TableField(value = "i_is_enable")
    private Integer isEnable;
    /**
     * 删除标记：{ -1：已删除，0：正常 }
     */
    @TableField(value = "i_status")
    private Integer status;
    /**
     * 创建时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @TableField(value = "t_create_date")
    private Date createDate;
    /**
     * 创建人id
     */
    @TableField(value = "l_create_account_id")
    private Long createAccountId;
    /**
     * 创建人的账号登录名
     */
    @TableField(value = "s_create_account_name")
    private String createAccountName;
    /**
     * 所属机构id
     */
    @TableField(value = "l_org_id")
    private Long orgId;
    /**
     * 根机构id
     */
    @TableField(value = "l_root_org_id")
    private Long rootOrgId;

    /**
     * 存储位置
     */
    @TableField(value = "s_org_position")
    private String orgPosition;

    /**
     * 过期时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @TableField(value = "d_expiration_time")
    private Date expirationTime;
}
