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

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

    /**
     * 游戏ID
     */
    private Long gameId;

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

    /**
     * 游戏类别
     */
    @Column
    private String gameClassify;

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

    /**
     * 当天买量充值金额
     */
    @Column
    private BigDecimal todayBuyAmount;

    /**
     * 当天自然量充值金额
     */
    @Column
    private BigDecimal todayNatureAmount;

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

    /**
     * 累计买量充值金额
     */
    @Column
    private BigDecimal totalBuyAmount;

    /**
     * 累计自然量充值金额
     */
    @Column
    private BigDecimal totalNatureAmount;

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

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

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

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

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

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


}
