public async Task <IActionResult> Edit(int id, [Bind("idPedidoDetalle,cantidad,subTotal,impuesto,total,idPedido")] pedidoDetalle pedidoDetalle) { if (id != pedidoDetalle.idPedidoDetalle) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(pedidoDetalle); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!pedidoDetalleExists(pedidoDetalle.idPedidoDetalle)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["idPedido"] = new SelectList(_context.pedidos, "idPedido", "observaciones", pedidoDetalle.idPedido); return(View(pedidoDetalle)); }
// GET: pedidos/Details/5 public async Task <IActionResult> Details(int?id) { if (id == null) { return(NotFound()); } var pedidoView = new pedidoView(); var pedidoDetalle = new pedidoDetalle(); pedidoView.pedido = await _context.pedidos .Include(p => p.mesa) .Include(p => p.plato) .FirstOrDefaultAsync(m => m.idPedido == id); var data = _context.pedidoDetalles.Include(od => od.pedido).Where(od => od.idPedido.Equals(id)).ToList(); pedidoView.pedidos = data; ViewData["Platoo"] = new SelectList(_context.plato, "idPlatos", "Nombre", pedidoDetalle); return(View(pedidoView)); }
public async Task <IActionResult> Create([Bind("idPedidoDetalle,cantidad,subTotal,impuesto,total,idPedido")] pedidoDetalle pedidoDetalle) { if (ModelState.IsValid) { _context.Add(pedidoDetalle); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["idPedido"] = new SelectList(_context.pedidos, "idPedido", "observaciones", pedidoDetalle.idPedido); return(View(pedidoDetalle)); }
public async Task <IActionResult> AdicionarArticulo([Bind("idPedidoDetalle,cantidad,subTotal,impuesto,total,precio,idPedido,idPlatos")] pedidoDetalle pedidoDetalle) { if (ModelState.IsValid) { int id = pedidoDetalle.idPedido; int idPlato = pedidoDetalle.idPlatos; plato plato = _context.plato.Find(idPlato); decimal precio = plato.Precio; decimal cantidad = pedidoDetalle.cantidad; pedidoDetalle.precio = precio; pedidoDetalle.total = cantidad * precio; plato.Cantidad += decimal.ToInt32(cantidad); _context.Update(plato); Models.pedidoDetalle pedidoss = _context.pedidoDetalles.Where(r => r.idPedido == id).FirstOrDefault(); if (_context.pedidoDetalles.Any(o => o.idPedido == id) == false) { _context.Add(pedidoDetalle); } else { pedidoss.cantidad += decimal.ToInt32(cantidad); _context.Update(pedidoss); } await _context.SaveChangesAsync(); pedido pedido = _context.pedidos.Find(id); pedido.subTotal += cantidad * precio; pedido.total += cantidad * precio; _context.Update(pedido); _context.SaveChanges(); return(RedirectToAction("Details", "pedidos", new { id = id })); } return(View(pedidoDetalle)); }