Пример #1
0
        //public JsonResult GetListeRestaurants(int? idTypeCuisine, idRestaurant)
        //{
        //    SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
        //    List<ProduitPanier> panier = null;
        //    if (sessionUtilisateur != null)
        //    {
        //        if (HttpContext.Application[idsession] != null)
        //        {
        //            panier = (List<ProduitPanier>)HttpContext.Application[idsession];
        //        }
        //    }
        //    return Json(panier, JsonRequestBehavior.AllowGet);
        //}
        public JsonResult AddMenu(int IdMenu, List <int> IdProduits, string idsession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            PanierModel        produitPaniers     = null;

            if (sessionUtilisateur != null)
            {
                if (HttpContext.Application[idsession] != null)
                {
                    produitPaniers = (PanierModel)HttpContext.Application[idsession];
                }
                else
                {
                    produitPaniers = new PanierModel();
                }
                Menu menu = db.Menus.Find(IdMenu);
                if (menu != null)
                {
                    MenuPanier menuPanier = new MenuPanier();
                    menuPanier.IdMenu = IdMenu;
                    foreach (int IdProduit in IdProduits)
                    {
                        ProduitPanier produitPanier = FindProduit(IdProduit);

                        if (produitPanier != null)
                        {
                            menuPanier.produits.Add(produitPanier);
                        }
                    }
                    produitPaniers.Add(menuPanier);
                }
                HttpContext.Application[idsession] = produitPaniers;
            }
            return(Json(produitPaniers.Quantite, JsonRequestBehavior.AllowGet));
        }
Пример #2
0
        public JsonResult AddProduit(int p, string s)
        {
            string             IdSession          = Cryptage.Decrypt(s);
            SessionUtilisateur sessionUtilisateur = daoUtilisateur.GetSessionUtilisateur(IdSession);
            Panier             panier             = GetPanier(sessionUtilisateur.IdSession);
            bool isReturnOk = false;

            if (sessionUtilisateur != null && panier != null && p > 0)
            {
                ProduitPanier produitPanier = FindProduit(p);

                if (produitPanier != null)
                {
                    if (panier.IdRestaurant == 0)
                    {
                        panier.IdRestaurant = produitPanier.IdRestaurant;
                        panier.AddItem(produitPanier);
                        isReturnOk = true;
                    }

                    else if (panier.IdRestaurant == produitPanier.IdRestaurant)
                    {
                        panier.AddItem(produitPanier);
                        isReturnOk = true;
                    }
                }
                HttpContext.Application[sessionUtilisateur.IdSession] = panier;
            }

            string jsonPanier = Newtonsoft.Json.JsonConvert.SerializeObject(panier);

            return(Json(new { isReturnOk, qte = panier.Quantite, total = panier.Total, monpanier = jsonPanier }, JsonRequestBehavior.AllowGet));
        }
Пример #3
0
        public JsonResult RemoveProduit(int IdProduit, string idsession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);

            Panier panier = (Panier)HttpContext.Application[idsession];

            ProduitPanier produitPanier = new ProduitPanier();

            int quantite = 0;

            var prod = panier.Find(p => p.GetIdProduit() == IdProduit);

            if (prod != null && panier.Count > 1)
            {
                prod.Quantite--;
                quantite -= prod.Quantite;
            }
            else if (prod != null && panier.Count > 0)
            {
                panier.Remove(produitPanier);
                quantite -= produitPanier.Quantite;
            }

            HttpContext.Application[idsession] = panier;

            return(Json(quantite, JsonRequestBehavior.AllowGet));
        }
Пример #4
0
        //JSON ADD PRODUIT
        public JsonResult AddProduit(int IdProduit, string idsession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            PanierModel        panier             = GetPanier(idsession);
            bool isReturnOk = true;

            if (sessionUtilisateur != null && panier != null && IdProduit > 0)
            {
                ProduitPanier produitPanier = FindProduit(IdProduit);
                if (produitPanier != null)
                {
                    if (panier.IdRestaurant == 0)
                    {
                        panier.IdRestaurant = produitPanier.IdRestaurant;
                        panier.AddItem(produitPanier);
                    }
                    else if (panier.IdRestaurant == produitPanier.IdRestaurant)
                    {
                        panier.AddItem(produitPanier);
                        isReturnOk = false;
                    }
                } //Je sauve mon panier en session
                HttpContext.Application[idsession] = panier;
            }     // Je retourne en Json le nombre de ligne
            return(Json(new { returnOk = isReturnOk, qte = panier.Quantite, montant = panier.Montant }, JsonRequestBehavior.AllowGet));
        }
Пример #5
0
        //suppression d'un produit/menu du panier
        public JsonResult RemoveProduit(int idProduit, string idSession)
        {
            PanierHtml  panierHtml  = null;
            PanierModel panierModel = null;

            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(idSession);

            if (sessionUtilisateur != null && idProduit > 0)
            {
                Produit produit = db.Produits.Find(idProduit);

                if (HttpContext.Application[idSession] != null)
                {
                    panierModel = (PanierModel)HttpContext.Application[idSession];
                }

                ItemPanier itemPanier = panierModel.FirstOrDefault(p => p.GetIdProduit() == idProduit);

                //si l'itemPanier est déjà présent dans le panier alors quantité -1, sinon ajout de l'itemPanier
                if (itemPanier.Quantite == 1)
                {
                    panierModel.Remove(itemPanier);
                }
                else
                {
                    itemPanier.Quantite -= 1;
                }

                panierHtml = ShowPanier(panierModel);

                HttpContext.Application[idSession] = panierModel;
            }

            return(Json(new { panier = panierHtml.hmtl, total = string.Format("{0:0.00}", panierHtml.total) }, JsonRequestBehavior.AllowGet));
        }
Пример #6
0
        public JsonResult SaveCommande(string s)
        {
            try
            {
                //decrypage de la SessionID et recherche dans la bdd
                string             IdSession          = Cryptage.Decrypt(s);
                SessionUtilisateur sessionUtilisateur = daoUtilisateur.GetSessionUtilisateur(IdSession);
                Panier             panier             = null;

                if (sessionUtilisateur != null && HttpContext.Application[sessionUtilisateur.IdSession] != null)
                {
                    panier = (Panier)HttpContext.Application[sessionUtilisateur.IdSession];
                }

                Utilisateur utilisateur = daoUtilisateur.GetUtilisateurBySessionId(sessionUtilisateur.IdSession);

                if (utilisateur != null && utilisateur.Solde > 0 && panier != null && panier.Count > 0)
                {
                    if (daoCommande.SaveCommande(panier, utilisateur))
                    {
                        HttpContext.Application.Remove(utilisateur.IdSession);
                    }
                }
                return(Json(new { idutilisateur = utilisateur.IdUtilisateur }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                string er = ex.Message;
            }
            return(Json(JsonRequestBehavior.AllowGet));
        }
Пример #7
0
        public JsonResult AddProduit(int IdProduit, string idsession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            Panier             panier             = GetPanier(idsession);
            bool isReturnOk = false;

            if (sessionUtilisateur != null && panier != null && IdProduit > 0)
            {
                ProduitPanier produitPanier = FindProduit(IdProduit);

                if (produitPanier != null)
                {
                    if (panier.IdRestaurant == 0)
                    {
                        panier.IdRestaurant = produitPanier.IdRestaurant;
                        panier.AddItem(produitPanier);
                        isReturnOk = true;
                    }

                    else if (panier.IdRestaurant == produitPanier.IdRestaurant)
                    {
                        panier.AddItem(produitPanier);
                        isReturnOk = true;
                    }
                }

                HttpContext.Application[idsession] = panier;
            }

            return(Json(new { isReturnOk, qte = panier.Quantite, total = panier.Total }, JsonRequestBehavior.AllowGet));
        }
Пример #8
0
        public JsonResult AddProduit(int idProduit, string idSession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);

            List <ProduitPanier> panier = (List <ProduitPanier>)HttpContext.Application[idSession] ?? new List <ProduitPanier>();

            if (sessionUtilisateur != null)
            {
                Produit produit = db.Produits.First(p => p.IdProduit == idProduit);

                ProduitPanier produitPanier = new ProduitPanier()
                {
                    IdProduit   = produit.IdProduit,
                    Nom         = produit.Nom,
                    Description = produit.Description,
                    Quantite    = produit.Quantite,
                    Prix        = produit.Prix,
                    Photo       = produit.Photos.FirstOrDefault()?.Nom ?? "default.jpg"
                };

                panier.Add(produitPanier);

                HttpContext.Application[idSession] = panier;
            }

            return(Json(panier.Count, JsonRequestBehavior.AllowGet));
        }
Пример #9
0
        //ADD PRODUIT
        public JsonResult AddProduit(int IdProduit, string idsession)
        {
            SessionUtilisateur   sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            List <ProduitPanier> produitPaniers     = null;

            if (sessionUtilisateur != null)
            {
                if (HttpContext.Application[idsession] != null)
                {
                    produitPaniers = (List <ProduitPanier>)HttpContext.Application[idsession];
                }
                else
                {
                    produitPaniers = new List <ProduitPanier>();
                }
                Produit       produit       = db.Produits.Find(IdProduit);
                ProduitPanier produitPanier = new ProduitPanier();
                produitPanier.IdProduit   = IdProduit;
                produitPanier.Nom         = produit.Nom;
                produitPanier.Description = produit.Description;
                produitPanier.Quantite    = 1;
                produitPanier.Prix        = produit.Prix;
                produitPanier.Photo       = produit.Photos.First().Nom;
                produitPaniers.Add(produitPanier);
                HttpContext.Application[idsession] = produitPaniers;
            }
            return(Json(produitPaniers.Count, JsonRequestBehavior.AllowGet));
        }
Пример #10
0
        public JsonResult SaveCommande(string idsession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            PanierModel        panier             = null;

            if (sessionUtilisateur != null && HttpContext.Application[idsession] != null)
            {
                panier = (PanierModel)HttpContext.Application[idsession];
            }
            try
            {
                Utilisateur utilisateur = db.Utilisateurs.First(p => p.IdSession == idsession);
                if (utilisateur != null && utilisateur.Solde > 0 && panier != null && panier.Count > 0)
                {
                    decimal prixTotal = 0;
                    prixTotal = panier.Montant;
                    if (prixTotal <= utilisateur.Solde)
                    {
                        Commande commande = new Commande();
                        commande.IdUtilisateur  = utilisateur.IdUtilisateur;
                        commande.IdRestaurant   = panier.IdRestaurant;
                        commande.Date           = DateTime.Now;
                        commande.Prix           = prixTotal;
                        commande.IdEtatCommande = 1;
                        utilisateur.Solde      -= prixTotal;
                        foreach (ItemPanier item in panier)
                        {
                            CommandeProduit commandeProduit = new CommandeProduit();
                            commandeProduit.IdProduit = item.GetIdProduit();
                            commandeProduit.Prix      = item.Prix;
                            commandeProduit.Quantite  = item.Quantite;
                            commande.CommandeProduits.Add(commandeProduit);
                            try
                            {
                                Produit produit = db.Produits.Find(commandeProduit.IdProduit);
                                if (produit.IdProduit == commandeProduit.IdProduit)
                                {
                                    produit.Quantite -= commandeProduit.Quantite;
                                }
                            }
                            catch (Exception ex)
                            {
                                string er = ex.Message;
                            }
                        }
                        db.Commandes.Add(commande);
                        db.SaveChanges();
                        HttpContext.Application.Clear();
                    }
                }
                return(Json(new { idutilisateur = utilisateur.IdUtilisateur }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                string er = ex.Message;
            }
            return(Json(JsonRequestBehavior.AllowGet));
        }
Пример #11
0
        protected void Session_End()
        {
            AfpEatEntities db = new AfpEatEntities();

            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);

            db.SessionUtilisateurs.Remove(sessionUtilisateur);
            db.SaveChanges();
        }
Пример #12
0
        protected void Session_Start()
        {
            AfpEatEntities db = new AfpEatEntities();

            SessionUtilisateur sessionUtilisateur = new SessionUtilisateur();

            sessionUtilisateur.IdSession   = Session.SessionID;
            sessionUtilisateur.DateSession = DateTime.Now;
            db.SessionUtilisateurs.Add(sessionUtilisateur);
            db.SaveChanges();
        }
Пример #13
0
        public JsonResult AddMenu(int idMenu, List <int> idProduits, string idSession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            PanierModel        panier             = (PanierModel)HttpContext.Application[idSession] ?? new PanierModel();

            if (sessionUtilisateur == null)
            {
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(Json("Session incorrecte", JsonRequestBehavior.AllowGet));
            }

            Menu menu = db.Menus.Find(idMenu);

            if (menu == null)
            {
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(Json($"Menu #{idMenu} non trouvé", JsonRequestBehavior.AllowGet));
            }

            MenuPanier menuPanier = new MenuPanier();

            menuPanier.IdMenu       = idMenu;
            menuPanier.Quantite     = 1;
            menuPanier.IdRestaurant = menu.IdRestaurant;

            foreach (int idProduit in idProduits)
            {
                Produit produit = db.Produits.Find(idProduit);
                if (produit == null)
                {
                    Response.StatusCode = (int)HttpStatusCode.BadRequest;
                    return(Json($"Produit #{idProduit} non trouvé", JsonRequestBehavior.AllowGet));
                }

                ProduitPanier produitPanier = CreateProduitPanier(produit);
                menuPanier.Produits.Add(produitPanier);
                menuPanier.Quantite++;

                panier.AddItem(menuPanier);
            }

            HttpContext.Application[idSession] = panier;

            var data = new
            {
                quantiteProduit = menuPanier.Quantite,
                quantiteTotale  = panier.QuantiteTotale,
                prixTotal       = panier.Montant,
                prixTotalFormat = string.Format(CultureInfo.GetCultureInfo("fr-FR"), "{0:0.00}", panier.Montant)
            };

            return(Json(data, JsonRequestBehavior.AllowGet));
        }
Пример #14
0
        public ActionResult Enregistrer(UtilisateurEnregistrement uc)
        {
            UtilisateurServiceAPI usa = new UtilisateurServiceAPI();
            int i = usa.Creer(uc.VersUtilisateur());

            if (i > 0)
            {
                SessionUtilisateur.AssignerUtilisateur(new UtilisateurServiceAPI().Donner(i));
                return(RedirectToAction("Index", "Home"));
            }
            return(View(uc));
        }
Пример #15
0
        public JsonResult GetProduits(string idsession)
        {
            SessionUtilisateur sessionUtilisateur = daoUtilisateur.GetSessionUtilisateur(idsession);
            Panier             panier             = null;

            if (sessionUtilisateur != null && HttpContext.Application[sessionUtilisateur.IdSession] != null)
            {
                panier = (Panier)HttpContext.Application[sessionUtilisateur.IdSession];
            }

            return(Json(panier, JsonRequestBehavior.AllowGet));
        }
Пример #16
0
        public JsonResult Hasard(int idfood, int idboisson, string idsession)
        {
            SessionUtilisateur   sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            List <ProduitPanier> produitPaniers     = null;
            int quantite = 0;

            if (sessionUtilisateur != null)
            {
                if (HttpContext.Application[idsession] != null)
                {
                    produitPaniers = (List <ProduitPanier>)HttpContext.Application[idsession];
                }
                else
                {
                    produitPaniers = new List <ProduitPanier>();
                }

                var prod = produitPaniers.Find(p => p.IdProduit == idfood || p.IdProduit == idboisson);
                if (prod != null)
                {
                    prod.Quantite++;
                    quantite += prod.Quantite;
                    HttpContext.Application[idsession] = produitPaniers;
                    return(Json(quantite, JsonRequestBehavior.AllowGet));
                }

                Produit produit = db.Produits.Find(idfood, idboisson);
                foreach (ProduitPanier item in produitPaniers)
                {
                    //item.IdProduit = idfood || item.IdProduit = idboisson;
                }
                ProduitPanier produitPanier = new ProduitPanier();
                produitPanier.IdProduit    = idfood;
                produitPanier.Nom          = produit.Nom;
                produitPanier.Description  = produit.Description;
                produitPanier.Quantite     = 1;
                produitPanier.Prix         = produit.Prix;
                produitPanier.Photo        = produit.Photos.First().Nom;
                produitPanier.IdRestaurant = produit.IdRestaurant;
                produitPaniers.Add(produitPanier);

                quantite++;

                HttpContext.Application[idsession] = produitPaniers;
            }
            var rnd = new Random();

            var first  = db.Produits.Where(p => p.Categorie.IdCategorie == 3 || p.Categorie.IdCategorie == 5 || p.Categorie.IdCategorie == 7 || p.Categorie.IdCategorie == 8 || p.Categorie.IdCategorie == 9).OrderBy(p => rnd.Next());
            var second = db.Produits.Where(p => p.IdCategorie == 2).OrderBy(p => rnd.Next());

            return(Json(quantite, JsonRequestBehavior.AllowGet));
        }
Пример #17
0
        public JsonResult GetProduits(string idSession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);

            List <ProduitPanier> panier = (List <ProduitPanier>)HttpContext.Application[idSession] ?? new List <ProduitPanier>();

            if (sessionUtilisateur != null && panier.Count > 0)
            {
                return(Json(panier, JsonRequestBehavior.AllowGet));
            }

            return(Json(new EmptyResult(), JsonRequestBehavior.AllowGet));
        }
Пример #18
0
        public JsonResult GetProduits(string idsession)
        {
            SessionUtilisateur   sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            List <ProduitPanier> panier             = null;

            if (sessionUtilisateur != null)
            {
                if (HttpContext.Application[idsession] != null)
                {
                    panier = (List <ProduitPanier>)HttpContext.Application[idsession];
                }
            }
            return(Json(panier, JsonRequestBehavior.AllowGet));
        }
Пример #19
0
        public JsonResult RemoveFavoris(int idrestaurant, string idsession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            Utilisateur        utilisateur        = (Utilisateur)Session["Utilisateur"];

            if (sessionUtilisateur != null && sessionUtilisateur.IdSession == idsession)
            {
                Restaurant restaurant = db.Restaurants.Find(idrestaurant);
                db.Utilisateurs.FirstOrDefault().Restaurants.Remove(restaurant);
                db.SaveChanges();
            }

            return(Json(idrestaurant, JsonRequestBehavior.AllowGet));
        }
Пример #20
0
        public JsonResult AddQte(int idProduit, string idSession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);

            PanierModel panier = null;

            panier = (PanierModel)HttpContext.Application[idSession];
            ItemPanier itemPanier = panier.FirstOrDefault(p => p.GetIdProduit() == idProduit);


            itemPanier.Quantite += 1;

            return(Json(itemPanier.Quantite, JsonRequestBehavior.AllowGet));
        }
Пример #21
0
        public ActionResult Connexion(UtilisateurConnexion uc)
        {
            if (ModelState.IsValid)
            {
                UtilisateurServiceAPI usa = new UtilisateurServiceAPI();
                Utilisateur           u   = usa.DonnerUtilisateur(uc);

                if (u != null)
                {
                    SessionUtilisateur.AssignerUtilisateur(u);
                    return(RedirectToAction("Index", "Home"));
                }
            }
            return(View(uc));
        }
Пример #22
0
        public JsonResult GetPanier(string idSession)
        {
            PanierModel panier = null;

            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);

            if (sessionUtilisateur != null)
            {
                if (HttpContext.Application[idSession] != null)
                {
                    panier = (PanierModel)HttpContext.Application[idSession];
                }
            }

            return(Json(panier, JsonRequestBehavior.AllowGet));
        }
Пример #23
0
        public JsonResult GetRestos(int?IdTypeCuisine, string idsession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);

            if (sessionUtilisateur != null)
            {
                var resto = db.Restaurants.Where(r => r.IdTypeCuisine == IdTypeCuisine).Select(r => new
                {
                    IdRestaurant = r.IdRestaurant
                }).ToList();

                return(Json(resto, JsonRequestBehavior.AllowGet));
            }

            return(Json("", JsonRequestBehavior.AllowGet));
        }
Пример #24
0
        public JsonResult AddMenu(int idMenu, List <int> idProduits, string idSession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            PanierModel        panierModel        = null;

            if (sessionUtilisateur != null)
            {
                if (HttpContext.Application[idSession] != null)
                {
                    panierModel = (PanierModel)HttpContext.Application[idSession];
                }
                else
                {
                    panierModel = new PanierModel();
                }


                //si le menu n'est pas présent dans le panier je le récupère
                Menu menu = db.Menus.Find(idMenu);

                MenuPanier menuPanier = new MenuPanier();
                menuPanier.IdMenu = idMenu;

                if (menu != null)
                {
                    foreach (int idProduit in idProduits)
                    {
                        ProduitPanier produitPanier = FindProduit(idProduit);

                        if (produitPanier != null)
                        {
                            menuPanier.produits.Add(produitPanier);
                        }
                    }

                    panierModel.Add(menuPanier);
                }

                panierModel.GetQuantite();

                //Je sauve mon panier en session
                HttpContext.Application[idSession] = panierModel;
            }

            //Je retourne en Json le nombre de lignes
            return(Json(panierModel.Quantite, JsonRequestBehavior.AllowGet));
        }
Пример #25
0
        //ajout d'un menu au panier
        public JsonResult AddMenu(int idMenu, List <int> idProduits, string idSession)
        {
            PanierHtml panierHtml = new PanierHtml();

            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(idSession);

            PanierModel panierModel = (PanierModel)HttpContext.Application[idSession] ?? new PanierModel();

            panierModel.IdRestaurant = 0;

            if (sessionUtilisateur != null && idMenu > 0 && idProduits.Count > 0)
            {
                Menu menu = db.Menus.Find(idMenu);
                panierModel.IdRestaurant = menu.IdRestaurant;

                if (menu != null)
                {
                    //creation du menu
                    MenuPanier menuPanier = new MenuPanier();
                    menuPanier.IdMenu       = idMenu;
                    menuPanier.Nom          = menu.Nom;
                    menuPanier.Prix         = menu.Prix;
                    menuPanier.Quantite     = 1;
                    menuPanier.IdRestaurant = menu.IdRestaurant;

                    //ajout des produits selectionnés dans le menu
                    foreach (int idProduit in idProduits)
                    {
                        ProduitPanier produitPanier = FindProduit(idProduit);

                        if (produitPanier != null)
                        {
                            menuPanier.produits.Add(produitPanier);
                        }
                    }

                    //ajout du menu avec ces produits dans le panier
                    panierModel.AddItem(menuPanier);
                }

                HttpContext.Application[idSession] = panierModel;

                panierHtml = ShowPanier(panierModel);
            }
            return(Json(new { panier = panierHtml.hmtl, total = string.Format("{0:0.00}", panierHtml.total) }, JsonRequestBehavior.AllowGet));
        }
Пример #26
0
        //ajout d'un produit au panier
        public JsonResult AddProduit(int idProduit, string idSession)
        {
            //gérer le renvoit isReturnOk sur le JS avec message erreur
            bool       isReturnOk = false;
            PanierHtml panierHtml = new PanierHtml();

            //récupération de l'utilisateur sur le SW
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(idSession);

            //récupération du panier || création d'un panier
            PanierModel panierModel = (PanierModel)HttpContext.Application[idSession] ?? new PanierModel();

            panierModel.IdRestaurant = 0;

            if (sessionUtilisateur != null && panierModel != null && idProduit > 0)
            {
                //méthode FindProduit cf.
                ProduitPanier produitPanier = FindProduit(idProduit);

                if (produitPanier != null)
                {
                    //si le panier est vide
                    if (panierModel.IdRestaurant == 0)
                    {
                        panierModel.IdRestaurant = produitPanier.IdRestaurant;
                        panierModel.AddItem(produitPanier);
                        isReturnOk = true;
                    }
                    //si le panier n'est pas vide
                    else if (panierModel.IdRestaurant == produitPanier.IdRestaurant)
                    {
                        panierModel.AddItem(produitPanier);
                        isReturnOk = true;
                    }
                }

                //enregistrement du panier
                HttpContext.Application[idSession] = panierModel;

                //creation html de panier lateral
                panierHtml = ShowPanier(panierModel);
            }

            return(Json(new { panier = panierHtml.hmtl, isreturn = isReturnOk, total = string.Format("{0:0.00}", panierHtml.total) }, JsonRequestBehavior.AllowGet));
        }
Пример #27
0
        //vider le Panier
        public JsonResult ClearPanier(string idSession)
        {
            //gérer message
            string message = "Une erreur est surenue";

            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(idSession);

            PanierModel panierModel = (PanierModel)HttpContext.Application[idSession] ?? null;

            if (sessionUtilisateur != null && panierModel != null)
            {
                panierModel.Clear();
                HttpContext.Application[idSession] = panierModel;
                message = "Votre panier a été vidé";
            }

            return(Json(message, JsonRequestBehavior.AllowGet));
        }
Пример #28
0
        // GET: Sw

        public JsonResult AddMenu(int IdMenu, List <int> IdProduits, string s)
        {
            string             IdSession          = Cryptage.Decrypt(s);
            SessionUtilisateur sessionUtilisateur = daoUtilisateur.GetSessionUtilisateur(IdSession);
            Panier             panier             = GetPanier(sessionUtilisateur.IdSession);
            bool isReturnOk = false;

            if (sessionUtilisateur != null && panier != null && IdMenu > 0 && IdProduits.Count > 0)
            {
                Menu menu = daoMenu.GetMenuById(IdMenu);

                if (menu != null)
                {
                    MenuPanier menuPanier = new MenuPanier();
                    menuPanier.IdMenu   = IdMenu;
                    menuPanier.Prix     = menu.Prix;
                    menuPanier.Nom      = menu.Nom;
                    menuPanier.Quantite = 1;

                    foreach (int IdProduit in IdProduits)
                    {
                        ProduitPanier produitPanier = FindProduit(IdProduit);

                        if (produitPanier != null)
                        {
                            panier.IdRestaurant = produitPanier.IdRestaurant;
                            menuPanier.produits.Add(produitPanier);
                        }
                    }

                    panier.AddItem(menuPanier);
                    isReturnOk = true;
                }

                HttpContext.Application[sessionUtilisateur.IdSession] = panier;
            }
            string jsonPanier = Newtonsoft.Json.JsonConvert.SerializeObject(panier);

            return(Json(new { isReturnOk, qte = panier.Quantite, total = panier.Total, monpanier = jsonPanier }, JsonRequestBehavior.AllowGet));
        }
Пример #29
0
        //si le panier n'est pas vide, creation du panier latéral ET du total à chaque chargement de vue;
        public JsonResult GetPanierHtml(string idSession)
        {
            PanierModel panierModel = null;

            PanierHtml panierHtml = new PanierHtml();

            //panier et total n'est valent rien si l'utilisateur n'a pas de panier
            panierHtml.hmtl  = "";
            panierHtml.total = 0;

            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(idSession);

            if (sessionUtilisateur != null)
            {
                if (HttpContext.Application[idSession] != null)
                {
                    panierModel = (PanierModel)HttpContext.Application[idSession];

                    panierHtml = ShowPanier(panierModel);
                }
            }
            return(Json(new { panier = panierHtml.hmtl, total = string.Format("{0:0.00}", panierHtml.total) }, JsonRequestBehavior.AllowGet));
        }
Пример #30
0
        //GET: SW
        public JsonResult AddProduit(int idProduit, string idSession)
        {
            SessionUtilisateur sessionUtilisateur = db.SessionUtilisateurs.Find(Session.SessionID);
            PanierModel        panierModel        = null;

            if (sessionUtilisateur != null)
            {
                if (HttpContext.Application[idSession] != null)
                {
                    panierModel = (PanierModel)HttpContext.Application[idSession];
                }
                else
                {
                    panierModel = new PanierModel();
                }


                //si le produit n'est pas présent dans le panier je le récupère
                Produit produit = db.Produits.Find(idProduit);

                ProduitPanier produitPanier = FindProduit(idProduit);

                if (produitPanier != null)
                {
                    panierModel.Add(produitPanier);
                }


                panierModel.GetQuantite();

                //Je sauve mon panier en session
                HttpContext.Application[idSession] = panierModel;
            }

            //Je retourne en Json le nombre de lignes
            return(Json(panierModel.Quantite, JsonRequestBehavior.AllowGet));
        }