18 lines
784 B
C#
18 lines
784 B
C#
using UniVerse.Application.DTOs.Common;
|
|
using UniVerse.Application.DTOs.Lectures;
|
|
|
|
namespace UniVerse.Application.Interfaces;
|
|
|
|
public interface ILectureService
|
|
{
|
|
Task<PagedResult<LectureDto>> GetAllAsync(LectureFilterRequest filter, int? currentUserId = null);
|
|
Task<LectureDetailDto> GetByIdAsync(int id, int? currentUserId = null);
|
|
Task<LectureDto> CreateAsync(CreateLectureRequest request);
|
|
Task<LectureDto> UpdateAsync(int id, UpdateLectureRequest request);
|
|
Task DeleteAsync(int id);
|
|
Task EnrollAsync(int lectureId, int userId);
|
|
Task UnenrollAsync(int lectureId, int userId);
|
|
Task MarkAttendanceAsync(int lectureId, int userId, bool attended);
|
|
Task<PagedResult<EnrollmentDto>> GetEnrollmentsAsync(int lectureId, PaginationRequest pagination);
|
|
}
|