示例#1
0
        public List <ProdutoDomain> Listar()
        {
            List <ProdutoDomain> lsProdutos = new List <ProdutoDomain>();

            using (SqlConnection con = new SqlConnection(StringConexao))
            {
                string QuerySelect = "Select ID,NOME_PRODUTO,DESCRICAO where ID = @ID";
                using (SqlCommand cmd = new SqlCommand(QuerySelect, con))
                {
                    con.Open();

                    SqlDataReader rdr = cmd.ExecuteReader();
                    while (rdr.Read())
                    {
                        ProdutoDomain produto = new ProdutoDomain
                        {
                            ID        = Convert.ToInt32(rdr["ID"]),
                            Nome      = rdr["NOME_PRODUTO"].ToString(),
                            Descricao = rdr["DESCRICAO"].ToString(),
                        };
                    }
                }
            }
            return(lsProdutos);
        }
 public ItemVendaDomain(Guid id, Guid?vendaId, VendaDomain venda, Guid?produtoId, ProdutoDomain produto, int quantidade)
 {
     Id         = id;
     VendaId    = vendaId;
     Venda      = venda;
     ProdutoId  = produtoId;
     Produto    = produto;
     Quantidade = quantidade;
 }
示例#3
0
        public void ConsultarProduto()
        {
            // Act
            Produto produto = new ProdutoDomain().ConsultarProdutoNome(new Produto {
                Nome = "Caneta Azul"
            });

            // Assert
            Assert.Equal("Caneta Azul", produto.Nome);
        }
示例#4
0
        public void ConsultarProdutoUsandoProcedure()
        {
            // Act
            List <Produto> produtosMenores1 = new ProdutoDomain().ConsultarProdutosPorNomeUsandoProcedure("Caneta Azul", 1);
            List <Produto> produtosMaiores1 = new ProdutoDomain().ConsultarProdutosPorNomeUsandoProcedure("Caneta Azul", 5);

            // Assert
            Assert.True(produtosMenores1.Count > 0);
            Assert.False(produtosMaiores1.Count > 0);
        }
示例#5
0
        public void ConsultarProdutoMemoria()
        {
            // Arrange
            Produto produtoOriginal = new ProdutoDomain().ConsultarProdutoNome(new Produto {
                Nome = "Caneta Azul"
            });

            // Act
            Produto produtoMemoria = new ProdutoDomain().ConsultarProdutoMemoria(produtoOriginal);

            // Assert
            Assert.True(produtoOriginal.Id == produtoMemoria.Id);
        }
        public void Cadastrar(ProdutoDomain produto)
        {
            using (SqlConnection con = new SqlConnection(StringConexao))
            {
                string queryInsert = "INSERT INTO PRODUTOS(NOME, DESCRICAO) VALUES(@NOME, @DESCRICAO)";

                SqlCommand cmd = new SqlCommand(queryInsert, con);

                cmd.Parameters.AddWithValue("@NOME", produto.Nome);
                cmd.Parameters.AddWithValue("@DESCRICAO", produto.Descricao);

                con.Open();
                cmd.ExecuteNonQuery();
            }
        }
示例#7
0
        public void AlterarProdutoTodasPropriedades()
        {
            // Arrange
            Produto produto = new ProdutoDomain().ConsultarProdutoParteNome(new Produto {
                Nome = "Caneta Vermelha"
            });

            // Act
            produto.Nome = "Caneta Vermelha" + DateTime.Now.ToString("ddMMyyHHmmssffff");
            new ProdutoDomain().AlterarProdutoTodasPropriedades(produto);

            // Assert
            Produto produtoAlterado = new ProdutoDomain().ConsultarProdutoNome(produto);

            Assert.Equal(produto.Nome, produtoAlterado.Nome);
        }
示例#8
0
        public void Cadastrar(ProdutoDomain produto)
        {
            using (SqlConnection con = new SqlConnection(StringConexao))
            {
                string QueryInsert = "Insert into Produtos (NOME_PRODUTO,DESCRICAO) Values(@nomeproduto,@descricao)";
                using (SqlCommand cmd = new SqlCommand(QueryInsert, con))
                {
                    cmd.Parameters.AddWithValue("@nomeproduto", produto.Nome);
                    cmd.Parameters.AddWithValue("@descricao", produto.Descricao);

                    con.Open();

                    cmd.ExecuteNonQuery();
                }
            }
        }
示例#9
0
        public IActionResult Post([FromForm] CadastroProdutoViewModel produto)
        {
            try
            {
                //Verifica se a imagem foi passada
                if (produto.Imagem != null && produto.Imagem.Length > 0)
                {
                    //Defini o nome do arquivo
                    var NomeArquivo = Guid.NewGuid().ToString().Replace("-", "") + Path.GetExtension(produto.Imagem.FileName);

                    //Defini o caminho do arquivo
                    var CaminhoArquivo = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot\\uploads\\imgs", NomeArquivo);

                    //Salva a imagem no caminho informado acima
                    using (var StreamImagem = new FileStream(CaminhoArquivo, FileMode.Create))
                    {
                        produto.Imagem.CopyTo(StreamImagem);
                    }

                    //Defini os valores do Objeto ProdutoDomain
                    ProdutoDomain produtoTemp = new ProdutoDomain
                    {
                        Nome   = produto.Nome,
                        Preco  = Convert.ToDecimal(produto.Preco),
                        Imagem = "/uploads/imgs/" + NomeArquivo
                    };

                    //Salva as informações no banco
                    using (ECommerceContext ctx = new ECommerceContext())
                    {
                        ctx.Produtos.Add(produtoTemp);
                        ctx.SaveChanges();
                    }

                    //retorna o status code Ok
                    return(Ok());
                }

                return(BadRequest());
            }
            catch (System.Exception ex)
            {
                return(BadRequest());
            }
        }
示例#10
0
        public void IncluirProduto()
        {
            // Arrange
            Produto produto = new Produto();

            produto.Id = Guid.NewGuid();
            var produtoFake = new Faker().Commerce;

            produto.Nome  = produtoFake.Product();
            produto.Valor = decimal.Parse(produtoFake.Price(1, 100, 2, null));

            // Act
            new ProdutoDomain().AdicionarProduto(produto);
            var produtoAdicionado = new ProdutoDomain().ConsultarProdutoMemoria(produto);

            // Assert
            Assert.True(produto.Id == produtoAdicionado.Id);
        }
示例#11
0
 public IActionResult Cadastrar(ProdutoDomain produto)
 {
     try
     {
         ProdutoRepository.Cadastrar(produto);
         return(Ok());
     }
     catch
     {
         return(BadRequest(
                    new
         {
             Mensagem = "Erro, BadRequest, insira os dados corretamente.",
             erro = true
         }
                    ));
     }
 }
示例#12
0
        private void CheckProduto(ProdutoDomain ClienteObj = null, IEnumerable <ProdutoDomain> ListClientObj = null)
        {
            var listaCloente = new List <ProdutoDomain>();

            if (ListClientObj != null)
            {
                listaCloente = ListClientObj.ToList();
            }

            if (ClienteObj != null)
            {
                listaCloente.Add(ClienteObj);
            }

            foreach (var obj in listaCloente)
            {
                DomainException.When(string.IsNullOrEmpty(obj.ProdutoNome), ErrorMessages.PRODUTONOME);
                DomainException.When(obj.ProdutoValor <= 0, ErrorMessages.PRODUTOVALOR);
            }
        }
        public List <ProdutoDomain> Listar()
        {
            List <ProdutoDomain> produtos;

            using (SqlConnection con = new SqlConnection(StringConexao))
            {
                string querySelect = "SELECT ID, NOME, DESCRICAO FROM PRODUTOS";

                using (SqlCommand cmd = new SqlCommand(querySelect, con))
                {
                    con.Open();

                    SqlDataReader sdr = cmd.ExecuteReader();

                    if (sdr.HasRows)
                    {
                        produtos = new List <ProdutoDomain>();

                        while (sdr.Read())
                        {
                            ProdutoDomain produto = new ProdutoDomain
                            {
                                Id        = Convert.ToInt32(sdr["ID"]),
                                Nome      = sdr["NOME"].ToString(),
                                Descricao = sdr["DESCRICAO"].ToString()
                            };

                            produtos.Add(produto);
                        }
                        return(produtos);
                    }
                    else
                    {
                        return(null);
                    }
                }
            }
        }
示例#14
0
 public long Insert(ProdutoDomain obj)
 {
     return _business.Insert(obj);
 }
示例#15
0
 public IActionResult Inserir([FromBody] ProdutoDomain Produto)
 {
     return(Ok(_repo.Inserir(Produto)));
 }
示例#16
0
 public IActionResult Atualizar(ProdutoDomain produto)
 {
     return(Ok(_repo.Atualizar(produto)));
 }
示例#17
0
 public IActionResult Cadastrar(ProdutoDomain produto)
 {
     return(Ok(_repo.Inserir(produto)));
 }
示例#18
0
 public long Insert(ProdutoDomain obj)
 {
     CheckProduto(obj);
     return(_repository.Insert(obj));
 }
示例#19
0
 public bool Remove(ProdutoDomain obj)
 {
     return(_repository.Remove(obj));
 }
示例#20
0
 public bool Update(ProdutoDomain obj)
 {
     CheckProduto(obj);
     return(_repository.Update(obj));
 }
示例#21
0
 public bool Remove(ProdutoDomain obj)
 {
     return _business.Remove(obj);
 }
示例#22
0
 public bool Update(ProdutoDomain obj)
 {
     return _business.Update(obj);
 }
 public ItemVendaBuilder WithProduto(ProdutoDomain produto)
 {
     Produto = produto;
     return(this);
 }