培养方案:专业/年级版本、课程模块、学分校验、复制版本、发布锁定、旧版本归档。
教学任务:学期开课、授课教师、唯一主讲、合班、容量与周次校验、发布及结课。 SQLite 开发库已自动升级,无需删除原数据库。 新增对应 MySQL EF Core 迁移。 Vue 已编译进 wwwroot,仍可只运行 ASP.NET Core 单服务。 桌面端及 390px 窄屏页面验证通过,无前端控制台错误。
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
using Jiaowu.Api.Domain.Common;
|
||||
|
||||
namespace Jiaowu.Api.Domain.Academic;
|
||||
|
||||
public sealed class CurriculumPlan : EntityBase
|
||||
{
|
||||
public Guid MajorId { get; set; }
|
||||
public Major? Major { get; set; }
|
||||
public required string Name { get; set; }
|
||||
public required string Version { get; set; }
|
||||
public int EffectiveGrade { get; set; }
|
||||
public decimal TotalCredits { get; set; }
|
||||
public CurriculumPlanStatus Status { get; set; } = CurriculumPlanStatus.Draft;
|
||||
public string? Description { get; set; }
|
||||
public DateTime? PublishedAt { get; set; }
|
||||
public ICollection<CurriculumModule> Modules { get; set; } = [];
|
||||
}
|
||||
|
||||
public sealed class CurriculumModule : EntityBase
|
||||
{
|
||||
public Guid CurriculumPlanId { get; set; }
|
||||
public CurriculumPlan? CurriculumPlan { get; set; }
|
||||
public required string Code { get; set; }
|
||||
public required string Name { get; set; }
|
||||
public decimal RequiredCredits { get; set; }
|
||||
public int SortOrder { get; set; }
|
||||
public ICollection<CurriculumCourse> Courses { get; set; } = [];
|
||||
}
|
||||
|
||||
public sealed class CurriculumCourse : EntityBase
|
||||
{
|
||||
public Guid CurriculumModuleId { get; set; }
|
||||
public CurriculumModule? CurriculumModule { get; set; }
|
||||
public Guid CourseId { get; set; }
|
||||
public Course? Course { get; set; }
|
||||
public int RecommendedSemester { get; set; }
|
||||
public CurriculumCourseType Type { get; set; }
|
||||
public string? Notes { get; set; }
|
||||
}
|
||||
|
||||
public enum CurriculumPlanStatus
|
||||
{
|
||||
Draft = 1,
|
||||
Published = 2,
|
||||
Archived = 3
|
||||
}
|
||||
|
||||
public enum CurriculumCourseType
|
||||
{
|
||||
Required = 1,
|
||||
Elective = 2
|
||||
}
|
||||
Reference in New Issue
Block a user