public Task <int> Handle(RemoveIndiciadoCommand request, CancellationToken cancellationToken) { if (!request.IsValid()) { NotifyValidationErrors(request); return(Task.FromResult(0)); } var indiciado = _indiciadoRepository.GetById(request.Id); if (indiciado == null) { Bus.RaiseEvent(new DomainNotification(request.MessageType, "O Indiciado não foi encontrado.")); return(Task.FromResult(0)); } _indiciadoRepository.Remove(indiciado.Id); if (Commit()) { // TO DO } return(Task.FromResult(request.Id)); }
public Task <int> Handle(RemoveProcedimentoCommand request, CancellationToken cancellationToken) { if (!request.IsValid()) { NotifyValidationErrors(request); return(Task.FromResult(0)); } var procedimento = _procedimentoRepository.GetById(request.Id); if (procedimento == null) { Bus.RaiseEvent(new DomainNotification(request.MessageType, "O procedimento não foi encontrado.")); return(Task.FromResult(0)); } _vitimaRepository.Remove(x => x.ProcedimentoId == request.Id); _indiciadoRepository.Remove(x => x.ProcedimentoId == request.Id); _movimentacaoRepository.Remove(x => x.ProcedimentoId == request.Id); _objetoApreendidoRepository.Remove(x => x.ProcedimentoId == request.Id); _situacaoProcedimentoRepository.Remove(x => x.ProcedimentoId == request.Id); _procedimentoRepository.Remove(request.Id); if (Commit()) { // TO DO: Raise Event } return(Task.FromResult(request.Id)); }