Ejemplo n.º 1
0
        public void FecharPedido(FecharPedidoFormViewModel model, int usuarioId)
        {
            var carrinho = _carrinhoApp.Carrinho(usuarioId);

            if (carrinho == null || carrinho.Produtos == null || !carrinho.Produtos.Any())
            {
                throw new Exception("O carrinho está vazio!");
            }

            var pedido = Mapper.Map <Pedido>(model);

            pedido.DtInclusao   = DateTime.Now;
            pedido.StatusPedido = TipoStatusPedido.Criado;
            pedido.UsuarioId    = usuarioId;

            _pedidoRepository.Add(pedido);
            _pedidoRepository.Commit();

            foreach (var produto in carrinho.Produtos)
            {
                var pedidoProduto = new PedidoProduto
                {
                    DtInclusao    = DateTime.Now,
                    PedidoId      = pedido.Id,
                    ProdutoId     = produto.Id,
                    Quantidade    = produto.Qtd,
                    ValorUnitario = produto.Preco
                };
                _pedidoProdutoRepository.Add(pedidoProduto);
            }
            _pedidoRepository.Commit();
        }
Ejemplo n.º 2
0
 public string FecharPedido(FecharPedidoFormViewModel model)
 {
     try
     {
         _pedidoApp.FecharPedido(model, UsuarioLogado.CurrentUser.UserId);
         return("OK");
     }
     catch (Exception ex)
     {
         return(ex.Message);
     }
 }