Ejemplo n.º 1
0
        public Task Handle(AtualizarLivroCommand command, CancellationToken cancellationToken)
        {
            if (!command.IsValid())
            {
                NotifyValidationErrors(command);
                return(Task.CompletedTask);
            }

            var livro = _livroRepository.GetById(command.Id);

            if (livro == null)
            {
                _bus.RaiseEvent(new DomainNotification(command.MessageType, $"Livro {command.Id} não foi encontrado na base de dados."));
                return(Task.CompletedTask);
            }

            livro.AtualizarInformacoes(command.Titulo,
                                       command.Descricao,
                                       command.Autor,
                                       command.Editora,
                                       command.NumeroEdicao,
                                       command.AnoEdicao,
                                       command.ISBN);

            _livroRepository.Update(livro);

            Commit();
            return(Task.CompletedTask);
        }
Ejemplo n.º 2
0
        public Task Handle(AtualizarLivroCommand command, CancellationToken cancellationToken)
        {
            // simple fields validations
            if (!command.IsValid())
            {
                NotifyValidationErrors(command);
                return(Task.CompletedTask);
            }

            var livro = _livroRepository.GetById(command.Id);

            if (livro == null)
            {
                _mediatr.RaiseEvent(new DomainNotification(command.MessageType, "Livro não encontrado."));
                return(Task.CompletedTask);
            }

            //updating data
            livro.Atualizar(command.Titulo, command.Descricao, command.Autor, command.Editora, command.Edicao, command.ISBN, command.Idioma);

            _livroRepository.Update(livro);

            Commit();
            return(Task.CompletedTask);
        }