Example #1
0
        public Devis(string sujet, DateTime date, string commentaire, TypeReglement type, Monnaie typeMonnaie)
        {
            Random rand = new Random();

            Objet         = sujet;
            Date          = date;
            TypeReglement = type;
            Note          = commentaire;
            Monnaie       = typeMonnaie;

            Articles = new List <IArticle>();
            DevisId  = "D" + date.ToShortDateString() + rand.Next(1000, 9999);
        }
        // Méthode permettant de facturer un devis c'est à dire d'ajouter une facture de ce devis dans sa liste des factures après avoir spécifié le type de réglement.
        public ActionResult Facturer(int id, TypeReglement reglement)
        {
            int nbMois = db.Factures.Where(f => f.Date.Month == DateTime.Today.Month).ToList().Count;

            var devis   = db.Devis.Find(id);
            var facture = new Facture(devis, nbMois, reglement);

            db.Factures.Add(facture);
            devis.Etat = EtatDevis.Facturé;
            db.SaveChanges();

            foreach (DonneeProduit dp in db.DonneeProduit.Where(DP => DP.DevisID == id))
            {
                db.DonneeProduit.Add(new DonneeProduit(dp)
                {
                    FactureID = facture.ID
                });
            }

            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #3
0
 /// <summary>
 /// Constructeur d'une facture prenant en paramètre un devis et un type de règlement
 /// </summary>
 /// <param name="devis">Devis que l'on souhaite facturer</param>
 /// <param name="type">Type de règlement de la facture</param>
 public Facture(Devis devis, int nbMois, TypeReglement type) : this(devis, nbMois)
 {
     Reglement = type;
 }