public void ValidarParametrosCriarPedido(CriarPedidoRequisicao requisicao)
 {
     if (requisicao.LivrosId == null || requisicao.LivrosId.Count() == 0 || requisicao.LivrosId.Any(l => l <= 0))
     {
         throw new BadRequestException(string.Format(Constantes.Erros.PARAMETRO_INVALIDO, nameof(requisicao.LivrosId)));
     }
 }
        public Pedido CriarPedido(CriarPedidoRequisicao requisicao)
        {
            ValidarParametrosCriarPedido(requisicao);

            var pedidoDetalhes   = new List <PedidoDetalhes>();
            var pedidoDetalhesId = 1;

            foreach (var livro in requisicao.LivrosId)
            {
                pedidoDetalhes.Add(new PedidoDetalhes()
                {
                    Id                = pedidoDetalhesId,
                    LivroId           = livro,
                    PedidoCabecalhoId = 1
                });

                pedidoDetalhesId += 1;
            }

            return(new Pedido()
            {
                PedidoCabecalho = new PedidoCabecalho()
                {
                    Id = 1,
                    StatusPedido = StatusPedido.Aberto,
                    UsuarioNome = requisicao.UsuarioNome
                },
                PedidoDetalhes = pedidoDetalhes
            });
        }
Esempio n. 3
0
 public ActionResult <Pedido> Post([FromBody] CriarPedidoRequisicao requisicao)
 {
     return(Ok(_pedidoNegocio.CriarPedido(requisicao)));
 }