コード例 #1
0
        public static void AchatArticle(List <Article> ListePanier, Database db)
        {
            Data.Database database = new Data.Database();
            Caisse        caisse   = new Caisse();

            Console.Clear();
            Console.WriteLine("1 - Afficher le panier\n2 - Rechercher un article par nom\n3 - Rechercher un article par référence\n0 - Retour");
            string choice1 = Console.ReadLine();
            int    result1 = Utilitaire.TestValeur(choice1, true).Item1;

            switch (result1)
            {
            case 1:     // afficher le panier OK
                Console.Clear();
                Console.WriteLine("Solde de la Caisse : " + Caisse.soldeCaisse + " euros\n");
                Console.WriteLine("Contenu du panier :\n");
                printInventory(ListePanier);
                Console.WriteLine("1 - Valider la commande\n2 - Retirer un article du panier\n3 - Vider le panier\n0 - Retour");
                string choice = Console.ReadLine();
                int    choix  = Utilitaire.TestValeur(choice, true).Item1;
                if (choix == 1)     // Valider commande OK
                {
                    printInventory(ListePanier);
                    Console.WriteLine("Souhaitez vous vraiment valider le Panier ?");
                    string valider = Console.ReadLine();
                    int    Valider = Utilitaire.TestValeur(valider, true).Item1;
                    if (Valider == 1)
                    {
                        db.InsertCommandeVente(ListePanier);
                        db.MouvementStockVente(ListePanier);
                        decimal TotalCommande = db.TotalCommandeVente(ListePanier);
                        Caisse.AjouterArgent(TotalCommande, idCaisse);
                        ListePanier.Clear();
                        Console.WriteLine("Commande passé merci");
                        Console.ReadLine();
                    }
                }
                else if (choix == 2)     // Retirer un article du panier
                {
                    Console.Clear();
                    Console.WriteLine("Entrer la référence de l'article à supprimer\n");
                    string inputReference = Console.ReadLine();
                    if (Utilitaire.RefArticleExisteDansList(ListePanier, inputReference))
                    {
                        Article article = Utilitaire.ArticleExiste(ListePanier, inputReference);
                        ListePanier.Remove(article);
                        Console.WriteLine("Produit retiré du Panier\n");
                        Console.ReadLine();
                    }
                    else
                    {
                        Console.WriteLine("Ce Produit ne se trouve pas dans le Panier\n");
                        Console.ReadLine();
                    }
                }
                else if (choix == 3)     // Vider le panier
                {
                    ListePanier.Clear();
                }
                else if (choix == 0)     // Retour menu principal
                {
                    AchatArticle(ListePanier, db);
                }

                break;

            case 2:     //Rechercher un article par nom
                Console.Clear();
                Console.WriteLine("Entrer le nom de l'article\n");
                string  inputNom = Console.ReadLine();
                Article a        = database.SelectArticleParNom(inputNom);
                if (a != null)
                {
                    Console.Clear();
                    Console.WriteLine($"Article trouvé, Nom: {a.Nom} Réference:{a.Reference} Description:{a.Description} Prix_HT:{a.Prix_achat} Code:{a.Code_fournisseur} Marge:{a.Marge_benef} QuantitéDispo{a.QuantiteStock}\n");
                    QuantiteAjoutPanier(a, ListePanier);
                }
                break;

            case 3:     //Rechercher un article par référence
                Console.Clear();
                Console.WriteLine("Entrer la référence de l'article\n");
                string  inputRef = Console.ReadLine();
                Article b        = database.SelectArticleParReference(inputRef);
                if (b != null)
                {
                    Console.Clear();
                    Console.WriteLine($"Article trouvé, Nom: {b.Nom} Réference:{b.Reference} Description:{b.Description} Prix_HT:{b.Prix_achat} Code:{b.Code_fournisseur} Marge:{b.Marge_benef} QuantitéDispo{b.QuantiteStock}\n");
                    QuantiteAjoutPanier(b, ListePanier);
                }
                break;

            case 0:     //Retour menu principal
                Console.Clear();
                ListMenu(ListePanier);
                break;

            default:
                break;
            }
        }