namespace CMSMicroservice.Application.CommissionCQ.Queries.GetAllWeeklyPools;

public record GetAllWeeklyPoolsResponseDto
{
    public MetaDataDto MetaData { get; init; } = new();
    public List<WeeklyCommissionPoolDto> Models { get; init; } = new();
}

public record WeeklyCommissionPoolDto
{
    public long Id { get; init; }
    public long WeekDefinitionId { get; init; } 
    public string WeekDisplayName { get; init; } = string.Empty;
    public long TotalPoolAmount { get; init; }
    public int TotalBalances { get; init; }
    public long ValuePerBalance { get; init; }
    public bool IsCalculated { get; init; }
    public DateTime? CalculatedAt { get; init; }
    public DateTime Created { get; init; }
    public long PackageId { get; init; }
    public string PackageTitle { get; init; } = string.Empty;
}

public record MetaDataDto
{
    public int TotalCount { get; init; }
    public int PageSize { get; init; }
    public int CurrentPage { get; init; }
    public int TotalPages { get; init; }
}
