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

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 2021-11-08
 */
@Data
@TableName("ctop_kuaishou_hosting_template")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "ctop_kuaishou_hosting_template对象", description = "智能托管模板")
public class KuaishouHostingTemplate {

    /**
     * id
     */
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "id")
    private Long id;
    /**
     * 账户ID
     */
    @Excel(name = "账户ID", width = 15)
    @ApiModelProperty(value = "账户ID")
    private Long accountId;
    /**
     * 创建人
     */
    @Excel(name = "创建人", width = 15)
    @ApiModelProperty(value = "创建人")
    private String userId;
    /**
     * 项目名称
     */
    @Excel(name = "项目名称", width = 15)
    @ApiModelProperty(value = "项目名称")
    private String name;
    /**
     * 营销场景
     */
    @Excel(name = "营销场景", width = 15)
    @ApiModelProperty(value = "营销场景")
    private Integer hostingScene;
    /**
     * 计划类型
     */
    @Excel(name = "计划类型", width = 15)
    @ApiModelProperty(value = "计划类型")
    private Integer campaignType;
    /**
     * APP ID
     */
    @Excel(name = "APP ID", width = 15)
    @ApiModelProperty(value = "APP ID")
    private Long appId;
    /**
     * 应用下载地址/落地页地址
     */
    @Excel(name = "应用下载地址/落地页地址", width = 15)
    @ApiModelProperty(value = "应用下载地址/落地页地址")
    private String webUri;
    /**
     * 优先从系统应用商店下载
     */
    @Excel(name = "优先从系统应用商店下载", width = 15)
    @ApiModelProperty(value = "优先从系统应用商店下载")
    private Integer useAppMarket;
    /**
     * 应用商店列表
     */
    @Excel(name = "应用商店列表", width = 15)
    @ApiModelProperty(value = "应用商店列表")
    private String appStore;
    /**
     * 贴纸id集合
     */
    @Excel(name = "贴纸id集合", width = 15)
    @ApiModelProperty(value = "贴纸id集合")
    private String stickerStyles;
    /**
     * 贴纸广告语集合
     */
    @Excel(name = "贴纸广告语集合", width = 15)
    @ApiModelProperty(value = "贴纸广告语集合")
    private String coverSlogans;
    /**
     * 行动号召按钮
     */
    @Excel(name = "行动号召按钮", width = 15)
    @ApiModelProperty(value = "行动号召按钮")
    private String actionBar;
    /**
     * 作品广告语集合
     */
    @Excel(name = "作品广告语集合", width = 15)
    @ApiModelProperty(value = "作品广告语集合")
    private String captions;
    /**
     * 第三方点击检测链接
     */
    @Excel(name = "第三方点击检测链接", width = 15)
    @ApiModelProperty(value = "第三方点击检测链接")
    private String clickUrl;
    /**
     * 第三方actionbar点击检测链接
     */
    @Excel(name = "第三方actionbar点击检测链接", width = 15)
    @ApiModelProperty(value = "第三方actionbar点击检测链接")
    private String actionbarClickUrl;
    /**
     * 自动生成视频 1:true 2:false
     */
    @Excel(name = "自动生成视频 1:true 2:false", width = 15)
    @ApiModelProperty(value = "自动生成视频 1:true 2:false")
    private Integer autoCreatePhoto;
    /**
     * 投放排期
     */
    @Excel(name = "投放排期", width = 15)
    @ApiModelProperty(value = "投放排期")
    private String schedule;
    /**
     * 每日预算
     */
    @Excel(name = "每日预算", width = 15)
    @ApiModelProperty(value = "每日预算")
    private Long dayBudget;
    /**
     * 优化目标
     */
    @Excel(name = "优化目标", width = 15)
    @ApiModelProperty(value = "优化目标")
    private Integer ocpxActionType;
    /**
     * 优化目标出价
     */
    @Excel(name = "优化目标出价", width = 15)
    @ApiModelProperty(value = "优化目标出价")
    private Long cpaBid;
    /**
     * 深度优化目标
     */
    @Excel(name = "深度优化目标", width = 15)
    @ApiModelProperty(value = "深度优化目标")
    private Integer deepConversionType;
    /**
     * 深度优化目标出价
     */
    @Excel(name = "深度优化目标出价", width = 15)
    @ApiModelProperty(value = "深度优化目标出价")
    private Long deepConversionBid;
    /**
     * 建站页面id
     */
    @Excel(name = "建站页面id", width = 15)
    @ApiModelProperty(value = "建站页面id")
    private Long siteId;
    /**
     * 抽帧 1：true 2：false
     */
    @Excel(name = "抽帧 1：true 2：false", width = 15)
    @ApiModelProperty(value = "抽帧 1：true 2：false")
    private Integer smartCover;
    /**
     * roi系数
     */
    @Excel(name = "roi系数", width = 15)
    @ApiModelProperty(value = "roi系数")
    private Double roiRatio;
    /**
     * 咨询组件id
     */
    @Excel(name = "咨询组件id", width = 15)
    @ApiModelProperty(value = "咨询组件id")
    private Long consultId;
    /**
     * 课程库id
     */
    @Excel(name = "课程库id", width = 15)
    @ApiModelProperty(value = "课程库id")
    private Long merchandiseId;
    /**
     * 商品类型
     */
    @Excel(name = "商品类型", width = 15)
    @ApiModelProperty(value = "商品类型")
    private Integer merchandiseType;
    /**
     * 素材挖掘 1：true 2：false
     */
    @Excel(name = "素材挖掘 1：true 2：false", width = 15)
    @ApiModelProperty(value = "素材挖掘 1：true 2：false")
    private Integer assetMining;
    /**
     * 小说id
     */
    @Excel(name = "小说id", width = 15)
    @ApiModelProperty(value = "小说id")
    private Long fictionId;
    /**
     * 落地页类型
     */
    @Excel(name = "落地页类型", width = 15)
    @ApiModelProperty(value = "落地页类型")
    private Integer webUriType;
    /**
     * 最小年龄
     */
    @Excel(name = "最小年龄", width = 15)
    @ApiModelProperty(value = "最小年龄")
    private Integer minAge;
    /**
     * 最大年龄
     */
    @Excel(name = "最大年龄", width = 15)
    @ApiModelProperty(value = "最大年龄")
    private Integer maxAge;
    /**
     * 【18：表示18-23岁】【24：表示24-30岁】【31：表示31-40岁】【41：表示41-49岁】【50：表示50-100岁】
     */
    @Excel(name = "【18：表示18-23岁】【24：表示24-30岁】【31：表示31-40岁】【41：表示41-49岁】【50：表示50-100岁】", width = 15)
    @ApiModelProperty(value = "【18：表示18-23岁】【24：表示24-30岁】【31：表示31-40岁】【41：表示41-49岁】【50：表示50-100岁】")
    private String agesRange;
    /**
     * 定向人群id集合
     */
    @Excel(name = "定向人群id集合", width = 15)
    @ApiModelProperty(value = "定向人群id集合")
    private String population;
    /**
     * 排除人群id集合
     */
    @Excel(name = "排除人群id集合", width = 15)
    @ApiModelProperty(value = "排除人群id集合")
    private String excludePopulation;
    /**
     * 付费人群id集合
     */
    @Excel(name = "付费人群id集合", width = 15)
    @ApiModelProperty(value = "付费人群id集合")
    private String paidAudience;
    /**
     * 性别 "F"代表女性 "M"代表男性
     */
    @Excel(name = "性别 F代表女性 M代表男性", width = 15)
    @ApiModelProperty(value = "性别 F代表女性 M代表男性")
    private String gender;
    /**
     * 定向地域
     */
    @Excel(name = "定向地域", width = 15)
    @ApiModelProperty(value = "定向地域")
    private String regionIds;
    /**
     * 定向地域的人群类型
     */
    @Excel(name = "定向地域的人群类型", width = 15)
    @ApiModelProperty(value = "定向地域的人群类型")
    private String userType;
    /**
     * 智能扩量是否开启 1：true 2：false
     */
    @Excel(name = "智能扩量是否开启 1：true 2：false", width = 15)
    @ApiModelProperty(value = "智能扩量是否开启 1：true 2：false")
    private Integer isOpen;
    /**
     * 是否允许打破年龄带限制 1：true 2：false
     */
    @Excel(name = "是否允许打破年龄带限制 1：true 2：false", width = 15)
    @ApiModelProperty(value = "是否允许打破年龄带限制 1：true 2：false")
    private Integer noAgeBreak;
    /**
     * 是否允许打破性别限制 1：true 2：false
     */
    @Excel(name = "是否允许打破性别限制 1：true 2：false", width = 15)
    @ApiModelProperty(value = "是否允许打破性别限制 1：true 2：false")
    private Integer noGenderBreak;
    /**
     * 是否允许打破地域限制 1：true 2：false
     */
    @Excel(name = "是否允许打破地域限制 1：true 2：false", width = 15)
    @ApiModelProperty(value = "是否允许打破地域限制 1：true 2：false")
    private Integer noAreaBreak;
    /**
     * 操作系统 1： Android， 2： iOS， 0：不限
     */
    @Excel(name = "操作系统 1： Android， 2： iOS， 0：不限", width = 15)
    @ApiModelProperty(value = "操作系统 1： Android， 2： iOS， 0：不限")
    private Integer platformOs;
    /**
     * 版本
     */
    @Excel(name = "版本", width = 15)
    @ApiModelProperty(value = "版本")
    private Integer platformOv;
    /**
     * 过滤已转化人群
     */
    @Excel(name = "过滤已转化人群", width = 15)
    @ApiModelProperty(value = "过滤已转化人群")
    private Integer filterConvertedLevel;
    /**
     * 是否开启命名规则 1：truw 2：false
     */
    @Excel(name = "是否开启命名规则 1：truw 2：false", width = 15)
    @ApiModelProperty(value = "是否开启命名规则 1：truw 2：false")
    private Integer ruleEnable;
    /**
     * 计划命名规则
     */
    @Excel(name = "计划命名规则", width = 15)
    @ApiModelProperty(value = "计划命名规则")
    private String campaignNameRule;
    /**
     * 组命名规则
     */
    @Excel(name = "组命名规则", width = 15)
    @ApiModelProperty(value = "组命名规则")
    private String unitNameRule;
    /**
     * 创意命名规则
     */
    @Excel(name = "创意命名规则", width = 15)
    @ApiModelProperty(value = "创意命名规则")
    private String creativeNameRule;
    /**
     * 每个智能托管匹配视频数量
     */
    @Excel(name = "每个智能托管匹配视频数量", width = 15)
    @ApiModelProperty(value = "每个智能托管匹配视频数量")
    private Integer videoCount;

    /**
     * 投放场景
     */
    private String sceneIds;

    /**
     * 创建时间
     */
    @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 String projectName;
    @TableField(exist = false)
    private String accountName;
    @TableField(exist = false)
    private String userName;


}
