Example #1
0
        public async Task NovoPedido_ClienteJaCadastrado()
        {
            //Arrange
            var clienteId = 1;
            var produto   = await _repository.GetById(1);

            var pedido = new PedidoViewModel
            {
                PedidoItem = new List <PedidoItemViewModel> {
                    new PedidoItemViewModel(produto.ProdutoId, 1, produto.ValorUnitario, null)
                }
            };

            pedido.ClienteId = clienteId;

            pedido.Logradouro  = "Logradouro";
            pedido.Numero      = "10";
            pedido.Estado      = "ES";
            pedido.Complemento = "Complemento";
            pedido.Cep         = "29149408";
            pedido.Bairro      = "Bairro";
            pedido.Cidade      = "Cidade";

            //Act
            var result = await _pedidoAppService.Incluir(pedido);

            //Assert
            Assert.True(result > 0);
        }
Example #2
0
        public void SalvarProdutoPrecoFornecedor(int fornecedorId, ProdutoPreco produtoPreco)
        {
            var fornecedor = BuscarPorId(fornecedorId);

            produtoPreco.Fornecedor = fornecedor ?? throw new Exception("Fornecedor não encontrada!");

            var produto = produtoPreco.Produto;

            foreach (var informacao in produto.Informacoes)
            {
                if (produto.Id != 0)
                {
                    var produtoAtual = _produtoRepositorio.GetById(produto.Id);

                    if (produtoAtual.Informacoes.Count(x => x.Tipo.Equals(informacao.Tipo)) > 0 && informacao.Tipo == 1)
                    {
                        informacao.Id = produtoAtual.Informacoes.FirstOrDefault(x => x.Tipo.Equals(informacao.Tipo)).Id;
                    }
                }
                informacao.Produto = produto;
            }

            var departamentoProduto = _departamentoProdutoRepositorio.GetById(produto.DepartamentoProduto.Id);

            produto.CategoriaProduto    = departamentoProduto.CategoriaProduto;
            produto.DepartamentoProduto = departamentoProduto;

            _produtoRepositorio.Save(produto);

            _produtoPrecoRepositorio.Save(produtoPreco);

            if (fornecedor.FornecedorProdutos == null)
            {
                fornecedor.FornecedorProdutos = new List <FornecedorProduto>();
            }

            if (fornecedor.FornecedorProdutos.Count(x => x.Produto.Id == produto.Id) <= 0)
            {
                fornecedor.FornecedorProdutos.Add(new FornecedorProduto {
                    Produto = produto
                });

                Salvar(fornecedor);
            }
        }
Example #3
0
        public void SalvarProdutoPrecoLoja(int lojaId, ProdutoPreco produtoPreco)
        {
            var loja = BuscarPorId(lojaId);

            produtoPreco.Loja = loja ?? throw new Exception("Loja não encontrada!");

            var produto = produtoPreco.Produto;

            foreach (var informacao in produto.Informacoes)
            {
                if (produto.Id != 0)
                {
                    var produtoAtual = _produtoRepositorio.GetById(produto.Id);

                    if (produtoAtual.Informacoes.Count(x => x.Tipo.Equals(informacao.Tipo)) > 0)
                    {
                        informacao.Id = produtoAtual.Informacoes.FirstOrDefault(x => x.Tipo.Equals(informacao.Tipo)).Id;
                    }
                }
                informacao.Produto = produto;
            }

            var departamentoProduto = _departamentoProdutoRepositorio.GetById(produto.DepartamentoProduto.Id);

            produto.CategoriaProduto    = departamentoProduto.CategoriaProduto;
            produto.DepartamentoProduto = departamentoProduto;

            _produtoRepositorio.Save(produto);

            _produtoPrecoRepositorio.Save(produtoPreco);

            if (loja.LojaProdutos == null)
            {
                loja.LojaProdutos = new List <LojaProduto>();
            }

            if (loja.LojaProdutos.Count(x => x.Produto.Id == produto.Id) <= 0)
            {
                loja.LojaProdutos.Add(new LojaProduto {
                    Produto = produto
                });

                Salvar(loja);
            }
        }
Example #4
0
        public async Task <ProdutoViewModel> ConsultaPorId(Guid id)
        {
            var produto = await _repositorio.GetById(id);

            return(_mapper.Map <ProdutoViewModel>(produto));
        }
Example #5
0
 public Produto Get(int id)
 {
     return(_produtoRepositorio.GetById(id));
 }