feat(core): add balance model

This commit is contained in:
Stevan Freeborn
2026-02-14 06:46:05 -06:00
parent 3b7830b1bc
commit e331030bb0
2 changed files with 31 additions and 0 deletions
+10
View File
@@ -8,6 +8,9 @@ public sealed class Account : Entity
public string Name { get; init; } = string.Empty; public string Name { get; init; } = string.Empty;
public AccountMetadata? Metadata { get; init; } public AccountMetadata? Metadata { get; init; }
private readonly List<Balance> _balances = [];
public IEnumerable<Balance> Balances => _balances;
public static Account From(Guid institutionId, string name, AccountMetadata accountMetadata) public static Account From(Guid institutionId, string name, AccountMetadata accountMetadata)
{ {
return new() return new()
@@ -17,4 +20,11 @@ public sealed class Account : Entity
Metadata = accountMetadata, Metadata = accountMetadata,
}; };
} }
public void AddBalance(Balance balance)
{
ArgumentNullException.ThrowIfNull(balance);
_balances.Add(balance);
}
} }
+21
View File
@@ -0,0 +1,21 @@
namespace FiscalOS.Core.Accounts;
public sealed class Balance : Entity
{
public Guid AccountId { get; init; }
public decimal Current { get; init; }
public decimal Available { get; init; }
private Balance()
{
}
public static Balance From(decimal current, decimal available)
{
return new()
{
Current = current,
Available = available,
};
}
}