重构项目结构,移除Assignment相关功能,优化Submission模块
Some checks failed
TechAct / explore-gitea-actions (push) Failing after 12s

This commit is contained in:
SpecialX
2025-10-09 18:57:28 +08:00
parent 403b34a098
commit ac900159ba
289 changed files with 11948 additions and 20150 deletions

View File

@@ -1,11 +1,7 @@
using AutoMapper;
using AutoMapper.Internal.Mappers;
using Entities.Contracts;
using Entities.DTO;
using Newtonsoft.Json;
using System.Net.Http.Json;
using System.Text.Json;
using System.Text.Json.Serialization;
using Entities.DTO.Class;
namespace TechHelper.Context
{
@@ -28,53 +24,91 @@ namespace TechHelper.Context
{
CreateMap<UserForRegistrationDto, User>()
.ForMember(dest => dest.Id, opt => opt.Ignore())
.ForMember(dest => dest.UserName, opt => opt.MapFrom(src => src.Name))
.ForMember(dest => dest.UserName, opt => opt.MapFrom(src => src.DisplayName))
.ForMember(dest => dest.Email, opt => opt.MapFrom(src => src.Email))
.ForMember(dest => dest.PhoneNumber, opt => opt.MapFrom(src => src.PhoneNumber))
.ForMember(dest => dest.Address, opt => opt.MapFrom(src => src.HomeAddress))
.ForMember(dest => dest.HomeAddress, opt => opt.MapFrom(src => src.HomeAddress))
.ForMember(dest => dest.PasswordHash, opt => opt.Ignore())
.ForMember(dest => dest.EmailConfirmed, opt => opt.Ignore());
CreateMap<ClassDto, Class>()
.ForMember(d => d.Number, o => o.MapFrom(src => src.Class))
.ReverseMap();
// Subject
CreateMap<Subject, SubjectDto>().ReverseMap();
CreateMap<Subject, SubjectResponseDto>().ReverseMap();
CreateMap<Subject, TypeCommonDto>().ReverseMap();
// ExamType
CreateMap<ExamType, ExamTypeDto>().ReverseMap();
CreateMap<ExamType, TypeCommonDto>().ReverseMap();
// QuestionType
CreateMap<QuestionType, QuestionTypeDto >().ReverseMap();
CreateMap<QuestionType, TypeCommonDto>().ReverseMap();
// Exam
CreateMap<ExamDto, Exam>().ReverseMap();
CreateMap<Exam, ExamListDto>().ReverseMap();
// Assignment
CreateMap<AssignmentDto, Assignment>().ReverseMap();
CreateMap<AssignmentQuestionDto, AssignmentQuestion>().ReverseMap();
CreateMap<ExamQuestionDto, ExamQuestion>().ReverseMap();
CreateMap<QuestionDto, Question>().ReverseMap();
CreateMap<QuestionContext, QuestionContextDto>().ReverseMap();
// Submission
CreateMap<SubmissionDto, Submission>().ReverseMap();
CreateMap<SubmissionDetailDto, SubmissionDetail>().ReverseMap();
CreateMap<SubmissionTeacherUpdateDto, Submission>().ReverseMap();
// Student Submission Detail
CreateMap<Submission, StudentSubmissionDetailDto>()
.ForMember(dest => dest.AssignmentId, opt => opt.MapFrom(src => src.AssignmentId))
.ForMember(dest => dest.AssignmentId, opt => opt.MapFrom(src => src.ExamId))
.ForMember(dest => dest.StudentId, opt => opt.MapFrom(src => src.StudentId))
.ForMember(dest => dest.SubmissionTime, opt => opt.MapFrom(src => src.SubmissionTime))
.ForMember(dest => dest.OverallGrade, opt => opt.MapFrom(src => src.OverallGrade))
.ForMember(dest => dest.OverallFeedback, opt => opt.MapFrom(src => src.OverallFeedback))
.ForMember(dest => dest.Status, opt => opt.MapFrom(src => src.Status));
CreateMap<Assignment, AssignmentDto>().ReverseMap();
CreateMap<Submission, SubmissionListDto>().ReverseMap();
CreateMap<SubmissionDetail, SubmissionDetailTeacherUpdateDto>().ReverseMap();
CreateMap<SubjectTypeMetadataDto, Global>()
.ForMember(dest => dest.Info, opt => opt.MapFrom(src => JsonConvert.SerializeObject(src.Data)));
CreateMap<Global, SubjectTypeMetadataDto>()
.ForMember(dest => dest.Data, opt => opt.MapFrom(src => JsonConvert.DeserializeObject<Dictionary<string, (string Color, string DisplayName)>>(src.Info)));
// School
CreateMap<SchoolDto, School>().ReverseMap();
CreateMap<SchoolResponseDto, School>().ReverseMap();
// Grade
CreateMap<GradeDto, Grade>().ReverseMap();
CreateMap<CreateGradeDto, Grade>().ReverseMap();
// Class
CreateMap<ClassDto, Class>().ReverseMap();
CreateMap<ClassCreateDto, Class>().ReverseMap();
// User
CreateMap<User, UserDto>().ReverseMap();
CreateMap<User, UserListDto>().ReverseMap();
// KeyPoint
CreateMap<KeyPoint, KeyPointDto>().ReverseMap();
CreateMap<KeyPoint, CreateKeyPointDto>().ReverseMap();
CreateMap<KeyPoint, UpdateKeyPointDto>().ReverseMap();
CreateMap<KeyPoint, KeyPointResponseDto>().ReverseMap();
// Lesson
CreateMap<Lesson, LessonDto>().ReverseMap();
CreateMap<Lesson, CreateLessonDto>().ReverseMap();
CreateMap<Lesson, UpdateLessonDto>().ReverseMap();
CreateMap<Lesson, LessonResponseDto>().ReverseMap();
// Textbook
CreateMap<Textbook, TextbookDto>().ReverseMap();
CreateMap<Textbook, CreateTextbookDto>().ReverseMap();
CreateMap<Textbook, UpdateTextbookDto>().ReverseMap();
CreateMap<Textbook, TextbookResponseDto>()
.ForMember(dest => dest.LessonCount, opt => opt.MapFrom(src => src.Lessons.Count))
.ForMember(dest => dest.LessonTitles, opt => opt.MapFrom(src => src.Lessons.Select(l => l.Title).ToList()));
}
}