Skip to content

Commit 1c4c142

Browse files
committed
added todo in grader
1 parent 12c4b30 commit 1c4c142

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

devU-api/src/entities/grader/grader.service.ts

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import {
1111
AssignmentProblem,
1212
AssignmentScore,
1313
NonContainerAutoGrader,
14+
ScoringType,
1415
Submission,
1516
SubmissionProblemScore,
1617
SubmissionScore,
@@ -25,6 +26,7 @@ import { downloadFile, initializeMinio } from '../../fileStorage'
2526
import { createNewLab, sendSubmission, waitForJob } from '../../autograders/leviathan.service'
2627
import { DockerFile, LabData, LabFile, SubmissionFile } from 'leviathan-node-sdk'
2728
import path from 'path'
29+
import assignmentService from '../assignment/assignment.service'
2830

2931
async function grade(submissionId: number) {
3032
const submissionModel = await submissionService.retrieve(submissionId)
@@ -271,11 +273,27 @@ export async function callbackFailure(assignmentId: number, submissionId: number
271273
//Currently just sets assignmentscore to the latest submission. Pulled this function out for easy future modification.
272274
async function updateAssignmentScore(submission: Submission, score: number) {
273275
const assignmentScoreModel = await assignmentScoreService.retrieveByUser(submission.assignmentId, submission.userId)
276+
const assignment = await assignmentService.retrieve(submission.assignmentId, submission.courseId)
277+
274278
if (assignmentScoreModel) {
275279
//If assignmentScore already exists, update existing entity
276280
const assignmentScore = serializeAssignmentScore(assignmentScoreModel)
277281
assignmentScore.score = score
278-
assignmentScoreService.update(assignmentScore)
282+
283+
// todo use scoring type in assignment entity, leaving this alone for now,
284+
// grader endpoint needs to be refactored
285+
switch (assignment!.scoringType) {
286+
case ScoringType.HIGHEST_SCORE:
287+
break
288+
case ScoringType.LATEST_SUBMISSION:
289+
break
290+
case ScoringType.NO_SCORE:
291+
break
292+
default:
293+
break
294+
}
295+
296+
await assignmentScoreService.update(assignmentScore)
279297
} else {
280298
//Otherwise create a new one
281299
const assignmentScore: AssignmentScore = {

0 commit comments

Comments
 (0)