public async Task <PagingCollection <EthereumTransaction> > GetAsync(EtheriumTransactionsQuery query) { var querable = from transaction in _readContext.EthereumTransactions where query.UserIds.Count == 0 || query.UserIds.Contains(transaction.User.Id) where query.EntityIds.Count == 0 || query.EntityIds.Contains(transaction.EntityId) where query.EntityTypes.Count == 0 || query.EntityTypes.Contains(transaction.EntityType) where query.TransactionTypes.Count == 0 || query.TransactionTypes.Contains(transaction.TransactionType) where query.Statuses.Count == 0 || query.Statuses.Contains(transaction.Status) select transaction; return(await querable.GetPageAsync(query.Offset, query.Count)); }
public async Task <PartialCollectionResponse <EthereumTransactionResponse> > GetAsync([FromQuery] EtheriumTransactionsQueryRequest request) { var query = new EtheriumTransactionsQuery(request.Offset, request.Count, request.UserIds ?? new long[0], request.EntityIds ?? new long[0], request.EntityTypes ?? new EthereumTransactionEntityType[0], request.TransactionTypes ?? new EthereumTransactionType[0], request.Statuses ?? new EthereumTransactionStatus[0]); var transactions = await _ethereumTransactionService.GetAsync(query); return(transactions.ToPartialCollectionResponse(EthereumTransactionResponse.Create)); }
public Task <PagingCollection <EthereumTransaction> > GetAsync(EtheriumTransactionsQuery query) => _repository.GetAsync(query);