public IActionResult CriarPedido([FromBody] CriarPedidoComando comando, int idUsuario) { try { _pedidoRepository.Salvar(comando, idUsuario); return(Created("/api/pedido", comando)); } catch (Exception e) { return(BadRequest($"Erro: {e.Message}")); } }
public async Task <Resultado <Pedido> > Run( [ActivityTrigger] CriarPedidoComando comando, ExecutionContext context, ILogger log) { try { log.LogInformation("Criando pedido para socio {0}", comando.SocioId); return(await _gerenciadorComando.ExecutarAsync(comando)); } catch (Exception ex) { log.LogCritical(ex, "Falha catrastrófica ao criar pedido para socio {0}", comando.SocioId); return(Falha.NovaFalha(Motivo.Novo("FalhaAoCriarPedido", "Falha ao criar pedido"))); } }
public void Salvar(CriarPedidoComando comando, int idUsuario) { Usuario usuario = _appContext.Usuarios.FirstOrDefault(p => p.Id == idUsuario); Evento evento = _appContext.Eventos.FirstOrDefault(p => p.Nome == comando.NomeEvento); Pedido pedido = new Pedido(); pedido.DataPedido = DateTime.Now; pedido.Usuario = usuario; pedido.Evento = evento; pedido.QuantidadeIngresso = comando.QuantidadeIngresso; _appContext.Pedidos.Add(pedido); EnviarEmail enviarEmail = new EnviarEmail(); enviarEmail.SendMail(usuario, comando); _appContext.SaveChanges(); }