Implement comprehensive academic workflow updates
This commit is contained in:
1 parent
4f031d4b60
commit
868367855d
11 files changed
+8366
-8
No files matched your search
@@ -1,4 +1,5 @@
|
||||
using Jiaowu.Api.Domain.Common;
|
||||
using Jiaowu.Api.Domain.Identity;
|
||||
|
||||
namespace Jiaowu.Api.Domain.Academic;
|
||||
|
||||
@@ -32,6 +33,35 @@ public sealed class WarningRecord : EntityBase
|
||||
public DateTime? AcknowledgedAt { get; set; }
|
||||
public string? AcknowledgeComment { get; set; }
|
||||
public Guid AcademicTermId { get; set; }
|
||||
public AcademicRiskCase? RiskCase { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>Confidential follow-up work created for an academic warning.</summary>
|
||||
public sealed class AcademicRiskCase : EntityBase
|
||||
{
|
||||
public Guid WarningRecordId { get; set; }
|
||||
public WarningRecord? WarningRecord { get; set; }
|
||||
public Guid StudentId { get; set; }
|
||||
public Student? Student { get; set; }
|
||||
public Guid AssignedCounselorUserId { get; set; }
|
||||
public ApplicationUser? AssignedCounselorUser { get; set; }
|
||||
public AcademicRiskCaseStatus Status { get; set; } = AcademicRiskCaseStatus.PendingFollowUp;
|
||||
public DateOnly FollowUpDueDate { get; set; }
|
||||
public DateOnly? ReviewDate { get; set; }
|
||||
public DateTime? TaskCompletedAt { get; set; }
|
||||
public List<AcademicRiskCaseEntry> Entries { get; set; } = [];
|
||||
}
|
||||
|
||||
/// <summary>Confidential counseling or support entry. Never exposed to students or unassigned staff.</summary>
|
||||
public sealed class AcademicRiskCaseEntry : EntityBase
|
||||
{
|
||||
public Guid AcademicRiskCaseId { get; set; }
|
||||
public AcademicRiskCase? AcademicRiskCase { get; set; }
|
||||
public AcademicRiskEntryType Type { get; set; }
|
||||
public required string Content { get; set; }
|
||||
public DateTime OccurredAt { get; set; }
|
||||
public Guid RecordedByUserId { get; set; }
|
||||
public ApplicationUser? RecordedByUser { get; set; }
|
||||
}
|
||||
|
||||
public enum WarningType
|
||||
@@ -49,3 +79,6 @@ public enum WarningStatus
|
||||
Resolved = 3,
|
||||
Dismissed = 4
|
||||
}
|
||||
|
||||
public enum AcademicRiskCaseStatus { PendingFollowUp = 1, InProgress = 2, PendingReview = 3, Closed = 4 }
|
||||
public enum AcademicRiskEntryType { Counseling = 1, SupportMeasure = 2, Review = 3 }
|
||||
Reference in new issue
Block a user