/
Frozin
/
DIS-3
Обзор
Документация
Войти
/
Frozin
/
DIS-3
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
API_PIR/Services/UserService.cs
66 строк
2 KB
Dobryk
Добавлена пагинация
20 окт 2025, 03:11
20 окт 2025, 03:11
ea456f4
Код
Авторство
О чём код?
using API_PIR.Interfaces; using API_PIR.Models; namespace API_PIR.Services; public class UserService : IUserService { private readonly List<UserModel> _users = []; public Task<IEnumerable<UserModel>> GetAllUsersAsync() { return Task.FromResult(_users.AsEnumerable()); } public Task<PaginatedList<UserModel>> GetUsersPaginatedAsync(int pageNumber, int pageSize) { var totalCount = _users.Count; var items = _users .Skip((pageNumber - 1) * pageSize) .Take(pageSize) .ToList(); var result = new PaginatedList<UserModel> { Items = items, PageNumber = pageNumber, PageSize = pageSize, TotalCount = totalCount }; return Task.FromResult(result); } public Task<UserModel?> GetUserByIdAsync(Guid id) { var user = _users.FirstOrDefault(u => u.Id == id); return Task.FromResult(user); } public Task<UserModel> CreateUserAsync(UserModel user) { user.Id = Guid.NewGuid(); _users.Add(user); return Task.FromResult(user); } public Task<UserModel?> UpdateUserAsync(Guid id, UserModel user) { var existingUser = _users.FirstOrDefault(u => u.Id == id); if (existingUser != null) { existingUser.Username = user.Username; existingUser.Role = user.Role; } return Task.FromResult(existingUser); } public Task<bool> DeleteUserAsync(Guid id) { var user = _users.FirstOrDefault(u => u.Id == id); if (user == null) return Task.FromResult(false); _users.Remove(user); return Task.FromResult(true); } }