package com.ruixuan.isc.entity;

import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.data.annotation.Transient;

import java.util.Date;
import java.util.List;

/**
 * 快手达人 信息对象 kuaishou_promoter
 */
@Data
@ApiModel(value = "KuaishouPromoter", description = "快手达人")
public class JYKuaishouPromoter {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 媒体：1头条，2快手
     */
    private String mediaId;

    /**
     * 类型：1自营、2分销
     */
    private String type;

    /**
     * 创建人ID
     */
    @ApiModelProperty(name = "创建人ID")
    private Long userId;

    /**
     * 创建人名称
     */
    @ApiModelProperty(name = "创建人名称")
    private String userName;

    /**
     * 达人id(快手lD)
     */
    @ApiModelProperty(name = "达人id(快手lD)")
    private String promoterId;

    /**
     * 达人昵称
     */
    @ApiModelProperty(name = "达人昵称")
    private String promoterNickName;

    /**
     * 达人状态：1-生效，0-无效
     */
    @ApiModelProperty(name = "达人状态：1-生效，0-无效")
    private String state;

    /**
     * 省市
     */
    @ApiModelProperty(name = "省市")
    private String province;

    /**
     * 佣金要求
     */
    @ApiModelProperty(name = "佣金要求")
    private String commissionRequirement;

    /**
     * 品类要求
     */
    @ApiModelProperty(name = "品类要求")
    private String categoryRequirement;
    /**
     * 收货人
     */
    @ApiModelProperty(name = "收货人")
    private String consignee;

    /**
     * 联系电话
     */
    @ApiModelProperty(name = "联系电话")
    private String phone;
    /**
     * 总销售额
     */
    @ApiModelProperty(name = "总销售额")
    private String totalSale;
    /**
     * 粉丝数
     */
    @ApiModelProperty(name = "粉丝数")
    private String fansNumber;

    /**
     * 发货地址
     */
    @ApiModelProperty(name = "发货地址")
    private String promoterAddress;

    /**
     * 达人头像链接
     */
    @ApiModelProperty(name = "达人头像")
    private String promoterUrl;
    /**
     * 单视频销售额
     */
    @ApiModelProperty(name = "单视频销售额")
    private String avgVideoSales;
    /**
     * 短视频销售额
     */
    @ApiModelProperty(name = "短视频销售额")
    private String videoSales;
    /**
     * 睿选gmv
     */
    @ApiModelProperty(name = "睿选gmv")
    private String monthDayGmv;

    /**
     * 30天出单量
     */
    @ApiModelProperty(name = "30天出单量")
    private String monthDayOrderNum;

    /**
     * 出单金额
     */
    @ApiModelProperty(name = "出单金额")
    private String validAmount;

    /**
     * 粉丝增量
     */
    @ApiModelProperty(name = "粉丝增量")
    private Long followerIncr;

    /**
     * 出单金额
     */
    @ApiModelProperty(name = "真播场次")
    private Integer liveCount30;

    /**
     * 平均点赞量
     */
    @ApiModelProperty(name = "平均点赞量")
    private Long awemeAvgDiggCount30;

    /**
     * 平均赞粉比
     */
    @ApiModelProperty(name = "平均赞粉比")
    private String awemeDiggFollowerRation;

    /**
     * 真播平均场观
     */
    @ApiModelProperty(name = "真播平均场观")
    private String liveAverageUser30;

    /**
     * 跟进记录
     */
    @ApiModelProperty(name = "跟进记录")
    private String followUpRecord;

    /**
     * 标签集
     */
    private List<JSONObject> labels;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;


    @Transient
    private Long ruleId;
    @Transient
    private String ruleName;

    public JYKuaishouPromoter() {
    }

    public JYKuaishouPromoter(Long id, String promoterNickName, String province, String promoterUrl, String fansNumber, String avgVideoSales, String videoSales, String totalSale, String promoterId) {
        this.id = id;
        this.promoterNickName = promoterNickName;
        this.province = province;
        this.promoterUrl = promoterUrl;
        this.fansNumber = fansNumber;
        this.avgVideoSales = avgVideoSales;
        this.videoSales = videoSales;
        this.totalSale = totalSale;
        this.promoterId = promoterId;
    }
}
