private void AppendVoucherIdCondition(GetVouchersQuery request, Query query) { if (request.VoucherId.HasValue) { query.Where(accountDBContext.VoucherEntries.GetColumnName(nameof(VoucherEntry.Id)), request.VoucherId); } }
private void AppendDateRangeCondition(GetVouchersQuery request, Query query) { if (request.Range != null) { query.WhereBetween(accountDBContext.VoucherEntries.GetColumnName(nameof(VoucherEntry.Date)), request.Range.From, request.Range.To); } }
private void AppendWhereConditions(GetVouchersQuery request, Query query) { AppendVoucherIdCondition(request, query); AppendVoucherTypeCondition(request, query); AppendDateRangeCondition(request, query); }
public override async Task<IEnumerable<VoucherEntry>> PerformQueryAsync(GetVouchersQuery request, CancellationToken cancellationToken) { var query = accountDBContext.VoucherEntries.Query; AppendWhereConditions(request, query); return await accountDBContext.VoucherEntries.QueryAsync(request.TenantId, query, cancellationToken); }