重构项目结构,移除Assignment相关功能,优化Submission模块
Some checks failed
TechAct / explore-gitea-actions (push) Failing after 12s
Some checks failed
TechAct / explore-gitea-actions (push) Failing after 12s
This commit is contained in:
@@ -59,9 +59,9 @@ else if (_questionsForTable.Any() && _students.Any())
|
||||
@student.DisplayName: <MudText Typo="Typo.h5" Color="Color.Primary" Class="d-inline-block ml-2">@GetStudentTotalScore(student.Id)</MudText>
|
||||
</MudText>
|
||||
}
|
||||
<MudButton Variant="Variant.Filled" Color="Color.Success" Class="mt-4" @onclick="SubmitGrading">
|
||||
@* <MudButton Variant="Variant.Filled" Color="Color.Success" Class="mt-4" @onclick="SubmitGrading">
|
||||
提交批改结果 (模拟)
|
||||
</MudButton>
|
||||
</MudButton> *@
|
||||
</MudPaper>
|
||||
|
||||
}
|
||||
@@ -86,10 +86,10 @@ else
|
||||
private NavigationManager Navigation { get; set; }
|
||||
|
||||
private MudTable<QuestionRowData> _table = new();
|
||||
private AssignmentDto Assignment { get; set; } = new AssignmentDto();
|
||||
private ExamDto Assignment { get; set; } = new ExamDto();
|
||||
private AssignmentCheckData _examStruct = new AssignmentCheckData();
|
||||
|
||||
private List<StudentDto> _students = new List<StudentDto>();
|
||||
private List<UserListDto> _students = new List<UserListDto>();
|
||||
private List<QuestionRowData> _questionsForTable = new List<QuestionRowData>();
|
||||
|
||||
private bool _isLoading = true;
|
||||
@@ -99,14 +99,14 @@ else
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
_isLoading = true;
|
||||
await LoadExamData();
|
||||
// _isLoading = true;
|
||||
// await LoadExamData();
|
||||
|
||||
var result = await ClassServices.GetClassStudents();
|
||||
if (!result.Status) Snackbar.Add($"获取学生失败, {result.Message}", Severity.Error);
|
||||
_students = result.Result as List<StudentDto> ?? new List<StudentDto>();
|
||||
BuildTable();
|
||||
_isLoading = false;
|
||||
// var result = await ClassServices.GetClassStudents();
|
||||
// if (!result.Status) Snackbar.Add($"获取学生失败, {result.Message}", Severity.Error);
|
||||
// _students = result.Result as List<StudentDto> ?? new List<StudentDto>();
|
||||
// BuildTable();
|
||||
// _isLoading = false;
|
||||
}
|
||||
|
||||
private void BuildTable()
|
||||
@@ -135,7 +135,7 @@ else
|
||||
var result = await ExamService.GetExam(parsedExamId);
|
||||
if (result.Status)
|
||||
{
|
||||
Assignment = result.Result as AssignmentDto ?? new AssignmentDto();
|
||||
Assignment = result.Result as ExamDto ?? new ExamDto();
|
||||
_examStruct = Assignment.GetStruct();
|
||||
}
|
||||
else
|
||||
@@ -188,52 +188,52 @@ else
|
||||
StateHasChanged();
|
||||
}
|
||||
|
||||
private void SubmitGrading()
|
||||
{
|
||||
// private void SubmitGrading()
|
||||
// {
|
||||
|
||||
List<SubmissionDto> submissionDto = new List<SubmissionDto>();
|
||||
// List<SubmissionDto> submissionDto = new List<SubmissionDto>();
|
||||
|
||||
|
||||
foreach (var student in _students)
|
||||
{
|
||||
var newSubmission = new SubmissionDto();
|
||||
newSubmission.StudentId = student.Id;
|
||||
newSubmission.AssignmentId = Assignment.Id;
|
||||
newSubmission.SubmissionTime = DateTime.Now;
|
||||
newSubmission.Status = Entities.Contracts.SubmissionStatus.Graded;
|
||||
// foreach (var student in _students)
|
||||
// {
|
||||
// var newSubmission = new SubmissionDto();
|
||||
// newSubmission.StudentId = student.Id;
|
||||
// newSubmission.AssignmentId = Assignment.Id;
|
||||
// newSubmission.SubmissionTime = DateTime.Now;
|
||||
// newSubmission.Status = Entities.Contracts.SubmissionStatus.Graded;
|
||||
|
||||
|
||||
foreach (var row in _questionsForTable)
|
||||
{
|
||||
if (row.QuestionItem.AssignmentQuestionDto.StructType == Entities.Contracts.AssignmentStructType.Struct) continue;
|
||||
if (row.StudentAnswers.TryGetValue(student.Id, out bool isCorrect))
|
||||
{
|
||||
newSubmission.SubmissionDetails.Add(new SubmissionDetailDto
|
||||
{
|
||||
IsCorrect = isCorrect,
|
||||
StudentId = student.Id,
|
||||
AssignmentQuestionId = row.QuestionItem.AssignmentQuestionDto.Id,
|
||||
PointsAwarded = isCorrect ? row.QuestionItem.AssignmentQuestionDto.Score : 0
|
||||
});
|
||||
// foreach (var row in _questionsForTable)
|
||||
// {
|
||||
// if (row.QuestionItem.AssignmentQuestionDto.StructType == Entities.Contracts.AssignmentStructType.Struct) continue;
|
||||
// if (row.StudentAnswers.TryGetValue(student.Id, out bool isCorrect))
|
||||
// {
|
||||
// newSubmission.SubmissionDetails.Add(new SubmissionDetailDto
|
||||
// {
|
||||
// IsCorrect = isCorrect,
|
||||
// StudentId = student.Id,
|
||||
// AssignmentQuestionId = row.QuestionItem.AssignmentQuestionDto.Id,
|
||||
// PointsAwarded = isCorrect ? row.QuestionItem.AssignmentQuestionDto.Score : 0
|
||||
// });
|
||||
|
||||
newSubmission.OverallGrade += isCorrect ? row.QuestionItem.AssignmentQuestionDto.Score : 0;
|
||||
}
|
||||
}
|
||||
submissionDto.Add(newSubmission);
|
||||
}
|
||||
// newSubmission.OverallGrade += isCorrect ? row.QuestionItem.AssignmentQuestionDto.Score : 0;
|
||||
// }
|
||||
// }
|
||||
// submissionDto.Add(newSubmission);
|
||||
// }
|
||||
|
||||
submissionDto.ForEach(async s =>
|
||||
{
|
||||
Snackbar?.Add($"正在提交: {_students.FirstOrDefault(std => std.Id == s.StudentId)?.DisplayName} 的试卷", Severity.Info);
|
||||
var submidResult = await ExamService.SubmissionAssignment(s);
|
||||
if (submidResult.Status)
|
||||
Snackbar?.Add($"批改结果已提交 {_students.FirstOrDefault(st => st.Id == s.StudentId)?.DisplayName}", Severity.Success);
|
||||
else
|
||||
Snackbar?.Add("批改结果提交失败", Severity.Error);
|
||||
// submissionDto.ForEach(async s =>
|
||||
// {
|
||||
// Snackbar?.Add($"正在提交: {_students.FirstOrDefault(std => std.Id == s.StudentId)?.DisplayName} 的试卷", Severity.Info);
|
||||
// var submidResult = await ExamService.SubmissionAssignment(s);
|
||||
// if (submidResult.Status)
|
||||
// Snackbar?.Add($"批改结果已提交 {_students.FirstOrDefault(st => st.Id == s.StudentId)?.DisplayName}", Severity.Success);
|
||||
// else
|
||||
// Snackbar?.Add("批改结果提交失败", Severity.Error);
|
||||
|
||||
});
|
||||
// });
|
||||
|
||||
|
||||
|
||||
}
|
||||
// }
|
||||
}
|
||||
Reference in New Issue
Block a user