public async Task <NotificationResultDto> Handle(CreateAudienceCommand command, CancellationToken cancellationToken) { try { if (!command.Valid()) { return(_handlerResponse.Response(command.IsValid, command.Notifications)); } var audienteEntites = await _audienceRepository.GetAudienceByBroadcasterAndDateTimeAsync(command.AudienceBroadcaster, command.AudienceDateTime); var audience = new Audience(command.AudienceBroadcaster, command.AudienceDateTime, command.AudiencePoints); if (audienteEntites != null) { audience.AudienceRegister(); } if (audience.IsValid) { await _audienceRepository.InsertAsync(audience); } AddNotifications(audience); } catch (Exception ex) { AddNotification("500", ex.Message); } return(_handlerResponse.Response(IsValid, Notifications)); }
public async Task <NotificationResultDto> Handle(CreateBroadcastersCommand command, CancellationToken cancellationToken) { try { if (!command.Valid()) { return(_handlerResponse.Response(command.IsValid, command.Notifications)); } var broadcasterEntities = await _broadcastersRepository.GetByNameAsync(command.BrodcastersName); var broadcaster = new Broadcasters(command.BrodcastersName); if (broadcasterEntities != null) { broadcaster.NameUnavailable(); } if (broadcaster.IsValid) { await _broadcastersRepository.InsertAsync(broadcaster); } AddNotifications(broadcaster); } catch (Exception ex) { AddNotification("500", ex.Message); } return(_handlerResponse.Response(IsValid, Notifications)); }
public async Task <NotificationResultDto> Handle(UpdateBroadcastersCommand command, CancellationToken cancellationToken) { try { if (!command.Valid()) { return(_handlerResponse.Response(command.IsValid, command.Notifications)); } var broadcasterEntities = await _broadcastersRepository.GetByIdAsync(command.Id); if (broadcasterEntities != null) { var broadcaster = await _broadcastersRepository.GetByNameAsync(command.BrodcastersName); if (broadcaster != null) { broadcasterEntities.NameUnavailable(); } if (broadcasterEntities.IsValid) { broadcasterEntities.Update(command.BrodcastersName); if (broadcasterEntities.IsValid) { await _broadcastersRepository.UpdateAsync(broadcasterEntities); } } AddNotifications(broadcasterEntities); } else { var broadcasters = new Broadcasters(); broadcasters.NotBrodcastersForUpdate(); AddNotifications(broadcasters); } } catch (Exception ex) { AddNotification("500", ex.Message); } return(_handlerResponse.Response(IsValid, Notifications)); }
public async Task <NotificationResultDto> Handle(UpdateAudienceCommand command, CancellationToken cancellationToken) { try { if (!command.Valid()) { return(_handlerResponse.Response(command.IsValid, command.Notifications)); } var audienceEntites = await _audienceRepository.GetByIdAsync(command.Id); if (audienceEntites != null) { var audience = await _audienceRepository.GetAudienceByBroadcasterAndDateTimeAsync(command.AudienceBroadcaster, command.AudienceDateTime); if (audience != null) { audienceEntites.AudienceRegister(); } if (audienceEntites.IsValid) { audienceEntites.Update(command.AudienceBroadcaster, command.AudiencePoints, command.AudienceDateTime); if (audienceEntites.IsValid) { await _audienceRepository.UpdateAsync(audienceEntites); } } AddNotifications(audienceEntites); } else { var audience = new Audience(); audience.NotAudienceForUpdate(); AddNotifications(audience); } } catch (Exception ex) { AddNotification("500", ex.Message); } return(_handlerResponse.Response(IsValid, Notifications)); }