private async Task <List <UserData> > GetUsersThroughBrokerAsync(List <Guid> usersIds, List <string> errors) { if (usersIds is null || !usersIds.Any()) { return(null); } try { Response <IOperationResult <IGetUsersDataResponse> > response = await _rcGetUsers.GetResponse <IOperationResult <IGetUsersDataResponse> >( IGetUsersDataRequest.CreateObj(usersIds)); if (response.Message.IsSuccess && response.Message.Body.UsersData.Any()) { return(response.Message.Body.UsersData); } _logger.LogWarning( "Error while getting users data with users ids: {UsersIds}.\nErrors: {Errors}", string.Join(", ", usersIds), string.Join('\n', response.Message.Errors)); } catch (Exception exc) { _logger.LogError( exc, "Cannot get users data with users ids: {UsersIds}.", string.Join(", ", usersIds)); } errors.Add("Cannot get users data. Please try again later."); return(null); }
private async Task <List <UserData> > GetUsersAsync(List <Guid> usersIds, List <string> errors) { if (usersIds == null || !usersIds.Any()) { return(null); } try { var usersDataResponse = await _usersDataRequestClient.GetResponse <IOperationResult <IGetUsersDataResponse> >( IGetUsersDataRequest.CreateObj(usersIds)); if (usersDataResponse.Message.IsSuccess) { return(usersDataResponse.Message.Body.UsersData); } _logger.LogWarning( $"Can not get users. Reason:{Environment.NewLine}{string.Join('\n', usersDataResponse.Message.Errors)}."); } catch (Exception exc) { _logger.LogError(exc, "Exception on get users information."); } errors.Add("Can not get users info. Please try again later."); return(null); }
private async Task <List <UserData> > GetUsersDataAsync(List <Guid> usersIds, List <string> errors) { if (usersIds == null || !usersIds.Any()) { return(null); } try { Response <IOperationResult <IGetUsersDataResponse> > response = await _rcGetUsers.GetResponse <IOperationResult <IGetUsersDataResponse> >( IGetUsersDataRequest.CreateObj(usersIds.Distinct().ToList())); if (response.Message.IsSuccess) { return(response.Message.Body.UsersData); } _logger.LogWarning( "Error while geting users data by ids: {UsersIds}. Reason:{Errors}", string.Join(", ", usersIds), string.Join('\n', response.Message.Errors)); } catch (Exception exc) { _logger.LogError( "Can not get users data by ids: {UsersIds}. {ErrorsMessage}", string.Join(", ", usersIds), exc.Message); } errors.Add("Can not get users data. Please try again later."); return(null); }