package com.zanxiang.game.data.serve.pojo.entity;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.nutz.dao.entity.annotation.Column;
import org.nutz.dao.entity.annotation.PK;
import org.nutz.dao.entity.annotation.Table;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * <p>
 * 推广账号消耗排行榜
 * </p>
 *
 * @author
 * @since 2023-06-30
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Table(AdsAccountRechargeRanking.TABLE_NAME)
@PK({"dt", "accountId"})
public class AdsAccountRechargeRanking implements Serializable {
    private static final long serialVersionUID = 1L;
    public static final String TABLE_NAME = "ads_account_recharge_ranking";

    /**
     * 日期（充值时间）
     */
    private LocalDate dt;

    @Column
    private String sourceSystem;

    /**
     * 推广账号
     */
    private Long accountId;

    /**
     * 推广账号媒体
     */
    @Column
    private String type;

    /**
     * 投手名称
     */
    @Column
    private String pitcher;

    @Column
    private String pitcherId;

    @Column
    private String gameId;

    /**
     * 推广游戏名称
     */
    @Column
    private String gameName;

    /**
     * 推广游戏类型
     */
    @Column
    private String gameClassify;

    /**
     * 推广游戏CP名称
     */
    @Column
    private String gameCp;

    /**
     * 消耗
     */
    @Column
    private BigDecimal cost;

    /**
     * 推广广告数量
     */
    @Column
    private Long adCount;

    /**
     * 曝光数量
     */
    @Column
    private Long viewCount;

    /**
     * 点击数量
     */
    @Column
    private Long clickCount;

    /**
     * 点击率
     */
    @Column
    private BigDecimal clickRate;

    /**
     * 千次曝光成本
     */
    @Column
    private BigDecimal thousandDisplayPrice;

    /**
     * 注册人数
     */
    @Column
    private Long regUserCnt;

    /**
     * 注册成本
     */
    @Column
    private BigDecimal regCost;

    /**
     * 首日创角人数
     */
    @Column
    private Long firstRole;

    /**
     * 累计创角人数
     */
    @Column
    private Long totalRole;

    /**
     * 首日充值金额
     */
    @Column
    private BigDecimal firstAmount;

    /**
     * 首日充值人数
     */
    @Column
    private Long firstAmountUser;

    /**
     * 首日充值次数
     */
    @Column
    private Long firstAmountCount;

    /**
     * 累计充值金额
     */
    @Column
    private BigDecimal totalAmount;

    /**
     * 累计充值人数
     */
    @Column
    private Long totalAmountUser;

    /**
     * 累计充值次数
     */
    @Column
    private Long totalAmountCount;

    /**
     * 首日ROI
     */
    @Column
    private BigDecimal firstRoi;

    /**
     * 平均单价
     */
    @Column
    private BigDecimal avgAmount;

    /**
     * 回本率
     */
    @Column
    private BigDecimal roi;


}
