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 EnlevementPanierArticle(int ArticleId, [FromBody] int PanierId)
        {
            try
            {
                Panier  panier  = _context.Paniers.Where(p => p.PanierId.Equals(PanierId)).FirstOrDefault();
                Article article = _context.Articles.Where(a => a.ArticleId.Equals(ArticleId)).FirstOrDefault();

                panier.SupprimerPanierArticle(article);
                _context.SaveChanges();

                return(Ok());
            }
            catch (Exception) { }

            return(BadRequest());
        }