fix: лекции когда возвращались не говорили записан ли студент уже или нет

This commit is contained in:
2026-05-13 20:01:43 +03:00
parent 65e3d1bf18
commit d29b52f824
10 changed files with 79 additions and 13 deletions
@@ -24,7 +24,7 @@ public class LectureService : ILectureService
.Include(l => l.Course).Include(l => l.Teacher)
.Include(l => l.Location).Include(l => l.Enrollments);
public async Task<PagedResult<LectureDto>> GetAllAsync(LectureFilterRequest filter)
public async Task<PagedResult<LectureDto>> GetAllAsync(LectureFilterRequest filter, int? currentUserId = null)
{
var query = BaseQuery();
if (filter.CourseId.HasValue) query = query.Where(l => l.CourseId == filter.CourseId);
@@ -43,7 +43,11 @@ public class LectureService : ILectureService
var total = await query.CountAsync();
var items = await query.OrderBy(l => l.StartsAt)
.Skip((filter.Page - 1) * filter.PageSize).Take(filter.PageSize).ToListAsync();
return PagedResult<LectureDto>.Create(items.Select(l => l.ToDto()).ToList(), total, filter.Page, filter.PageSize);
return PagedResult<LectureDto>.Create(
items.Select(l => l.ToDto(currentUserId.HasValue && l.Enrollments.Any(e => e.UserId == currentUserId.Value))).ToList(),
total,
filter.Page,
filter.PageSize);
}
public async Task<LectureDetailDto> GetByIdAsync(int id, int? currentUserId = null)