@@ -403,17 +403,22 @@ public async Task<Evaluation> UploadJsonAsync(FileForm form, CancellationToken c
403
403
}
404
404
}
405
405
// okay to update this evaluation
406
+ await _context . Database . BeginTransactionAsync ( ct ) ;
406
407
evaluation . CreatedBy = evaluationToUpdate . CreatedBy ;
407
408
evaluation . DateCreated = evaluationToUpdate . DateCreated ;
408
409
evaluation . ModifiedBy = _user . GetId ( ) ;
409
410
evaluation . DateModified = DateTime . UtcNow ;
411
+ evaluation . Submissions = [ ] ;
412
+ evaluation . ScoringModel = null ;
413
+ evaluation . Teams = [ ] ;
414
+ evaluation . Moves = [ ] ;
415
+ evaluation . SituationTime = evaluation . SituationTime . ToUniversalTime ( ) ;
410
416
_mapper . Map ( evaluation , evaluationToUpdate ) ;
411
-
412
- await VerifyOfficialAndTeamSubmissions ( evaluationToUpdate , ct ) ;
413
417
_logger . LogDebug ( "Saving the Evaluation change" ) ;
414
- _context . Evaluations . Update ( evaluationToUpdate ) ;
415
418
await _context . SaveChangesAsync ( ct ) ;
416
-
419
+ _logger . LogDebug ( "Verifying required submissions exist" ) ;
420
+ await VerifyOfficialAndTeamSubmissions ( evaluationToUpdate , ct ) ;
421
+ await _context . Database . CommitTransactionAsync ( ct ) ;
417
422
evaluation = await GetAsync ( evaluationToUpdate . Id , ct ) ;
418
423
419
424
return evaluation ;
@@ -531,7 +536,7 @@ private async Task VerifyOfficialAndTeamSubmissions(EvaluationEntity evaluation,
531
536
UserId = null ,
532
537
ScoringModelId = evaluation . ScoringModelId ,
533
538
MoveNumber = move . MoveNumber ,
534
- DateCreated = DateTime . UtcNow
539
+ DateCreated = DateTime . UtcNow
535
540
} ;
536
541
_logger . LogInformation ( "Make Team submission for move " + move . MoveNumber + " team=" + submission . TeamId . ToString ( ) ) ;
537
542
await _submissionService . CreateNewSubmission ( _context , submission , ct ) ;
0 commit comments