public ActionResult Create([Bind(Include = "Id,Nom,Description,Duree,Montant,GroupeForfaitId")] Forfait forfait) { if (ModelState.IsValid) { forfait.Id = Guid.NewGuid(); db.Forfaits.Add(forfait); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(forfait)); }
public ActionResult Create([Bind(Include = "Id,Nom,Description")] GroupeForfait groupeForfait) { if (ModelState.IsValid) { groupeForfait.Id = Guid.NewGuid(); db.GroupeForfaits.Add(groupeForfait); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(groupeForfait)); }
public ActionResult Create([Bind(Include = "ID,Nom,Solde")] Caisse caisse) { if (ModelState.IsValid) { caisse.ID = Guid.NewGuid(); db.Caisses.Add(caisse); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(caisse)); }
public ActionResult Create([Bind(Include = "Id,ProduitId,Type,Amount,Date")] StockLog stockLog) { if (ModelState.IsValid) { stockLog.Id = Guid.NewGuid(); db.StockLogs.Add(stockLog); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(stockLog)); }
public bool AddClient(Client clt) { if (GetClientByName(clt) == null) { clt.ID = Guid.NewGuid(); db.Clients.Add(clt); db.SaveChanges(); return(true); } else { return(false); } }
public ActionResult Create(VenteVM vente, Guid clientId, string reglement) { if (ModelState.IsValid) { StockManager stockManager = new StockManager(db); Vente newVente = new Vente() { Details = new List <DetailVente>(), Client = db.Clients.Find(clientId), Date = DateTime.Now, Id = Guid.NewGuid(), ClientId = clientId, MontantRegle = 0, DateOperation = DateTime.Now, UserId = User.Identity.GetUserId() }; double total = 0; foreach (var detail in vente.Details) { if (detail.Quantite > 0) { newVente.Details.Add(new DetailVente() { Produit = db.Produits.Find(detail.ProduitId), QuantiteVendue = detail.Quantite, ProduitID = detail.ProduitId, ID = Guid.NewGuid() }); } stockManager.RemoveStock(detail.ProduitId, detail.Quantite, OperationType.Vente); total += detail.Quantite * db.Produits.Find(detail.ProduitId).PrixVente; } newVente.Montant = total; newVente.MontantRestant = total; db.Operations.Add(newVente); db.SaveChanges(); new CaisseManager(db).reglerVente(vente.MontantPaye, newVente, "Paiement de vente", reglement); return(RedirectToAction("Confirmer", new { id = newVente.Id })); } ViewBag.ClientId = new SelectList(db.Clients, "ID", "Nom", vente.ClientId); return(View(vente)); }
public ActionResult Create([Bind(Include = "Id,EmailNotifications,HourNotifications")] Parametre parametre) { if (ModelState.IsValid) { parametre.Id = Guid.NewGuid(); if (parametre.HourNotifications > 24) { parametre.HourNotifications = parametre.HourNotifications % 24; } db.Parametres.Add(parametre); db.SaveChanges(); //RecurringJob.AddOrUpdate("chargement", () => cm.load(), Cron.MinuteInterval(20)) RecurringJob.AddOrUpdate("notifications", () => Utilities.SendNotifications(), Cron.Daily(parametre.HourNotifications)); return(RedirectToAction("Index")); } return(View(parametre)); }
public ActionResult Create([Bind(Include = "ID,Nom,PrixAchat,PrixVente,ALouer,StockDisponible,PrixLocationParDefaut,DureeDeLocationParDefaut,Description,DateCreation,CreatorId")] Produit produit) { if (ModelState.IsValid) { produit.ID = Guid.NewGuid(); produit.DureeDeLocationParDefaut = 1; produit.DateCreation = DateTime.Now; produit.CreatorId = User.Identity.GetUserId(); var stock = produit.StockDisponible; produit.StockDisponible = 0; db.Produits.Add(produit); db.SaveChanges(); new StockManager(db).AddStock(produit.ID, stock, OperationType.Création); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(produit)); }
public ActionResult Create([Bind(Include = "Id,ProduitId,ClientId,DateLocation,DateFinLocation,MontantPaye,DateSuspensionLocation,DateArretLocation,LocationRendue,QuantitePrise,QuantiteRendue,Montant,Date,UserId")] Location location) { if (ModelState.IsValid) { location.Id = Guid.NewGuid(); location.UserId = User.Identity.GetUserId(); var produit = db.Produits.Find(location.ProduitId); if (produit == null || produit.StockDisponible < location.QuantitePrise) { ModelState.AddModelError("QuantitePrise", "La quantité de produit à louer n'est pas disponible"); ViewBag.ProduitId = new SelectList(db.Produits, "ID", "Nom", location.ProduitId); ViewBag.ClientId = new SelectList(db.Clients, "ID", "Nom"); return(View(location)); } new StockManager(db).RemoveStock(location.ProduitId, location.QuantitePrise, OperationType.Location); location.Date = DateTime.Now; location.DateArretLocation = location.DateFinLocation; location.LocationRendue = false; location.UserId = User.Identity.GetUserId(); if (!User.IsInRole("Modifier les montants de location")) { location.Montant = produit.PrixLocationParDefaut * (location.DateFinLocation - location.DateLocation).TotalDays * location.QuantitePrise; } location.QuantiteRendue = 0; location.MontantRestant = location.Montant - location.MontantPaye; if (location.MontantRestant < 0) { location.MontantRestant = 0; } db.Operations.Add(location); db.SaveChanges(); new CaisseManager(db).reglerLocation(location.Montant, location, "Paiement de location de " + location.QuantitePrise + " " + produit.Nom, "Especes"); return(RedirectToAction("Confirmer", new { id = location.Id })); } ViewBag.ClientId = new SelectList(db.Clients, "ID", "Nom"); ViewBag.ProduitId = new SelectList(db.Produits, "ID", "Nom", location.ProduitId); return(View(location)); }
public ActionResult CreateAchat(AchatCreateVM achat) { if (ModelState.IsValid) { Achat newAchat = new Achat() { Details = new List <DetailAchat>(), Fournisseur = achat.Fournisseur, Date = DateTime.Now, NumFacture = achat.NumFactureFournisseur, Id = Guid.NewGuid(), UserId = User.Identity.GetUserId() }; double total = 0; foreach (var detail in achat.Details) { if (detail.Quantite > 0) { newAchat.Details.Add(new DetailAchat() { Produit = db.Produits.Find(detail.ProduitId), QuantiteAchetee = detail.Quantite, ProduitID = detail.ProduitId, ID = Guid.NewGuid() }); } total += detail.Quantite * db.Produits.Find(detail.ProduitId).PrixAchat; } newAchat.Montant = total; //newAchat.MontantRestant = total; db.Operations.Add(newAchat); db.SaveChanges(); //new CaisseManager(db).reglerVente(vente.MontantPaye, newVente); return(RedirectToAction("Index")); } return(View(achat)); }
// GET: Abonnements public ActionResult Index() { checkAbonnements(); ViewBag.caisseDefined = db.Caisses.Any(); var abonnements = db.Operations.OfType <Abonnement>().Include(a => a.Forfait).OrderByDescending(a => a.Termine).OrderByDescending(l => l.Date).ToList(); foreach (var abonnement in abonnements) { if ((abonnement.DateFin - DateTime.Now).TotalDays < -1 && !abonnement.Suspendu) { abonnement.Termine = true; db.Entry(abonnement).State = EntityState.Modified; db.SaveChanges(); } } return(View(abonnements)); }