19 lines
793 B
C#
19 lines
793 B
C#
using ROLAC.API.DTOs.Finance;
|
|
namespace ROLAC.API.Services;
|
|
|
|
public interface IFinanceDashboardService
|
|
{
|
|
/// <summary>All-time balance: total Givings minus total Paid+Approved expenses.</summary>
|
|
Task<FinanceSummaryDto> GetSummaryAsync();
|
|
|
|
/// <summary>Income (Givings) vs expense (Paid+Approved) totals within the date range.</summary>
|
|
Task<IncomeExpenseDto> GetIncomeExpenseAsync(DateOnly? from, DateOnly? to);
|
|
|
|
/// <summary>
|
|
/// Expense totals grouped by the drill level implied by the supplied ids:
|
|
/// none -> by Ministry; ministryId -> by CategoryGroup; ministryId+categoryGroupId -> by SubCategory.
|
|
/// </summary>
|
|
Task<List<BreakdownSliceDto>> GetExpenseBreakdownAsync(
|
|
DateOnly? from, DateOnly? to, int? ministryId, int? categoryGroupId);
|
|
}
|