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

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

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

/**
 * GS区服付费留存(游戏GS管理) 实体类。
 *
 * @author shaosong
 * @since 1.0
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(value = "ads_server_ranking_parent")
public class AdsServerRankingParent {

    /**
     * 主键id
     */
    @Column(value = "uuid")
    private String uuid;

    /**
     * 开服时间
     */
    @Column(value = "start_time")
    private LocalDate startTime;

    /**
     * SDK来源
     */
    @Column(value = "source_system")
    private String sourceSystem;

    /**
     * 父游戏ID
     */
    @Column(value = "parent_game_id")
    private String parentGameId;

    /**
     * 区服ID
     */
    @Column(value = "server_id")
    private String serverId;

    /**
     * 超父游戏ID
     */
    @Column(value = "super_game_id")
    private String superGameId;

    /**
     * 结束时间（无合服记录默认：2099-01-01）
     */
    @Column(value = "end_time")
    private LocalDate endTime;

    /**
     * 游戏名称
     */
    @Column(value = "parent_game_name")
    private String parentGameName;

    /**
     * 区服名称
     */
    @Column(value = "server_name")
    private String serverName;

    /**
     * GsID
     */
    @Column(value = "gs_ids")
    private String gsIds;

    /**
     * 客服id
     */
    @Column(value = "customer_ids")
    private String customerIds;

    /**
     * 指派期间创角人数（合服）
     */
    @Column(value = "total_role_num")
    private Long totalRoleNum;

    /**
     * 指派期间付费人数（合服）
     */
    @Column(value = "total_amount_num")
    private Long totalAmountNum;

    /**
     * 指派期间付费次数（合服）
     */
    @Column(value = "total_amount_count")
    private Long totalAmountCount;

    /**
     * 指派期间付费金额（合服）
     */
    @Column(value = "total_amount")
    private BigDecimal totalAmount;

    /**
     * 指派期间付费率（合服）
     */
    @Column(value = "amount_rate")
    private BigDecimal amountRate;

    /**
     * 创角人数（子服）
     */
    @Column(value = "son_role_num")
    private Long sonRoleNum;

    /**
     * 付费人数（子服）
     */
    @Column(value = "son_server_amount_num")
    private Long sonServerAmountNum;

    /**
     * 付费次数（子服）
     */
    @Column(value = "son_server_amount_count")
    private Long sonServerAmountCount;

    /**
     * 付费金额（子服）
     */
    @Column(value = "son_server_amount")
    private BigDecimal sonServerAmount;

    /**
     * 付费率（子服）
     */
    @Column(value = "son_amount_rate")
    private BigDecimal sonAmountRate;

    /**
     * 区服ID-（无用）
     */
    @Column(value = "server_id_ranking")
    private String serverIdRanking;

    /**
     * 战力排名-父游戏-（无用）
     */
    @Column(value = "parent_game_id_ranking")
    private String parentGameIdRanking;

    /**
     * 战力排名-角色ID
     */
    @Column(value = "combat_role_id")
    private String combatRoleId;

    /**
     * 战力排名-角色名称
     */
    @Column(value = "combat_role_name")
    private String combatRoleName;

    /**
     * 战力排名-角色国家
     */
    @Column(value = "combat_country")
    private String combatCountry;

    /**
     * 战力排名-角色战力
     */
    @Column(value = "combat_total_role_combat_num")
    private Long combatTotalRoleCombatNum;

    /**
     * 战力排名-角色等级
     */
    @Column(value = "combat_role_level")
    private Long combatRoleLevel;

    /**
     * 战力排名-TOP10
     */
    @Column(value = "combat_num")
    private Long combatNum;

    /**
     * 战力排名-角色付费金额
     */
    @Column(value = "combat_amount")
    private BigDecimal combatAmount;

    /**
     * 付费排名-角色ID
     */
    @Column(value = "amount_role_id")
    private String amountRoleId;

    /**
     * 付费排名-角色名称
     */
    @Column(value = "amount_role_name")
    private String amountRoleName;

    /**
     * 付费排名-付费金额
     */
    @Column(value = "amount_role_total_amount")
    private BigDecimal amountRoleTotalAmount;

    /**
     * 付费排名-国家
     */
    @Column(value = "amount_country")
    private String amountCountry;

    /**
     * 付费排名-角色战力
     */
    @Column(value = "amount_total_role_combat_num")
    private Long amountTotalRoleCombatNum;

    /**
     * 付费排名-角色等级
     */
    @Column(value = "amount_role_level")
    private Long amountRoleLevel;

    /**
     * 付费排名-TOP10
     */
    @Column(value = "amount_num")
    private Long amountNum;


}
