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;
 }
Exemple #3
0
        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;
 }
Exemple #5
0
 // 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) };
 }
Exemple #6
0
 public RetraitRéalisé(string numéroDeCompte, Montant montantRetrait, DateTime dateRetrait)
 {
     _numeroDeCompte = numéroDeCompte;
     _montantRetrait = montantRetrait;
     _dateRetrait = dateRetrait;
 }
Exemple #7
0
 public IEnumerable<IEvenementMetier> FaireUnRetrait(Montant montantRetrait, DateTime dateRetrait)
 {
     yield return new RetraitRéalisé(_numCompte, montantRetrait, dateRetrait);
 }
Exemple #8
0
 public IEnumerable<IEvenementMetier> FaireUnDepot(Montant montantDepot, DateTime dateDepot)
 {
     yield return new DépotRéalisé(_numCompte, montantDepot, dateDepot);
 }
Exemple #9
0
 public DépotRéalisé(string numéroDeCompte, Montant montantDepot, DateTime dateDepot)
 {
     _num = numéroDeCompte;
     _montantDepot = montantDepot;
     _dateDepot = dateDepot;
 }