public async Task <bool> Adicionar(Solicitacao solicitacao) { if (!ExecutarValidacao(new SolicitacaoValidation(), solicitacao)) { return(false); } if (_solicitacaoRepository.Buscar(p => p.Descricao == solicitacao.Descricao).Result.Any()) { Notificar("Já existe uma solicitação com esse nome"); return(false); } await _solicitacaoRepository.Adicionar(solicitacao); return(true); }
public async Task <ValidationResult> Handle(RegistrarSolicitacaoCommand message, CancellationToken cancellationToken) { if (!message.EhValido()) { return(message.ValidationResult); } var solicitacao = new Models.Solicitacao( message.Id, message.IdSolicitante, message.CodDepartamento, message.Descricao, message.Status, message.DataCadastro, null); _solicitacaoRepository.Adicionar(solicitacao); solicitacao.AdicionarEvento(new SolicitacaoRegistradoEvent(message.Id, message.IdSolicitante, message.Descricao, message.CodDepartamento)); return(await PersistirDados(_solicitacaoRepository.UnitOfWork)); }