Exemplo n.º 1
0
        public void ProdutoAdapter_ConverterParaModel_DeveRetornarModelProdutoSemImagemBaseadoEmUmaEntidade()
        {
            //Arrange
            var produtoId          = Guid.NewGuid();
            var imagemId           = Guid.NewGuid();
            var produtoDtoEsperado = new AtualizarProdutoDto
            {
                Id        = produtoId,
                Descricao = "Descrição novo Produto",
                Nome      = "Nome novo produto"
            };

            var produto = new Produto
            {
                Id           = produtoId,
                Descricao    = "Descrição novo Produto",
                Nome         = "Nome novo produto",
                IdProdutoPai = null
            };

            var produtoDto = new AtualizarProdutoDto
            {
                Id        = produtoId,
                Descricao = "Descrição novo Produto",
                Nome      = "Nome novo produto"
            };

            //Act
            var produtoDtoRetorno = ProdutoAdapter.ToProdutoModel(produtoDto, produto);

            //Assert
            Assert.Equal(produtoDtoEsperado.Id.ToString(), produtoDtoRetorno.Id.ToString());
            Assert.Equal(produtoDtoEsperado.Nome, produtoDtoRetorno.Nome);
            Assert.Equal(produtoDtoEsperado.Descricao, produtoDtoRetorno.Descricao);
        }
        public HttpResponseMessage AtualizarProduto([FromBody] AtualizarProdutoDto produto)
        {
            if (_produtoAppService.AtualizarProduto(produto))
            {
                return(new HttpResponseMessage(HttpStatusCode.OK));
            }

            return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> AtualizarAsync([FromBody] AtualizarProdutoDto dto)
        {
            if (ModelState.IsValid)
            {
                await _produtoDomainService.AtualizarAsync(dto);
            }

            return(RetornarResponse());
        }
Exemplo n.º 4
0
        public static Produto ToProdutoModel(AtualizarProdutoDto produtoDto, Produto produtoModel)
        {
            produtoModel.Descricao    = produtoDto.Descricao;
            produtoModel.Id           = produtoDto.Id;
            produtoModel.Nome         = produtoDto.Nome;
            produtoModel.IdProdutoPai = produtoDto?.IdProdutoPai;

            return(produtoModel);
        }
Exemplo n.º 5
0
        public bool AtualizarProduto(AtualizarProdutoDto produto)
        {
            var produtoModel = _produtoService.FindByPK(produto.Id);

            if (produtoModel == null)
            {
                return(false);
            }

            return(_produtoService.Update(ProdutoAdapter.ToProdutoModel(produto, produtoModel)));
        }
Exemplo n.º 6
0
        public async Task AtualizarAsync(AtualizarProdutoDto dto)
        {
            var produtoDb = await _produtoRepository.GetByIdAsync(dto.Id);

            ValidarSeProdutoExiste(produtoDb);

            await ValidarSeNomeEstaDisponivel(dto.Nome, dto.Id);

            var nomeCategoria = await _categoriaRepository.ObterNomePorIdAsync(dto.CategoriaId);

            var nomeFornecedor = await _fornecedorRepository.ObterNomePorIdAsync(dto.FornecedorId);

            produtoDb.Atualizar(dto.Nome, dto.CategoriaId, nomeCategoria, nomeFornecedor, dto.FornecedorId, dto.Ativo);

            if (Notification.HasErrorNotifications())
            {
                return;
            }

            await _produtoRepository.UpdateAsync(produtoDb);
        }