已完成“成绩管理与学业档案”模块:
教师批量录入平时、期中、期末成绩。 自动计算总评、绩点和及格状态。 支持缺考、缓考、免修。 教师提交 → 学院审核/退回 → 校级发布。 学生只能查看正式发布成绩。 自动统计平均分、完成度、及格率和加权 GPA。 SQLite 本地增量升级和 MySQL 正式迁移均已完成。 分级权限在前后端同时校验。
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
using Jiaowu.Api.Domain.Common;
|
||||
|
||||
namespace Jiaowu.Api.Domain.Academic;
|
||||
|
||||
public sealed class GradeSheet : EntityBase
|
||||
{
|
||||
public Guid TeachingTaskId { get; set; }
|
||||
public TeachingTask? TeachingTask { get; set; }
|
||||
public decimal RegularWeight { get; set; } = 30;
|
||||
public decimal MidtermWeight { get; set; }
|
||||
public decimal FinalWeight { get; set; } = 70;
|
||||
public GradeSheetStatus Status { get; set; } = GradeSheetStatus.Draft;
|
||||
public string? ReviewComment { get; set; }
|
||||
public DateTime? SubmittedAt { get; set; }
|
||||
public DateTime? ReviewedAt { get; set; }
|
||||
public DateTime? PublishedAt { get; set; }
|
||||
public ICollection<GradeRecord> Records { get; set; } = [];
|
||||
}
|
||||
|
||||
public sealed class GradeRecord : EntityBase
|
||||
{
|
||||
public Guid GradeSheetId { get; set; }
|
||||
public GradeSheet? GradeSheet { get; set; }
|
||||
public Guid StudentId { get; set; }
|
||||
public Student? Student { get; set; }
|
||||
public decimal? RegularScore { get; set; }
|
||||
public decimal? MidtermScore { get; set; }
|
||||
public decimal? FinalScore { get; set; }
|
||||
public decimal? TotalScore { get; set; }
|
||||
public decimal? GradePoint { get; set; }
|
||||
public GradeExamStatus ExamStatus { get; set; } = GradeExamStatus.Normal;
|
||||
public string? Notes { get; set; }
|
||||
}
|
||||
|
||||
public enum GradeSheetStatus
|
||||
{
|
||||
Draft = 1,
|
||||
Submitted = 2,
|
||||
Approved = 3,
|
||||
Published = 4,
|
||||
Returned = 5
|
||||
}
|
||||
|
||||
public enum GradeExamStatus
|
||||
{
|
||||
Normal = 1,
|
||||
Absent = 2,
|
||||
Deferred = 3,
|
||||
Exempt = 4
|
||||
}
|
||||
Reference in New Issue
Block a user