Exemple #1
0
        /// <summary>
        /// Enregistre la commande dans la DB.
        /// </summary>
        /// <param name="order">commande à sauvegarder</param>
        /// <returns></returns>
        public Order Save(Order order)
        {
            DateTime thisDay = DateTime.Today;

            order.Date = thisDay.ToString("yyyy-MM-dd");

            DaoOrder.Create(order);
            //si la ref de la commande est différente de 0, cad que la commande a été ajoutée avec succès à la DB,
            //alors on va pouvoir linker les recettes et leur quantité respectives à la commande (dans table contenir)
            if (order.Ref != 0)
            {
                ServiceRecipe  serviceRecipe  = new ServiceRecipe();
                ServiceProduct serviceProduct = new ServiceProduct();

                AuthUser.Client.Cooks -= order.TotalCost;

                foreach (Recipe recipe in order.Recipes)
                {
                    //Pour chaque recette dans la commande,
                    serviceRecipe.Save(recipe);

                    //Ici on va maj les stocks actuels des produits de la recette
                    foreach (Product product in recipe.Products)
                    {
                        serviceProduct.Save(product);
                    }
                }

                ServiceClient serviceClient = new ServiceClient();
                //On sauvegarde les infos updates du client (notamment son solde)
                serviceClient.Save(AuthUser.Client);
            }

            return(order);
        }
        public ServiceRecipeCreator()
        {
            DaoRecipeCreator = new DaoRecipeCreator();

            ServiceRecipe = new ServiceRecipe();
        }