public IActionResult AddFacture([FromBody] int CompteId) { try { Compte compte = _context.Comptes.Where(c => c.CompteId.Equals(CompteId)).FirstOrDefault(); Panier panier = _context.Paniers.Where(p => p.CompteId.Equals(compte.CompteId)).FirstOrDefault(); Client client = _context.Clients.Where(c => c.UtilisateurId.Equals(compte.ClientId)).FirstOrDefault(); List <Article> articlesDansPanier = _context.Articles.Where(a => a.PanierId.Equals(panier.PanierId)).ToList(); int montantTotal = 0; articlesDansPanier.ForEach(article => { montantTotal += article.Prix; }); // Ne devrait jamais arriver puisque on fait la vérification coté client if (montantTotal > client.Solde) { return(BadRequest()); } else { Facture facture = new Facture() { Compte = compte, DateEmission = DateTime.Now, Montant = montantTotal }; _context.Factures.Add(facture); // On retire les articles du panier articlesDansPanier.ForEach(article => { panier.SupprimerPanierArticle(article); _context.Articles.Remove(article); }); // Le gestionnaire associé gagne 15% du montant total Gestionnaire gestionnaireAssocie = _context.Gestionnaires.Where(g => g.UtilisateurId.Equals(client.GestionnaireAssocieId)).FirstOrDefault(); gestionnaireAssocie.ajoutFacture(facture); // On réduit évidemment le solde du client client.GenererFacture(facture); _context.SaveChanges(); return(Ok()); } } catch (Exception) { } return(BadRequest()); }
public IActionResult AddRole([FromBody] RoleModel model) { try { Role role = new Role() { Title = model.Title }; _context.Roles.Add(role); _context.SaveChanges(); return(Ok()); } catch (Exception) { } return(BadRequest()); }
public IActionResult AddAbonnement([FromBody] AbonnementModel model) { try { Abonnement abonnement = new Abonnement() { DureeAbonnement = model.DureeAbonnement }; _context.Abonnements.Add(abonnement); _context.SaveChanges(); return(Ok()); } catch (Exception) { } return(BadRequest()); }
public static void Initialize(gestionAPI_DBContext context) { //On s'assure que la BDD a bien été créée context.Database.EnsureCreated(); if (context.Roles.Any()) { return; } // Ajout de rôles Role role1 = new Role() { Title = "Role1" }; Role role2 = new Role() { Title = "Role2" }; Role role3 = new Role() { Title = "Role3" }; Role role4 = new Role() { Title = "Role4" }; context.Roles.Add(role1); context.Roles.Add(role2); context.Roles.Add(role3); context.Roles.Add(role4); // Ajout de gestionnaires Gestionnaire gestionnaire1 = new Gestionnaire() { Login = "******", Email = "*****@*****.**", NomGestionnaire = "McCormick", Role = role2, MotDePasse = Utilitaire.HashPassword("gsnPsw1") }; Gestionnaire gestionnaire2 = new Gestionnaire() { Login = "******", Email = "*****@*****.**", NomGestionnaire = "Marsh", Role = role3, MotDePasse = Utilitaire.HashPassword("gsnPsw2") }; Gestionnaire gestionnaire3 = new Gestionnaire() { Login = "******", Email = "*****@*****.**", NomGestionnaire = "Broslovsky", Role = role1, MotDePasse = Utilitaire.HashPassword("gsnPsw3") }; context.Gestionnaires.Add(gestionnaire1); context.Gestionnaires.Add(gestionnaire2); context.Gestionnaires.Add(gestionnaire3); // Ajout de stocks Stock stock1 = new Stock() { Titre = "stockClassique", ResponsableStock = gestionnaire2 }; Stock stock2 = new Stock() { Titre = "stockNouveautes", ResponsableStock = gestionnaire3 }; Stock stock3 = new Stock() { Titre = "stockAncien", ResponsableStock = gestionnaire1 }; context.Stocks.Add(stock1); context.Stocks.Add(stock2); context.Stocks.Add(stock3); // Ajout d'administrateur Administrateur administrateur1 = new Administrateur() { Login = "******", NomAdministrateur = "Butters", Mail = "*****@*****.**", MotDePasse = Utilitaire.HashPassword("adminPsw1") }; context.Administrateurs.Add(administrateur1); // Ajout d'un abonnement nul Abonnement abonnement1 = new Abonnement() { DureeAbonnement = 0 }; context.Abonnements.Add(abonnement1); // Ajout d'un client nul Client client1 = new Client() { Login = "******", Nom = "Defaut", Mail = "*****@*****.**", MotDePasse = Utilitaire.HashPassword("azegaze684qs3dqsd!:sdfàçzqè_"), }; context.Clients.Add(client1); // Ajout d'un compte nul Compte compte1 = new Compte() { NomCompte = "CompteDefaut", ClientId = 2, }; context.Comptes.Add(compte1); // Ajout d'un panier nul Panier panier1 = new Panier() { Compte = compte1 }; context.Paniers.Add(panier1); context.SaveChanges(); }