Show grades in student overview

This commit is contained in:
2025-06-10 15:30:23 +02:00
parent 29d23f8400
commit 6dc88285d0

View File

@ -373,12 +373,12 @@ class StudentState(val student: Student, edition: Edition) {
val asGroup = (GroupAssignments innerJoin GroupAssignmentCriteria innerJoin GroupFeedbacks innerJoin Groups).selectAll().where { val asGroup = (GroupAssignments innerJoin GroupAssignmentCriteria innerJoin GroupFeedbacks innerJoin Groups).selectAll().where {
(GroupFeedbacks.groupId inList groupsForEdition.keys.toList()) and (GroupFeedbacks.groupId inList groupsForEdition.keys.toList()) and
(GroupAssignmentCriteria.name eq "") (GroupAssignmentCriteria.id eq GroupAssignments.globalCriterion)
}.map { it[GroupAssignments.id] to it } }.map { it[GroupAssignments.id] to it }
val asIndividual = (GroupAssignments innerJoin GroupAssignmentCriteria innerJoin IndividualFeedbacks innerJoin Groups).selectAll().where { val asIndividual = (GroupAssignments innerJoin GroupAssignmentCriteria innerJoin IndividualFeedbacks innerJoin Groups).selectAll().where {
(IndividualFeedbacks.studentId eq student.id) and (IndividualFeedbacks.studentId eq student.id) and
(GroupAssignmentCriteria.name eq "") (GroupAssignmentCriteria.id eq GroupAssignments.globalCriterion)
}.map { it[GroupAssignments.id] to it } }.map { it[GroupAssignments.id] to it }
val res = mutableMapOf<EntityID<UUID>, LocalGroupGrade>() val res = mutableMapOf<EntityID<UUID>, LocalGroupGrade>()
@ -644,7 +644,7 @@ class SoloAssignmentState(val assignment: SoloAssignment) {
}.flatten().distinct().sorted() }.flatten().distinct().sorted()
} }
private fun Transaction.loadFeedback(): List<Pair<Student, FullFeedback>> { private fun Transaction.loadFeedback(): List<Pair<Student, FullFeedback>> {3
val allCrit = SoloAssignmentCriterion.find { val allCrit = SoloAssignmentCriterion.find {
SoloAssignmentCriteria.assignmentId eq assignment.id SoloAssignmentCriteria.assignmentId eq assignment.id
}.filter { it.id != assignment.globalCriterion.id } }.filter { it.id != assignment.globalCriterion.id }