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); }
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; }