重构试卷相关内容

This commit is contained in:
SpecialX
2025-06-13 19:01:32 +08:00
parent b77ed0b30f
commit bcf351ff25
23 changed files with 980 additions and 84 deletions

View File

@@ -58,10 +58,33 @@ namespace TechHelper.Context
CreateMap<Assignment, ExamDto>()
.ForMember(dest => dest.AssignmentTitle, opt => opt.MapFrom(src => src.Title))
.ForMember(dest => dest.Description, opt => opt.MapFrom(src => src.Description))
.ForMember(dest => dest.AssignmentId, opt => opt.MapFrom(src=> src.Id))
.ForMember(dest => dest.AssignmentId, opt => opt.MapFrom(src => src.Id))
.ForMember(dest => dest.QuestionGroups, opt => opt.MapFrom(src =>
src.AssignmentGroups.FirstOrDefault(ag => ag.ParentGroup == null)))
.ForMember(dest => dest.SubjectArea, opt => opt.MapFrom(src => src.SubjectArea.ToString()));
CreateMap<AssignmentGroup, QuestionGroupDto>()
.ForMember(dest => dest.SubQuestionGroups, opt => opt.MapFrom(src => src.ChildAssignmentGroups))
.ForMember(dest => dest.SubQuestions, opt => opt.MapFrom(src => src.AssignmentQuestions));
CreateMap<AssignmentQuestion, SubQuestionDto>()
.ForMember(dest => dest.Stem, opt => opt.MapFrom(src => src.Question.QuestionText))
.ForMember(dest => dest.SampleAnswer, opt => opt.MapFrom(src => src.Question.CorrectAnswer))
.ForMember(dest => dest.QuestionType, opt => opt.MapFrom(src => src.Question.QuestionType.ToString()))
.ForMember(dest => dest.DifficultyLevel, opt => opt.MapFrom(src => src.Question.DifficultyLevel.ToString()));
CreateMap<QuestionGroupDto, AssignmentGroup>()
.ForMember(dest => dest.ChildAssignmentGroups, opt => opt.MapFrom(src => src.SubQuestionGroups))
.ForMember(dest => dest.AssignmentQuestions, opt => opt.MapFrom(src => src.SubQuestions));
CreateMap<SubQuestionDto, AssignmentQuestion>()
.ForMember(dest => dest.Question, opt => opt.MapFrom(src => src)); // 映射到嵌套的 Question 对象
CreateMap<Assignment, ExamDto>();
}
}
}