feat(web): migrate course adjustment workflow
This commit is contained in:
1 parent
2ac0a82bb8
commit
c5b6954f9c
8 files changed
+209
-1
No files matched your search
@@ -170,6 +170,25 @@ public sealed class CourseAdjustmentsController(
|
||||
return Ok(new { Task = task, Sessions = sessions, Classrooms = classrooms, Periods = periods });
|
||||
}
|
||||
|
||||
[HttpGet("teacher-options")]
|
||||
[Authorize(Roles = Applicants)]
|
||||
public async Task<ActionResult> GetTeacherOptions(CancellationToken cancellationToken)
|
||||
{
|
||||
return Ok(await db.Teachers.AsNoTracking()
|
||||
.Where(x => x.Status == TeacherStatus.Active && !x.IsArchived)
|
||||
.OrderBy(x => x.College!.Name)
|
||||
.ThenBy(x => x.TeacherNumber)
|
||||
.Select(x => new
|
||||
{
|
||||
x.Id,
|
||||
x.TeacherNumber,
|
||||
x.Name,
|
||||
x.Title,
|
||||
CollegeName = x.College!.Name
|
||||
})
|
||||
.ToListAsync(cancellationToken));
|
||||
}
|
||||
|
||||
// ═══════════════ My adjustments ═══════════════
|
||||
|
||||
[HttpGet("mine")]
|
||||
@@ -611,7 +630,8 @@ public sealed class CourseAdjustmentsController(
|
||||
return ValidationProblem("请选择代课教师。");
|
||||
if (!await db.Teachers.AnyAsync(x =>
|
||||
x.Id == request.SubstituteTeacherId &&
|
||||
x.Status == TeacherStatus.Active, cancellationToken))
|
||||
x.Status == TeacherStatus.Active &&
|
||||
!x.IsArchived, cancellationToken))
|
||||
return ValidationProblem("代课教师不存在或已离职。");
|
||||
break;
|
||||
case CourseAdjustmentType.Cancel:
|
||||
|
||||
Reference in new issue
Block a user