Files
serega404 136bcce7db
Backend CI / build-and-test (push) Successful in 57s
Frontend CI / build-and-check (push) Failing after 26s
🚀 Create and publish a Docker image / Detect changes in backend and frontend (push) Successful in 11s
🚀 Create and publish a Docker image / Build & publish backend image (push) Successful in 2m33s
🚀 Create and publish a Docker image / Build & publish frontend image (push) Successful in 33s
🚀 Create and publish a Docker image / Update stack on Portainer (push) Successful in 8s
feat: добавил поддержку подписки на календарь и экспорт расписания лекций в формате .ics
2026-06-02 22:10:15 +03:00

23 lines
992 B
C#

using UniVerse.Application.DTOs.Common;
using UniVerse.Application.DTOs.Lectures;
using UniVerse.Application.DTOs.Users;
using UniVerse.Domain.Enums;
namespace UniVerse.Application.Interfaces;
public interface IUserService
{
Task<UserDto> GetByIdAsync(int id);
Task<UserDto> UpdateProfileAsync(int id, UpdateUserRequest request);
Task<UserStatsDto> GetStatsAsync(int id);
Task<AdminDashboardStatsDto> GetAdminDashboardStatsAsync();
Task<PagedResult<LectureDto>> GetEnrollmentsAsync(int id, PaginationRequest pagination);
Task<string> GetMyEnrollmentsIcsAsync(int userId);
Task<string> GetEnrollmentIcsAsync(int userId, int lectureId);
Task<string> GetCalendarSubscriptionTokenAsync(int userId);
Task<string> GetEnrollmentsIcsBySubscriptionTokenAsync(string token);
Task<PagedResult<UserDto>> GetAllAsync(UserFilterRequest filter);
Task SetRolesAsync(int id, IReadOnlyCollection<UserRole> roles);
Task SetActiveAsync(int id, bool isActive);
}