groupe-meditation/backend/app/core/financial_position.py

18 lines
494 B
Python

"""Pure value objects for financial rules."""
from dataclasses import dataclass
@dataclass(frozen=True)
class PositionTresorerie:
solde_banque: float
encaisse: float
total_reserves: float
engagements_non_debites: float
@property
def disponible_bancaire(self) -> float:
return self.solde_banque - self.total_reserves - self.engagements_non_debites
@property
def disponible_total(self) -> float:
return self.disponible_bancaire + self.encaisse