internal PaiementManager GetPaiementMgr(ModeReg modeReglement)
        {
            // Fabrique les différents manager
               // utilisation d'une bonne pratique Grasp (Pure Fabrication)

            PaiementManager pmgr=null;
            switch (modeReglement)
            {
                case ModeReg.Cb:
                    pmgr = new CbManager();
                    break;

                case ModeReg.Ch:
                    pmgr = new ChManager();
                    break;

                case ModeReg.Especes:
                    pmgr = new EspeceManager();
                    break;
            }
            return pmgr;
        }
 public Vente SaisirPaiement(ModeReg modeReglement, decimal montantReglement)
 {
     return cMgr.SaisirPaiement(modeReglement, montantReglement);
 }
예제 #3
0
        internal void CreerPaiement(Vente venteEnCours, ModeReg modeReglement, decimal montantReglement )
        {
            // Calcul reste à regler
            decimal resteARegler = venteEnCours.ResteARegler;
            if (resteARegler == 0) throw new PlusRienAReglerException("Impossible : La vente est terminée !");

            // Création du bon PaiementManager à l'aide d'une fabrique Grasp
            var fabPMgr = new FabriquePaiementMgr();
            var pmgr = fabPMgr.GetPaiementMgr(modeReglement);

            // création du paiement
            Paiement p= pmgr.CreerPaiement(montantReglement, resteARegler);
            // ajout dans liste paiement
            venteEnCours.Paiements.Add(p);

            // Persiste en base
            if (venteEnCours.ResteARegler == 0)
            {
                venteEnCours.DateVente = DateTime.Now;
                vDao.Insert(venteEnCours);

            }
        }
 internal Vente SaisirPaiement(ModeReg modeReglement, decimal montantReglement)
 {
     vMgr.CreerPaiement(LaCaisse.VenteEnCours, modeReglement, montantReglement);
     return LaCaisse.VenteEnCours;
 }