namespace QYZH.InteractiveMagazine.Models.Dto.UserAnswerTaskService; /// /// 目录树形结构输出(包含一级目录列表) /// public class CatalogTreeOutput { /// /// 一级目录列表 /// public List FirstLevelCatalogs { get; set; } = []; } /// /// 一级目录项输出 /// public class FirstLevelCatalogItem { /// /// 一级目录ID /// public long CatalogId { get; set; } /// /// 一级目录名称 /// public string CatalogName { get; set; } /// /// 文章篇数(来自二级目录对应的所有有题目的页面数总和) /// public int ArticleCount { get; set; } /// /// 任务数量(来自二级目录对应的所有任务按GroupId去重后的总和) /// public int TaskCount { get; set; } /// /// 二级目录列表 /// public List Children { get; set; } = []; } /// /// 二级目录项输出(含页码范围、任务数量、状态、总成长值、总积分及任务列表) /// public class SecondLevelCatalogItem { /// /// 二级目录ID /// public long CatalogId { get; set; } /// /// 二级目录名称 /// public string CatalogName { get; set; } /// /// 起始页码 /// public int StartPage { get; set; } /// /// 结束页码 /// public int EndPage { get; set; } /// /// 任务数量(按GroupId去重后的数量) /// public int TaskCount { get; set; } /// /// 状态(格式如:1/2 进行中、0/2 未开始、2/2 已完成) /// public string Status { get; set; } /// /// 总成长值(该二级目录下所有任务的成长值总和,按GroupId去重) /// public int TotalGrowthPoints { get; set; } /// /// 总积分(该二级目录下所有任务的积分总和,按GroupId去重) /// public int TotalPoints { get; set; } /// /// 任务列表(每个任务的详细信息) /// public List Tasks { get; set; } = []; } /// /// 目录任务项输出(任务详情) /// public class CatalogTaskItem { /// /// 任务分组ID(GroupId) /// public long GroupId { get; set; } /// /// 任务名称(取主任务的Task字段) /// public string TaskName { get; set; } /// /// 任务状态(未开始、进行中、已完成) /// public string Status { get; set; } /// /// 成长值(取主任务的GrowthPoint) /// public int GrowthPoints { get; set; } /// /// 积分值(取主任务的Points) /// public int Points { get; set; } /// /// 答题时长(分钟,该GroupId下所有任务的AnswerSeconds累加后转换为分钟) /// public double AnswerMinutes { get; set; } }