using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace Mirea.Api.Dto.Responses.Schedule;
///
/// Represents information about a specific schedule entry for a professor.
///
public class DisciplineScheduleInfo
{
///
/// Gets or sets the day of the week for the schedule entry.
///
[Required]
public DayOfWeek DayOfWeek { get; set; }
///
/// Gets or sets the pair number for the schedule entry.
///
[Required]
public int PairNumber { get; set; }
///
/// Gets or sets a value indicating whether the pair is on an even week.
///
[Required]
public bool IsEven { get; set; }
///
/// Gets or sets the type of occupation for the schedule entry.
///
[Required]
public required string TypeOfOccupation { get; set; }
///
/// Gets or sets the names of the group for the schedule entry.
///
[Required]
public required string Group { get; set; }
///
/// Gets or sets the IDs of the group for the schedule entry.
///
[Required]
public required int GroupId { get; set; }
///
/// Gets or sets the names of the lecture halls for the schedule entry.
///
public required IEnumerable LectureHalls { get; set; }
///
/// Gets or sets the IDs of the lecture halls for the schedule entry.
///
public required IEnumerable LectureHallsId { get; set; }
///
/// Gets or sets the names of the professors for the schedule entry.
///
public required IEnumerable Professors { get; set; }
///
/// Gets or sets the IDs of the professors for the schedule entry.
///
public required IEnumerable ProfessorsId { get; set; }
///
/// Gets or sets the names of the campuses for the schedule entry.
///
public required IEnumerable Campus { get; set; }
///
/// Gets or sets the IDs of the campuses for the schedule entry.
///
public required IEnumerable CampusId { get; set; }
///
/// Gets or sets the links to online meetings for the schedule entry.
///
public required IEnumerable LinkToMeet { get; set; }
}
///
/// Represents a response containing schedule information for a professor.
///
public class DisciplineScheduleResponse
{
///
/// Gets or sets the name of the discipline.
///
[Required]
public required string Discipline { get; set; }
///
/// Gets or sets the ID of the discipline.
///
[Required]
public required int DisciplineId { get; set; }
///
/// Gets or sets the schedules for the professor.
///
[Required]
public required IEnumerable Schedules { get; set; }
}