自动排课
This commit is contained in:
@@ -91,6 +91,8 @@ public sealed class ScheduleSettingsController(AppDbContext db) : ControllerBase
|
||||
.OrderByDescending(item => item.IsPrimary)
|
||||
.Select(item => item.Teacher!.Name),
|
||||
x.Capacity,
|
||||
x.StartWeek,
|
||||
x.EndWeek,
|
||||
x.WeeklyHours,
|
||||
x.SchedulingMode
|
||||
})
|
||||
@@ -114,6 +116,8 @@ public sealed class ScheduleSettingsController(AppDbContext db) : ControllerBase
|
||||
task.CollegeName,
|
||||
task.TeacherNames,
|
||||
task.Capacity,
|
||||
task.StartWeek,
|
||||
task.EndWeek,
|
||||
task.WeeklyHours,
|
||||
task.SchedulingMode,
|
||||
HasCustomConstraint = constraint is not null,
|
||||
|
||||
@@ -233,10 +233,10 @@ public sealed class AutomaticScheduleGenerator(AppDbContext db)
|
||||
student.Status == StudentStatus.Active) ?? 0));
|
||||
return classrooms.Where(room =>
|
||||
room.Capacity >= minimumCapacity &&
|
||||
(!constraint?.RequiredCampusId.HasValue ?? true ||
|
||||
room.Building!.CampusId == constraint.RequiredCampusId) &&
|
||||
(!constraint?.RequiredBuildingId.HasValue ?? true ||
|
||||
room.BuildingId == constraint.RequiredBuildingId) &&
|
||||
(constraint?.RequiredCampusId is not Guid requiredCampusId ||
|
||||
room.Building!.CampusId == requiredCampusId) &&
|
||||
(constraint?.RequiredBuildingId is not Guid requiredBuildingId ||
|
||||
room.BuildingId == requiredBuildingId) &&
|
||||
(allowedRoomIds.Count == 0 || allowedRoomIds.Contains(room.Id)))
|
||||
.ToList();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user