public Task <TransactionCollectionResult> GetTransactionsAsync(string?accountId, TransactionArgs?args, PagingArgs?paging) { return(DataInvoker.Current.InvokeAsync(this, async() => { TransactionCollectionResult __result = new TransactionCollectionResult(paging); var __dataArgs = CosmosMapper.Default.CreateArgs("Transaction", __result.Paging !, new PartitionKey(accountId), onCreate: _onDataArgsCreate); __result.Result = _cosmos.Container(__dataArgs).Query(q => _getTransactionsOnQuery?.Invoke(q, accountId, args, __dataArgs) ?? q).SelectQuery <TransactionCollection>(); return await Task.FromResult(__result).ConfigureAwait(false); }));
public IEnumerable <PrincipalReportDto> GetMeetingHostReport(IAdobeConnectProxy provider) { if (provider == null) { throw new ArgumentNullException(nameof(provider)); } var group = provider.GetGroupsByType(PrincipalType.live_admins); if (group.Status.Code != StatusCodes.ok) { throw new InvalidOperationException("AC.GetGroupsByType error"); } PrincipalCollectionResult usersResult = provider.GetGroupUsers(group.Values.First().PrincipalId); if (usersResult.Status.Code != StatusCodes.ok) { throw new InvalidOperationException("AC.GetGroupUsers error"); } var result = new List <PrincipalReportDto>(); foreach (Principal user in usersResult.Values) { var item = new PrincipalReportDto { Principal = PrincipalDto.Build(user), }; TransactionCollectionResult trxResult = provider.ReportMeetingTransactionsForPrincipal(user.PrincipalId, startIndex: 0, limit: 1); if (trxResult.Status.Code != StatusCodes.ok) { throw new InvalidOperationException("AC.ReportMeetingTransactionsForPrincipal error"); } TransactionInfo trx = trxResult.Values.FirstOrDefault(); if (trx != null) { item.LastTransaction = TransactionInfoDto.Build(trx); } result.Add(item); } return(result.AsReadOnly()); }
public Task <TransactionCollectionResult> GetTransactionsAsync(string?accountId, TransactionArgs?args, PagingArgs?paging) { return(DataInvoker.Default.InvokeAsync(this, async() => { TransactionCollectionResult __result = new TransactionCollectionResult(paging); var __dataArgs = CosmosMapper.Default.CreateArgs("Transaction", __result.Paging !, new PartitionKey(accountId)); _onDataArgsCreate?.Invoke(__dataArgs); if (_getTransactionsOnBeforeAsync != null) { await _getTransactionsOnBeforeAsync(accountId, args, __dataArgs).ConfigureAwait(false); } __result.Result = CosmosDb.Default.Container(__dataArgs).Query(q => _getTransactionsOnQuery == null ? q : _getTransactionsOnQuery(q, accountId, args, __dataArgs)).SelectQuery <TransactionCollection>(); if (_getTransactionsOnAfterAsync != null) { await _getTransactionsOnAfterAsync(__result, accountId, args).ConfigureAwait(false); } return __result; }, new BusinessInvokerArgs {