public async Task <object> ObterDependentePorId(Guid clienteId, Guid dependenteId) { var obterDependentePorIdCommand = new ObterDependentePorIdCommand(clienteId, dependenteId); var obterDependentePorIdResponse = await _bus.SendCommand(obterDependentePorIdCommand); return(_notifications.HasNotifications() ? obterDependentePorIdResponse : _mapper.Map <DependenteViewModel>((ClienteDependente)obterDependentePorIdResponse)); }
public async Task <object> Handle(ObterDependentePorIdCommand message, CancellationToken cancellationToken) { if (!message.IsValid()) { NotifyValidationErrors(message); return(await Task.FromResult(false)); } var cliente = _clienteRepository.GetById(message.ClienteId); if (cliente == null) { await _bus.RaiseEvent(new DomainNotification(message.MessageType, "Cliente não cadastrado.", message)); return(await Task.FromResult(false)); } var clienteDependente = _clienteDependenteRepository.GetById(message.DependenteId); if (clienteDependente != null) { return(await Task.FromResult(clienteDependente)); } await _bus.RaiseEvent(new DomainNotification(message.MessageType, "Dependente não encontrado.", message)); return(await Task.FromResult(false)); }