public async Task <IActionResult> Create([Bind("Id,DataCadastro,DataEntrega,PacienteId,SolicitanteId,ConvenioId,PostoColetaId,ExameId,Valor,Desconto,Total,IdTemporario")] Requisicao requisicao) { double totalRequisicao = 0; if (ModelState.IsValid) { IEnumerable <ItemRequisicaoTemp> _exames = _context.ItemRequisicaoTemp.Where(w => w.IdTemporario.Equals(requisicao.IdTemporario)).ToList(); requisicao.DataCadastro = DateTime.Now; _context.Add(requisicao); foreach (var item in _exames) { ItemRequisicao exame = new ItemRequisicao { DataCadastro = DateTime.Now, ExameId = item.ExameId, RequisicaoId = requisicao.Id, Valor = item.Valor }; totalRequisicao += item.Valor; _context.ItemRequisicao.Add(exame); } requisicao.Valor = totalRequisicao; requisicao.Total = totalRequisicao; await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["ConvenioId"] = new SelectList(_context.Convenio, "Id", "Nome", requisicao.ConvenioId); ViewData["ExameId"] = new SelectList(_context.Exame, "Id", "Codigo", requisicao.ExameId); ViewData["PacienteId"] = new SelectList(_context.Paciente, "Id", "Nome", requisicao.PacienteId); ViewData["PostoColetaId"] = new SelectList(_context.PostoColeta, "Id", "Nome", requisicao.PostoColetaId); ViewData["SolicitanteId"] = new SelectList(_context.Solicitante, "Id", "Nome", requisicao.SolicitanteId); return(View(requisicao)); }
public async Task <UpdateQuantidadeResponse> UpdateQuantidadeAsync(ItemRequisicao itemPedido) { var itemPedidoDB = await GetItemPedidoAsync(itemPedido.Id); if (itemPedidoDB != null) { itemPedidoDB.AtualizaQuantidade(itemPedido.Quantidade); if (itemPedido.Quantidade == 0) { await RemoveItemPedidoAsync(itemPedido.Id); } await contexto.SaveChangesAsync(); var pedido = await GetRequisicao(); var carrinhoViewModel = new CarrinhoViewModel(pedido.ItemRequisicao); return(new UpdateQuantidadeResponse(itemPedidoDB, carrinhoViewModel)); } throw new ArgumentException("ItemPedido não encontrado"); }
public UpdateQuantidadeResponse(ItemRequisicao itemPedido, CarrinhoViewModel carrinhoViewModel) { ItemPedido = itemPedido; CarrinhoViewModel = carrinhoViewModel; }
public async Task <UpdateQuantidadeResponse> UpdateQuantidade([FromBody] ItemRequisicao itemPedido) { return(await RepositoryRequisicao.UpdateQuantidadeAsync(itemPedido)); }