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

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class PlayerRechargeRankingVO {
    private String id;
    /**
     * 玩家ID
     */
    @ApiModelProperty("玩家ID")
    private Long playerId;

    @ApiModelProperty(notes = "SDK来源")
    private String sourceSystem;

    /**
     * 玩家账号
     */
    @ApiModelProperty("玩家账号")
    private String playerAccountId;

    /**
     * 注册渠道ID
     */
    @ApiModelProperty("注册渠道ID")
    private Long regAgentId;

    @ApiModelProperty("注册渠道名称")
    private String regAgentName;

    /**
     * 注册时间
     */
    @ApiModelProperty("注册时间")
    private LocalDateTime regUserTime;

    /**
     * 注册游戏ID
     */
    @ApiModelProperty("注册游戏ID")
    private Long regGameId;

    /**
     * 注册游戏ID
     */
    @ApiModelProperty("注册游戏名")
    private String regGameName;

    /**
     * 玩家操作系统
     */
    @ApiModelProperty("玩家操作系统")
    private String playerOs;

    /**
     * 最近充值游戏
     */
    @ApiModelProperty("最近充值游戏ID")
    private Long lastAmountGameId;

    @ApiModelProperty("最近充值游戏名称")
    private String lastAmountGameName;

    /**
     * 最近充值时间
     */
    @ApiModelProperty("最近充值时间")
    private LocalDateTime lastAmountTime;

    /**
     * 首次充值金额
     */
    @ApiModelProperty("首次充值金额")
    private BigDecimal firstAmount;

    /**
     * 最近充值金额
     */
    @ApiModelProperty("最近充值金额")
    private BigDecimal lastAmount;

    /**
     * 累计充值今额
     */
    @ApiModelProperty("累计充值今额")
    private BigDecimal totalAmount;

    /**
     * 今日累计充值今额
     */
    @ApiModelProperty("今日累计充值今额")
    private BigDecimal todayTotalAmount;

    /**
     * 平均单价
     */
    @ApiModelProperty("平均单价")
    private BigDecimal avgAmount;

    /**
     * 累计充值次数
     */
    @ApiModelProperty("累计充值次数")
    private Long totalAmountCount;

    @ApiModelProperty("角色名称")
    private String roleName;

    @ApiModelProperty("游戏服")
    private String serverName;
}
