package com.starry.admin.modules.withdraw.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;

/**
 * 后台收益汇总信息
 */
@Data
@ApiModel(value = "EarningsAdminSummaryVo", description = "后台收益汇总数据")
public class EarningsAdminSummaryVo {

    @ApiModelProperty("可提现金额")
    private BigDecimal availableAmount = BigDecimal.ZERO;

    @ApiModelProperty("冻结中金额")
    private BigDecimal pendingAmount = BigDecimal.ZERO;

    @ApiModelProperty("已提现金额")
    private BigDecimal withdrawnAmount = BigDecimal.ZERO;

    @ApiModelProperty("累计收益")
    private BigDecimal totalAmount = BigDecimal.ZERO;

    @ApiModelProperty("按状态汇总")
    private List<StatusStat> statusStats = new ArrayList<>();

    @Data
    public static class StatusStat {
        private String status;
        private Long count = 0L;
        private BigDecimal amount = BigDecimal.ZERO;
    }
}
