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

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
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 java.util.Date;

/**
 * 自动投放-v3-本地定向表
 *
 * @author jeecg-boot
 * @version V1.0
 * @date 2022-10-31
 */
@Data
@TableName("ctop_v3_kuaishou_account_auto_target")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "ctop_v3_kuaishou_account_auto_target对象", description = "自动投放-v3-本地定向表")
public class V3KuaishouAccountAutoTarget {

    /**
     * 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 targetName;
    /**
     * 可选年龄段 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;
    /**
     * 年龄最小值
     */
    @Excel(name = "年龄最小值", width = 15)
    @ApiModelProperty(value = "年龄最小值")
    private Integer min;
    /**
     * 年龄最大值
     */
    @Excel(name = "年龄最大值", width = 15)
    @ApiModelProperty(value = "年龄最大值")
    private Integer max;
    /**
     * 性别 M：男；F：女；空字符串或不填表示不限
     */
    @Excel(name = "性别 M：男；F：女；空字符串或不填表示不限", width = 15)
    @ApiModelProperty(value = "性别 M：男；F：女；空字符串或不填表示不限")
    private String gender;
    /**
     * 网络环境：wifi、not_wifi 当为空列表时表示不限
     */
    @Excel(name = "网络环境：wifi、not_wifi 当为空列表时表示不限", width = 15)
    @ApiModelProperty(value = "网络环境：wifi、not_wifi 当为空列表时表示不限")
    private String network;
    /**
     * APP行为，按照APP类目ID列表定向(此字段与package_name二选一)
     */
    @Excel(name = "APP行为，按照APP类目ID列表定向(此字段与package_name二选一)", width = 15)
    @ApiModelProperty(value = "APP行为，按照APP类目ID列表定向(此字段与package_name二选一)")
    private String appInterestIds;
    /**
     * APP行为，按照APP包名定向(此字段与：app_interest_ids二选一)
     */
    @Excel(name = "APP行为，按照APP包名定向(此字段与：app_interest_ids二选一)", width = 15)
    @ApiModelProperty(value = "APP行为，按照APP包名定向(此字段与：app_interest_ids二选一)")
    private String packageName;
    /**
     * 1：Android，2：iOS，且系统平台版本应该和所传的appId对应的应用系统一致 版本号下限，Android取值为3.0 ~ 10.0，IOS为6.0 ~ 14.0
     */
    @Excel(name = "当计划类型为 2（提升应用安装）时必填，且系统平台版本应该和所传的appId对应的应用系统一致 版本号下限，Android取值为3.0 ~ 10.0，IOS为6.0 ~ 14.0", width = 15)
    @ApiModelProperty(value = "当计划类型为 2（提升应用安装）时必填，且系统平台版本应该和所传的appId对应的应用系统一致 版本号下限，Android取值为3.0 ~ 10.0，IOS为6.0 ~ 14.0")
    private String platform;

    private String ios;

    private String android;
    /**
     * 设备品牌  传值为[]表示不限；当 platform 为 ios 定向时，没有设备品牌定向；1：苹果（platform字段为空时可选）；2：VIVO；3：OPPO；4：华为；5：小米；6：荣耀；7：三星；8：魅族；9：金立；10：HTC；11：联想；12：酷派；13：酷比；14：中兴；15：乐视；16：LG；17：中国移动；18：360；19：百度；20：努比亚；21：一加；22：海信；23：朵唯；24：美图；25：锤子；26：谷歌；27：小辣椒；28：诺基亚；29：康佳
     */
    @Excel(name = "设备品牌  传值为[]表示不限；当 platform 为 ios 定向时，没有设备品牌定向；1：苹果（platform字段为空时可选）；2：VIVO；3：OPPO；4：华为；5：小米；6：荣耀；7：三星；8：魅族；9：金立；10：HTC；11：联想；12：酷派；13：酷比；14：中兴；15：乐视；16：LG；17：中国移动；18：360；19：百度；20：努比亚；21：一加；22：海信；23：朵唯；24：美图；25：锤子；26：谷歌；27：小辣椒；28：诺基亚；29：康佳", width = 15)
    @ApiModelProperty(value = "设备品牌  传值为[]表示不限；当 platform 为 ios 定向时，没有设备品牌定向；1：苹果（platform字段为空时可选）；2：VIVO；3：OPPO；4：华为；5：小米；6：荣耀；7：三星；8：魅族；9：金立；10：HTC；11：联想；12：酷派；13：酷比；14：中兴；15：乐视；16：LG；17：中国移动；18：360；19：百度；20：努比亚；21：一加；22：海信；23：朵唯；24：美图；25：锤子；26：谷歌；27：小辣椒；28：诺基亚；29：康佳")
    private String deviceBrandIds;
    /**
     * 设备价格 1、不设定价格则传入[]；2、当设定的价格区间不止一个，则只能在如下区间选择[0,1000]（1000以下）、[1001, 1500]、[1501, 2000]、[2001, 2500]、[2501, 3000]、[3001, 3500]、[3501, 4000]、[4001, 4500]、[4501, 5000]、[5001, 5500]、[5500, 20000]（5500以上）
     */
    @Excel(name = "设备价格 1、不设定价格则传入[]；2、当设定的价格区间不止一个，则只能在如下区间选择[0,1000]（1000以下）、[1001, 1500]、[1501, 2000]、[2001, 2500]、[2501, 3000]、[3001, 3500]、[3501, 4000]、[4001, 4500]、[4501, 5000]、[5001, 5500]、[5500, 20000]（5500以上）", width = 15)
    @ApiModelProperty(value = "设备价格 1、不设定价格则传入[]；2、当设定的价格区间不止一个，则只能在如下区间选择[0,1000]（1000以下）、[1001, 1500]、[1501, 2000]、[2001, 2500]、[2501, 3000]、[3001, 3500]、[3501, 4000]、[4001, 4500]、[4501, 5000]、[5001, 5500]、[5500, 20000]（5500以上）")
    private String devicePrice;
    /**
     * 定向人群包
     */
    @Excel(name = "定向人群包", width = 15)
    @ApiModelProperty(value = "定向人群包")
    private String population;
    /**
     * 排除人群包
     */
    @Excel(name = "排除人群包", width = 15)
    @ApiModelProperty(value = "排除人群包")
    private String excludePopulation;
    /**
     * 付费人群包
     */
    @Excel(name = "付费人群包", width = 15)
    @ApiModelProperty(value = "付费人群包")
    private String paidAudience;
    /**
     * 过滤已转化人群0：不限；1：广告组；2：广告计划；3：本账户；4：公司主体；5：APP；6：运营定义产品名
     */
    @Excel(name = "过滤已转化人群0：不限；1：广告组；2：广告计划；3：本账户；4：公司主体；5：APP；6：运营定义产品名", width = 15)
    @ApiModelProperty(value = "过滤已转化人群0：不限；1：广告组；2：广告计划；3：本账户；4：公司主体；5：APP；6：运营定义产品名")
    private Integer filterConvertedLevel;
    /**
     * 过滤已转化人群时间范围 0：近30天；1：近60天；2：近90天
     */
    @Excel(name = "过滤已转化人群时间范围 0：近30天；1：近60天；2：近90天", width = 15)
    @ApiModelProperty(value = "过滤已转化人群时间范围 0：近30天；1：近60天；2：近90天")
    private Integer filterTimeRange;
    /**
     * 媒体定向包(联盟定向专用)
     */
    @Excel(name = "媒体定向包(联盟定向专用)", width = 15)
    @ApiModelProperty(value = "媒体定向包(联盟定向专用)")
    private String media;
    /**
     * 媒体包来源	1：系统推荐；2：用户自定义；(联盟定向专用)
     */
    @Excel(name = "媒体包来源	1：系统推荐；2：用户自定义；(联盟定向专用)", width = 15)
    @ApiModelProperty(value = "媒体包来源	1：系统推荐；2：用户自定义；(联盟定向专用)")
    private Integer mediaSourceType;
    /**
     * 媒体定向排除包(联盟定向专用)
     */
    @Excel(name = "媒体定向排除包(联盟定向专用)", width = 15)
    @ApiModelProperty(value = "媒体定向排除包(联盟定向专用)")
    private String excludeMedia;
    /**
     * 定向地区ID列表 	region_type in (1, 2)时此字段可用
     */
    @Excel(name = "定向地区ID列表 	region_type in (1, 2)时此字段可用", width = 15)
    @ApiModelProperty(value = "定向地区ID列表 	region_type in (1, 2)时此字段可用")
    private String regionCategoryIds;
    /**
     * 定向地区类型，此字段同region_category_ids联动	0：不限；1：指定地区；2：商圈
     */
    @Excel(name = "定向地区类型，此字段同region_category_ids联动	0：不限；1：指定地区；2：商圈", width = 15)
    @ApiModelProperty(value = "定向地区类型，此字段同region_category_ids联动	0：不限；1：指定地区；2：商圈")
    private Integer regionType;
    /**
     * 定向地区用户类型	0：默认，实时在此的用户；1：常住在此的用户；2：不限
     */
    @Excel(name = "定向地区用户类型	0：默认，实时在此的用户；1：常住在此的用户；2：不限", width = 15)
    @ApiModelProperty(value = "定向地区用户类型	0：默认，实时在此的用户；1：常住在此的用户；2：不限")
    private Integer userType;
    /**
     * 行为意向	0：不限；1：自定义；2：系统优选
     */
    @Excel(name = "行为意向	0：不限；1：自定义；2：系统优选", width = 15)
    @ApiModelProperty(value = "行为意向	0：不限；1：自定义；2：系统优选")
    private Integer behaviorType;
    /**
     * 行为定向关键词
     */
    @Excel(name = "行为定向关键词", width = 15)
    @ApiModelProperty(value = "行为定向关键词")
    private String keyword;
    /**
     * 行为定向 类目词
     */
    @Excel(name = "行为定向 类目词", width = 15)
    @ApiModelProperty(value = "行为定向 类目词")
    private String label;
    /**
     * 在多少天内发生行为的用户 0:7天 1：15天 2：30天 3：90天 4：180天
     */
    @Excel(name = "在多少天内发生行为的用户 0:7天 1：15天 2：30天 3：90天 4：180天", width = 15)
    @ApiModelProperty(value = "在多少天内发生行为的用户 0:7天 1：15天 2：30天 3：90天 4：180天")
    private Integer timeType;
    /**
     * 行为强度	0：不限 1：高强度
     */
    @Excel(name = "行为强度	0：不限 1：高强度", width = 15)
    @ApiModelProperty(value = "行为强度	0：不限 1：高强度")
    private Integer strengthType;
    /**
     * 行为场景	1：社区 2：APP 4：推广
     */
    @Excel(name = "行为场景	1：社区 2：APP 4：推广", width = 15)
    @ApiModelProperty(value = "行为场景	1：社区 2：APP 4：推广")
    private String sceneType;
    /**
     * 兴趣定向类目词
     */
    @Excel(name = "兴趣定向类目词", width = 15)
    @ApiModelProperty(value = "兴趣定向类目词")
    private String interestLabel;
    /**
     * 是否开启智能扩量	此字段为true时，此结构体中的字段才有意义。智能定向必须为 true
     */
    @Excel(name = "是否开启智能扩量	此字段为true时，此结构体中的字段才有意义。智能定向必须为 true", width = 15)
    @ApiModelProperty(value = "是否开启智能扩量	此字段为true时，此结构体中的字段才有意义。智能定向必须为 true")
    private String isOpen;
    /**
     * 不可突破年龄 此字段只有在设置了年龄定向age字段后，设置为true才有意义；智能定向必须为 false
     */
    @Excel(name = "不可突破年龄 此字段只有在设置了年龄定向age字段后，设置为true才有意义；智能定向必须为 false", width = 15)
    @ApiModelProperty(value = "不可突破年龄 此字段只有在设置了年龄定向age字段后，设置为true才有意义；智能定向必须为 false")
    private String noAgeBreak;
    /**
     * 不可突破性别 此字段只有在设置了性别定向gender字段后，设置为true才有意义；智能定向必须为 false
     */
    @Excel(name = "不可突破性别 此字段只有在设置了性别定向gender字段后，设置为true才有意义；智能定向必须为 false", width = 15)
    @ApiModelProperty(value = "不可突破性别 此字段只有在设置了性别定向gender字段后，设置为true才有意义；智能定向必须为 false")
    private String noGenderBreak;
    /**
     * 不可突破地域 此字段只有在设置了地域定向region_category_ids字段后，设置为true才有意义；智能定向必须为 false
     */
    @Excel(name = "不可突破地域 此字段只有在设置了地域定向region_category_ids字段后，设置为true才有意义；智能定向必须为 false", width = 15)
    @ApiModelProperty(value = "不可突破地域 此字段只有在设置了地域定向region_category_ids字段后，设置为true才有意义；智能定向必须为 false")
    private String noAreaBreak;
    /**
     * 网红类别
     */
    @Excel(name = "网红类别", width = 15)
    @ApiModelProperty(value = "网红类别")
    private String fansStar;
    /**
     * 兴趣视频
     */
    @Excel(name = "兴趣视频", width = 15)
    @ApiModelProperty(value = "兴趣视频")
    private String interestVideo;
    /**
     * 过滤已安装人群维度	0：过滤（默认）；1：不限
     */
    @Excel(name = "过滤已安装人群维度	0：过滤（默认）；1：不限", width = 15)
    @ApiModelProperty(value = "过滤已安装人群维度	0：过滤（默认）；1：不限")
    private Integer disableInstalledAppSwitch;
    /**
     * 定向模板创建时间
     */
    @ApiModelProperty(value = "定向模板创建时间")
    private Date createTime;
    /**
     * 定向模板修改时间
     */
    @ApiModelProperty(value = "定向模板修改时间")
    private Date updateTime;
}
