refactor finance.

This commit is contained in:
Chris Chen
2026-05-29 23:56:29 -07:00
parent 241870fe48
commit 769597d769
22 changed files with 1392 additions and 65 deletions
@@ -0,0 +1,18 @@
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);
}