public DépotRéalisé(string numéroDeCompte, Montant montantDepot, DateTime dateDepot) : this() { NuméroDeCompte = numéroDeCompte; MontantDepot = montantDepot; DateDepot = dateDepot; }
public RetraitRéalisé(string numéroDeCompte, Montant montantRetrait, DateTime dateRetrait) : this() { NuméroDeCompte = numéroDeCompte; MontantRetrait = montantRetrait; DateRetrait = dateRetrait; }
public IEnumerable<IEvenementMetier> FaireUnRetrait(Montant montantRetrait, DateTime dateRetrait) { List<IEvenementMetier> listRet = new List<IEvenementMetier>(); int iNewSolde = solde - montantRetrait.Value; if (iNewSolde > -autorisationDeCrédit) { listRet.Add(new RetraitRéalisé(numéroDeCompte, montantRetrait, dateRetrait)); if (iNewSolde < 0) { listRet.Add(new BalanceNégativeDétectée(numéroDeCompte, new Montant(autorisationDeCrédit + iNewSolde), dateRetrait)); } solde = iNewSolde; } else { throw new RetraitNonAutorisé(); } return listRet; }
public BalanceNégativeDétectée(string numéroDeCompte, Montant montant, DateTime dateRetrait) { _numéroDeCompte = numéroDeCompte; _montant = montant; _dateRetrait = dateRetrait; }
// retourne un IEnumerable<IEvenementMetier> contenant l'événement DepotRealisé public IEnumerable<IEvenementMetier> FaireUnDepot(Montant montantDepot, DateTime dateDepot) { return new List<IEvenementMetier> { new DépotRéalisé(numéroDeCompte, montantDepot, dateDepot) }; }
public RetraitRéalisé(string numéroDeCompte, Montant montantRetrait, DateTime dateRetrait) { _numeroDeCompte = numéroDeCompte; _montantRetrait = montantRetrait; _dateRetrait = dateRetrait; }
public IEnumerable<IEvenementMetier> FaireUnRetrait(Montant montantRetrait, DateTime dateRetrait) { yield return new RetraitRéalisé(_numCompte, montantRetrait, dateRetrait); }
public IEnumerable<IEvenementMetier> FaireUnDepot(Montant montantDepot, DateTime dateDepot) { yield return new DépotRéalisé(_numCompte, montantDepot, dateDepot); }
public DépotRéalisé(string numéroDeCompte, Montant montantDepot, DateTime dateDepot) { _num = numéroDeCompte; _montantDepot = montantDepot; _dateDepot = dateDepot; }