예제 #1
0
        public ActionResult GuardarLista(List <String> values)
        {
            //values[0] -> nombre lista
            //values[>=1] -> contenido de la lista

            //usuario logeado
            if (Session["correoUsuario"] != null)
            {
                var rows = db.Listas.ToList();

                var nextId = 0;
                if (rows.Count > 0)
                {
                    var lastRow = rows[rows.Count - 1];
                    var lastId  = lastRow.lista_id;
                    nextId = lastId + 1;
                }
                else
                {
                    nextId++;
                }

                Lista lista = new Lista();
                lista.usuario_id = Int32.Parse(Session["idUsuario"].ToString());
                lista.nombre     = values[0];
                lista.fecha      = DateTime.Today;
                lista.lista_id   = nextId;

                db.Listas.Add(lista);
                db.SaveChanges();

                Contenido_Listas contenido;

                for (var i = 1; i < values.Count; i++)
                {
                    contenido          = new Contenido_Listas();
                    contenido.lista_id = nextId;
                    contenido.tipo     = values[i];
                    db.Contenido_Listas.Add(contenido);
                }
                db.SaveChanges();
                guardarListaEnSession(values.ToArray());
                return(Json(true, JsonRequestBehavior.AllowGet));
            }
            else
            {
                //usuario no logeado
                return(Json(false, JsonRequestBehavior.AllowGet));
            }
        }
예제 #2
0
        public ActionResult CreateWithJson(List <String> values)
        {
            Lista lista = new Lista();

            lista.nombre     = values[0];
            lista.usuario_id = 1;
            lista.fecha      = DateTime.Today;

            db.Listas.Add(lista);

            Contenido_Listas contenido;

            for (var i = 0; i < values.Count; i++)
            {
                contenido          = new Contenido_Listas();
                contenido.lista_id = 1;
                contenido.tipo     = values[i];
                db.Contenido_Listas.Add(contenido);
            }
            db.SaveChanges();
            return(View());
        }
예제 #3
0
        public ActionResult miLista()
        {
            ViewBag.superMercados = db.Super_mercados.ToList();

            if (Session["correoUsuario"] != null)
            {
                var idUsuario         = Int32.Parse(Session["idUsuario"].ToString());
                var usuarioTieneLista = (from l in db.Listas where l.usuario_id == idUsuario select l).Count();

                if (usuarioTieneLista > 0)
                {
                    var l = db.Listas.Where(s => s.usuario_id == idUsuario).OrderByDescending(a => a.lista_id).First();
                    if (l != null)
                    {
                        var Id = l.lista_id;

                        var contenido = (from c in db.Contenido_Listas
                                         where c.lista_id == Id
                                         select c);
                        ViewBag.listaExiste = true;
                        ViewBag.nombreLista = l.nombre;
                        return(View(db.Contenido_Listas.Where(s => s.lista_id == Id).ToList()));
                    }
                    else if (Session["lista"] != null)
                    {
                        ViewBag.listaExiste = false;
                        return(View());
                    }
                }
                else if (Session["lista"] != null)
                {
                    string[] sessionLista = (string[])Session["lista"];

                    ViewBag.listaExiste = true;
                    ViewBag.nombreLista = sessionLista[0];
                    return(View(sessionLista));
                }
                else
                {
                    ViewBag.listaExiste = false;
                    return(View());
                }
            }
            else if (Session["lista"] != null)
            {
                string[] sessionLista         = (string[])Session["lista"];
                List <Contenido_Listas> lista = new List <Contenido_Listas>();
                Contenido_Listas        contenido;

                int c = 1;
                for (var i = 0; i < sessionLista.Length; i++)
                {
                    if (c != 1)
                    {
                        contenido      = new Contenido_Listas();
                        contenido.tipo = sessionLista[i];
                        lista.Add(contenido);
                    }
                    c++;
                }

                ViewBag.listaExiste = true;
                ViewBag.nombreLista = sessionLista[0];
                return(View(lista));
            }
            ViewBag.listaExiste = false;
            return(View());
        }