Example #1
0
        /// <summary>
        /// Effectue un retrait du montant donné du le compte donné
        /// </summary>
        /// <param name="numeroCompte">Le numéro du compte dans lequel effectuer le retrait</param>
        /// <param name="montant">Le montant à retirer</param>
        /// <returns>Le nouveau solde du compte après le retrait</returns>
        /// <exception cref="ArgumentException">Si le compte n'existe pas, ou si le montant est négatif ou 0</exception>
        public double Retirer(int numeroCompte, double montant)
        {
            Compte      compte = TrouverCompte(numeroCompte);
            Transaction t      = new Retrait(compte, montant);

            t.Effectuer();
            Sauvegarder(t);
            return(compte.Solde);
        }
Example #2
0
        /// <summary>
        /// Lit le fichier des transactions et les effectue sur les comptes
        /// </summary>
        private void ChargerTransactions()
        {
            try
            {
                using (StreamReader fichier = new StreamReader(NomFichierTransactions))
                {
                    string ligne = fichier.ReadLine();
                    while (ligne != null)
                    {
                        try
                        {
                            string[] valeurs = ligne.Split(';');

                            int    numeroCompte = Convert.ToInt32(valeurs[0]); // valeurs[0] contient le numéro du compte
                            Compte compte       = TrouverCompte(numeroCompte);

                            Transaction t;
                            switch (valeurs[1]) // valeurs[1] contient le type de la transaction
                            {
                            case Depot.IdentificateurType:    t = new Depot(compte, valeurs);    break;

                            case Retrait.IdentificateurType:  t = new Retrait(compte, valeurs);  break;

                            default: throw new Exception();
                            }

                            t.Effectuer();
                        }
                        catch { } // Ignore silencieusement les erreurs et passe à la prochaine ligne

                        ligne = fichier.ReadLine();
                    }
                }
            }
            catch { } // Rien à faire si le fichier n'existe pas
        }