| 123456789101112131415161718192021222324252627282930313233 |
- using Application.Abstractions.Data;
- using Application.Abstractions.Messaging;
- using Microsoft.EntityFrameworkCore;
- namespace Application.Features.Admin.Store.Game.GetAll;
- public sealed class Handler(IAppDbContext db) : IQueryHandler<Query, Response>
- {
- public async Task<Response> Handle(Query request, CancellationToken ct)
- {
- var query = db.Game.AsNoTracking().AsQueryable();
- if (request.ActiveOnly)
- {
- query = query.Where(c => c.IsActive);
- }
- var list = await query
- .OrderBy(c => c.Order)
- .ThenBy(c => c.KorName)
- .Select(c => new Response.Item(
- c.ID,
- c.Code,
- c.KorName,
- c.EngName,
- c.Publisher,
- c.CommissionRate
- ))
- .ToListAsync(ct);
- return new Response(list);
- }
- }
|