using AGSS.DbSet; using AGSS.Models.Entities; using Microsoft.EntityFrameworkCore; namespace AGSS.Services; public class PlayerService { private readonly ApplicationDbContext _context; public PlayerService(ApplicationDbContext context) { _context = context; } public async Task CreatePlayerAsync(PlayerModel player) { var result= await _context.Players.AddAsync(new PlayerModel() { Name = player.Name, Asset = player.Asset, Description = player.Description, }); return true; } public async Task UpdatePlayerAsync(PlayerModel player) { var result = await _context.Players.FirstAsync(a => a.Uuid == player.Uuid); result.Name = player.Name; result.Asset = player.Asset; result.Description = player.Description; await _context.SaveChangesAsync(); return true; } public async Task DelectPlayerAsync(string PlayerId) { var result = await _context.Players.FirstAsync(a => a.Uuid == PlayerId); _context.Remove(result); return true; } public async Task> GetPlayersAsync(int pageNumber, int pageSize) { var totalItems = await _context.Players.CountAsync(); var skip = (pageNumber - 1) * pageSize; var players = await _context.Players.Skip(skip).Take(pageSize).ToListAsync(); return new PagedResult { TotalItems = totalItems, PageNumber = pageNumber, PageSize = pageSize, Items = players }; } }