public async Task <JsonResult> CartAdd( [Bind("Id,Quantidade,ProdutoId")] Produto_Pedido produto_Pedido, [Bind("Id,Cliente,Valor,LojaId")] Pedido pedido) { Estoque itemEstoque = new Estoque(); itemEstoque = _context.Estoque .Include(m => m.Produto) .Where(m => ((m.LojaId == pedido.LojaId) & (m.ProdutoId == produto_Pedido.ProdutoId))).FirstOrDefault(); produto_Pedido.PedidoId = pedido.Id; Produto_Pedido itemCarrinho = new Produto_Pedido(); itemCarrinho = _context.Produto_Pedido .Include(m => m.Produto) .Where(m => ((m.PedidoId == pedido.Id) & (m.ProdutoId == produto_Pedido.ProdutoId))).FirstOrDefault(); if (itemCarrinho != null && produto_Pedido.Quantidade <= itemEstoque.Quantidade) { if (ModelState.IsValid) { itemCarrinho.Quantidade += produto_Pedido.Quantidade; _context.Update(itemCarrinho); await _context.SaveChangesAsync(); } itemEstoque.Quantidade -= produto_Pedido.Quantidade; _context.Update(itemEstoque); await _context.SaveChangesAsync(); } else if (itemCarrinho == null && produto_Pedido.Quantidade <= itemEstoque.Quantidade) { if (ModelState.IsValid) { _context.Add(produto_Pedido); await _context.SaveChangesAsync(); } itemEstoque.Quantidade -= produto_Pedido.Quantidade; _context.Update(itemEstoque); await _context.SaveChangesAsync(); } var carrinho = await _context.Produto_Pedido .Include(m => m.Produto) .Where(m => m.PedidoId == produto_Pedido.PedidoId).ToListAsync(); foreach (var item in carrinho) { pedido.Valor += item.Produto.Valor * item.Quantidade; } pedido.Data = DateTime.Now; _context.Update(pedido); await _context.SaveChangesAsync(); return(new JsonResult(carrinho)); }
public async Task <JsonResult> Save([Bind("Id,Cliente,LojaId")] Pedido pedido) { if (ModelState.IsValid) { _context.Add(pedido); await _context.SaveChangesAsync(); } return(new JsonResult(pedido)); }
public async Task <IActionResult> Create([Bind("Id,Nome,Valor")] Produto produto) { if (ModelState.IsValid) { _context.Add(produto); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(produto)); }
public async Task <IActionResult> Create([Bind("Id,Nome,Local")] Loja loja) { if (ModelState.IsValid) { _context.Add(loja); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(loja)); }
public async Task <IActionResult> Create([Bind("Id,Quantidade,LojaId,ProdutoId")] Estoque estoque) { if (ModelState.IsValid) { _context.Add(estoque); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["LojaId"] = new SelectList(_context.Loja, "Id", "Nome", estoque.LojaId); ViewData["ProdutoId"] = new SelectList(_context.Produto, "Id", "Nome", estoque.ProdutoId); return(View(estoque)); }
public async Task <IActionResult> Create([Bind("Id,Destino,Valor,PedidoId")] Entrega entrega) { if (ModelState.IsValid) { entrega.PedidoId = await _context.Pedido .Select(m => m.Id).MaxAsync(); _context.Add(entrega); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["PedidoId"] = new SelectList(_context.Pedido, "Id", "Cliente", entrega.PedidoId); return(View(entrega)); }