Example #1
0
        public async Task <LivroViewModel> Executar(Guid id, AtualizarLivroViewModel atualizarLivroViewModel)
        {
            if (id != atualizarLivroViewModel.Id)
            {
                _notificador.AdicionarErro("id", "Id informado não corresponde ao da rota");
                return(null);
            }

            var editora = await _buscarEditoraUseCase.Executar(atualizarLivroViewModel.EditoraId);

            var autor = await _buscarAutorUseCase.Executar(atualizarLivroViewModel.AutorId);

            if (_notificador.ExistemErros)
            {
                return(null);
            }

            var livro = _mapper.Map <Livro>((atualizarLivroViewModel, editora, autor));

            if (livro == null)
            {
                return(null);
            }
            await _livroRepository.AtualizarLivro(livro);

            return(_notificador.ExistemErros ? null : _mapper.Map <LivroViewModel>(livro));
        }
        public async Task <EditoraViewModel> Executar(Guid id, AtualizarEditoraViewModel viewModel)
        {
            if (viewModel.Id != id)
            {
                _notificador.AdicionarErro("id", "Id informado não corresponde ao da rota");
                return(null);
            }
            var editora = _mapper.Map <Editora>(viewModel);
            await _editoraRepository.AtualizarEditora(editora);

            return(_notificador.ExistemErros ? null : _mapper.Map <EditoraViewModel>(editora));
        }
Example #3
0
        public async Task <AutorViewModel> Executar(Guid id, AtualizarAutorViewModel autorViewModel)
        {
            if (autorViewModel.Id != id)
            {
                _notificador.AdicionarErro("id", "Id informado não corresponde ao da rota");
                return(null);
            }

            var autor = _mapper.Map <Autor>(autorViewModel);

            autor = await _autorRepository.AtualizarAutor(autor);

            return(_mapper.Map <AutorViewModel>(autor));
        }