using Entities.Contracts;
namespace TechHelper.Server.Repositories
{
public interface IExamRepository
{
///
/// 根据ID异步获取一个完整的试卷实体,包括所有子题组和题目。
///
/// 试卷ID
/// 完整的 Assignment 实体,如果找不到则返回 null。
Task GetFullExamByIdAsync(Guid assignmentId);
///
/// 获取指定用户创建的所有试卷的预览信息。
///
/// 用户ID
/// Assignment 实体集合。
Task> GetExamPreviewsByUserAsync(Guid userId);
///
/// 向数据库添加一个新的试卷。
///
/// 要添加的试卷实体。
Task AddAsync(Assignment assignment);
Task AddAsync(AssignmentQuestion assignment);
Task AddAsync(Question assignment);
Task AddAsync(AssignmentClass assignment);
}
}