예제 #1
0
        public JsonResult EnviarPedido(List <string> platoIds, List <string> cantidad, int mesaId)
        {
            var userId = System.Web.HttpContext.Current.User.Identity.GetUserId();

            var pedidoCabecera = new pedido_cabecera
            {
                mesa_id_fk   = mesaId,
                estado       = EstadoPedidoCabecera.Enviado,
                fecha        = DateTime.Now,
                precio_final = 0
            };

            _context.pedido_cabecera.Add(pedidoCabecera);
            _context.SaveChanges();

            for (var i = 0; i < platoIds.Count; i++)
            {
                var platoId       = Convert.ToInt32(platoIds[i]);
                var plato         = _context.plato.SingleOrDefault(p => p.plato_id == platoId);
                var pedidoDetalle = new pedido_detalle
                {
                    plato_id_fk           = Convert.ToInt32(platoIds[i]),
                    cantidad              = Convert.ToInt32(cantidad[i]),
                    precio                = plato.precio * Convert.ToInt32(cantidad[i]),
                    pedido_cabecera_id_fk = pedidoCabecera.pedido_cabecera_id
                };

                _context.pedido_detalle.Add(pedidoDetalle);
                _context.SaveChanges();
            }
            return(Json(platoIds, JsonRequestBehavior.AllowGet));
        }
예제 #2
0
        public IHttpActionResult Putpedido_cabecera(int id, pedido_cabecera pedido_cabecera)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != pedido_cabecera.pedido_cabecera_id)
            {
                return(BadRequest());
            }

            db.Entry(pedido_cabecera).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!pedido_cabeceraExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
예제 #3
0
 public PedidoViewModel()
 {
     PedidoCabecera    = new pedido_cabecera();
     PedidoDetalleList = new List <pedido_detalle>();
     PedidoDetalle     = new pedido_detalle();
     Restaurante       = new restaurante();
 }
예제 #4
0
        public ActionResult CancelarPedido(int id)
        {
            var pedido = new pedido_cabecera();

            pedido.CancelarPedido(id);
            return(RedirectToAction("Pedidos"));
        }
        public IHttpActionResult Getpedido_cabecera(int id)
        {
            pedido_cabecera pedido_cabecera = db.pedido_cabecera.Find(id);

            if (pedido_cabecera == null)
            {
                return(NotFound());
            }

            return(Ok(pedido_cabecera));
        }
예제 #6
0
 public ActionResult Guardar(pedido_cabecera empresa)
 {
     if (ModelState.IsValid)
     {
         empresa.guardar();
         return(Redirect("~/pedido_cabecera"));
     }
     else
     {
         return(View("~/Views/pedido_cabecera/Agregar.cshtml", empresa));
     }
 }
예제 #7
0
        public IHttpActionResult Postpedido_cabecera(pedido_cabecera pedido_cabecera)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.pedido_cabecera.Add(pedido_cabecera);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = pedido_cabecera.pedido_cabecera_id }, pedido_cabecera));
        }
예제 #8
0
        public IHttpActionResult Getpedido_cabecera(int id)
        {
            db.Configuration.LazyLoadingEnabled = false;
            pedido_cabecera pedido_cabecera = db.pedido_cabecera.Find(id);

            if (pedido_cabecera == null)
            {
                return(NotFound());
            }

            return(Ok(pedido_cabecera));
        }
        public IHttpActionResult Getpedido_cabecera()
        {
            pedido_cabecera pedido_cabecera =
                db.pedido_cabecera.OrderByDescending(t => t.pedido_cabecera_id).FirstOrDefault();

            if (pedido_cabecera == null)
            {
                return(NotFound());
            }

            return(Ok(pedido_cabecera));
        }
예제 #10
0
        public IHttpActionResult Getpedido_cabecera()
        {
            db.Configuration.LazyLoadingEnabled = false;
            pedido_cabecera pedido_cabecera =
                db.pedido_cabecera.OrderByDescending(t => t.pedido_cabecera_id).FirstOrDefault();

            if (pedido_cabecera == null)
            {
                return(NotFound());
            }

            return(Ok(pedido_cabecera));
        }
예제 #11
0
        public IHttpActionResult Deletepedido_cabecera(int id)
        {
            pedido_cabecera pedido_cabecera = db.pedido_cabecera.Find(id);

            if (pedido_cabecera == null)
            {
                return(NotFound());
            }

            db.pedido_cabecera.Remove(pedido_cabecera);
            db.SaveChanges();

            return(Ok(pedido_cabecera));
        }
예제 #12
0
        public ActionResult GuardarPedidoCabecera(PedidoViewModel pedidoViewModel)
        {
            var pedidoCabecera = new pedido_cabecera
            {
                mesa_id_fk   = pedidoViewModel.PedidoCabecera.mesa_id_fk,
                estado       = EstadoPedidoCabecera.Pidiendo,
                fecha        = DateTime.Now,
                precio_final = 0
            };

            _context.pedido_cabecera.Add(pedidoCabecera);
            _context.SaveChanges();
            pedidoViewModel.PedidoCabecera = pedidoCabecera;

            var restaurante = _context.mesa
                              .Include(m => m.restaurante)
                              .SingleOrDefault(m => m.mesa_id == pedidoCabecera.mesa_id_fk)
                              ?.restaurante;

            pedidoViewModel.Restaurante = restaurante;

            return(View("PedidoDetalle", pedidoViewModel));
        }