29 lines
No EOL
845 B
C#
29 lines
No EOL
845 B
C#
#nullable disable
|
|
using LinqToDB.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using EllieBot.Db.Models;
|
|
|
|
namespace EllieBot.Db;
|
|
|
|
public static class CurrencyTransactionExtensions
|
|
{
|
|
public static async Task<IReadOnlyCollection<CurrencyTransaction>> GetPageFor(
|
|
this DbSet<CurrencyTransaction> set,
|
|
ulong userId,
|
|
int page)
|
|
{
|
|
var items = await set.ToLinqToDBTable()
|
|
.Where(x => x.UserId == userId)
|
|
.OrderByDescending(x => x.DateAdded)
|
|
.Skip(15 * page)
|
|
.Take(15)
|
|
.ToListAsyncLinqToDB();
|
|
|
|
return items;
|
|
}
|
|
|
|
public static async Task<int> GetCountFor(this DbSet<CurrencyTransaction> set, ulong userId)
|
|
=> await set.ToLinqToDBTable()
|
|
.Where(x => x.UserId == userId)
|
|
.CountAsyncLinqToDB();
|
|
} |