package cn.com.ctop.kuaishou.modules.batch.entity;

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;

/**
 * @Description: 广告组信息
 * @Author: jeecg-boot
 * @Date: 2019-07-23
 * @Version: V1.0
 */
@Data
@TableName("ctop_kuaishou_group")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "ctop_kuaishou_group对象", description = "广告组信息")
public class KuaiShouGroup {

    /**
     * id
     */
    @TableId
    @ApiModelProperty(value = "id")
    private String id;
    /**
     * 账户ID
     */
    @Excel(name = "账户ID", width = 15)
    @ApiModelProperty(value = "账户ID")
    private Long accountId;
    /**
     * 广告活动ID
     */
    @Excel(name = "广告活动ID", width = 15)
    @ApiModelProperty(value = "广告活动ID")
    private Long campaignId;

    @TableField(exist = false)
    private String campaignName;
    /**
     * 广告组ID
     */
    @Excel(name = "广告组ID", width = 15)
    @ApiModelProperty(value = "广告组ID")
    private Long unitId;
    /**
     * 广告组名称
     */
    @Excel(name = "广告组名称", width = 15)
    @ApiModelProperty(value = "广告组名称")
    private String unitName;
    /**
     * 广告组状态
     */
    @Excel(name = "广告组状态", width = 15)
    @ApiModelProperty(value = "广告组状态")
    private Integer status;
    private Integer putStatus;
    private Integer createChannel;
    /**
     * 审核拒绝理由
     */
    @Excel(name = "审核拒绝理由", width = 15)
    @ApiModelProperty(value = "审核拒绝理由")
    private String reviewDetail;
    /**
     * 出价类型
     */
    @Excel(name = "出价类型", width = 15)
    @ApiModelProperty(value = "出价类型")
    private Integer bidType;
    /**
     * 出价
     */
    @Excel(name = "出价", width = 15)
    @ApiModelProperty(value = "出价")
    private Long bid;
    /**
     * OCPC出价
     */
    @Excel(name = "OCPC出价", width = 15)
    @ApiModelProperty(value = "OCPC出价")
    private Long cpaBid;

    private Integer deepConversionType;
    private Long deepConversionBid;

    /**
     * OCPX行为类型   1： CPM， 2： CPC，
     */
    @Excel(name = "OCPX行为类型   1： CPM， 2： CPC，", width = 15)
    @ApiModelProperty(value = "OCPX行为类型   1： CPM， 2： CPC，")
    private Integer ocpxActionType;
    /**
     * 单日预算
     */
    @Excel(name = "单日预算", width = 15)
    @ApiModelProperty(value = "单日预算")
    private Long dayBudget;
    /**
     * 投放方式  0：未知， 1：正常投
     */
    @Excel(name = "投放方式  0：未知， 1：正常投", width = 15)
    @ApiModelProperty(value = "投放方式  0：未知， 1：正常投")
    private Integer speed;
    /**
     * 投放开始时间
     */
    @Excel(name = "投放开始时间", width = 15)
    @ApiModelProperty(value = "投放开始时间")
    private String beginTime;
    /**
     * 投放结束时间
     */
    @Excel(name = "投放结束时间", width = 15)
    @ApiModelProperty(value = "投放结束时间")
    private String endTime;
    private String scheduleTime;
    private String sceneId;

    /**
     * 创意展现方式  0：未知， 1：轮播，
     */
    @Excel(name = "创意展现方式  0：未知， 1：轮播，", width = 15)
    @ApiModelProperty(value = "创意展现方式  0：未知， 1：轮播，")
    private Integer showMode;
    private Integer unitType;
    /**
     * url类型
     */
    @Excel(name = "url类型 ", width = 15)
    @ApiModelProperty(value = "url类型 ")
    private Integer urlType;
    /**
     * 落地页链接
     */
    @Excel(name = "落地页链接", width = 15)
    @ApiModelProperty(value = "落地页链接")
    private Object url;
    /**
     * APP ID
     */
    @Excel(name = "APP ID", width = 15)
    @ApiModelProperty(value = "APP ID")
    private Long appId;
    /**
     * APP图标存储地址
     */
    @Excel(name = "APP图标存储地址", width = 15)
    @ApiModelProperty(value = "APP图标存储地址")
    private String appIconUrl;


    private Long convertId; // 转化目标
    private Integer useAppMarket; // 转化目标
    private String groupCreateTime;
    private String groupUpdateTime;

    // 应用商店列表
    private String appStore;


    /**
     * 创建时间
     */
    @Excel(name = "创建时间", 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 = "创建时间")
    private Date createTime;
    /**
     * 修改时间
     */
    @Excel(name = "修改时间", 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 = "修改时间")
    private Date updateTime;

    @TableField(exist = false)
    private KuaiShouGroupTarget target;

}
