public async Task <ActionResult <Reserva> > Get(int id) { var reserva = await _repositorio.BuscarPorID(id); if (reserva == null) { return(NotFound(new { mensagem = "Id de reserva não encontrado", Erro = true })); } return(reserva); }
public async Task <ActionResult <Reserva> > Get(int id) { var reserva = await _repositorio.BuscarPorID(id); if (reserva == null) { return(NotFound()); } return(reserva); }
public async Task <ActionResult <Reserva> > Get(int id) { //FindAsync = procurar algo especifico no banco //await espera acontecer var reserva = await _repositorio.BuscarPorID(id); if (reserva == null) { return(NotFound()); } return(reserva); }
public async Task <ActionResult> Put(int id, [FromBody] AlterarReservaViewModel reserva) { ReservaRepository _reserva = new ReservaRepository(); var ReservaUsuario = await _reserva.BuscarPorID(id); if (ReservaUsuario == null) { return(NotFound(new { Mensagem = "Reserva não encontrada", Erro = true })); } OfertaRepository _oferta = new OfertaRepository(); var QtdOferta = await _oferta.BuscarPorID(ReservaUsuario.OfertaId.Value); if (QtdOferta != null) { QtdOferta.Quantidade = QtdOferta.Quantidade + ReservaUsuario.Quantidade; var RetornorOferta = await _oferta.Alterar(QtdOferta); } if (QtdOferta.Quantidade < reserva.Quantidade) { return(NotFound(new { Mensagem = "Atenção! Quantidade desejada maior que a ofertada", Erro = true })); } var ReservaAlterada = VerificaAlteracaoReserva(ReservaUsuario, reserva); QtdOferta.Quantidade = QtdOferta.Quantidade - ReservaAlterada.Quantidade; try { await _repositorio.Alterar(ReservaAlterada); await _oferta.Alterar(QtdOferta); return(Ok(new { Mensagem = "Reserva Alterada Com Sucesso", Erro = false })); } catch (DbUpdateConcurrencyException) { //Verificamos se o objeto realmente existe no banco var reserva_valido = await _repositorio.BuscarPorID(id); if (reserva_valido == null) { return(NotFound()); } else { throw; } } }