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(AdsAgentRechargeRanking.TABLE_NAME)
@PK({"dt", "accountId"})
public class AdsAgentRechargeRanking implements Serializable {
    private static final long serialVersionUID = 1L;
    public static final String TABLE_NAME = "ads_agent_recharge_ranking";

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

    @Column
    private String sourceSystem;

    /**
     * 推广渠道账号
     */
    private Long agentId;

    /**
     * 推广渠道名称
     */
    @Column
    private String agentName;

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

    /**
     * 投手ID
     */
    @Column
    private String pitcherId;

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

    /**
     * 当天充值金额
     */
    @Column
    private BigDecimal todayAmount;

    /**
     * 累计充值今额
     */
    @Column
    private BigDecimal totalRechargeAmount;

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

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

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

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

    /**
     * 累计消耗
     */
    @Column
    private BigDecimal totalCost;

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


}
