Skip to content
Snippets Groups Projects

Resolve "Previews for importing"

Files

@@ -44,6 +44,7 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.opencsv.exceptions.CsvValidationException;
@@ -72,6 +73,7 @@ import nl.tudelft.submit.dto.view.VersionViewDTO;
import nl.tudelft.submit.dto.view.labracore.SubmitAssignmentDetailsDTO;
import nl.tudelft.submit.dto.view.labracore.SubmitSubmissionViewDTO;
import nl.tudelft.submit.dto.view.script.ScriptTrainResultViewDTO;
import nl.tudelft.submit.io.ImportHandler;
import nl.tudelft.submit.model.Signature;
import nl.tudelft.submit.model.TestSubmission;
import nl.tudelft.submit.security.AuthorizationService;
@@ -365,10 +367,13 @@ public class AssignmentController {
@PostMapping("{id}/import/grades")
@PreAuthorize("@authorizationService.canImportAssignmentGrades(#id)")
public String importGrades(@PathVariable Long id, @RequestParam("file") MultipartFile file,
@ModelAttribute("gradeImport") AssignmentGradeImportDTO gradeImport)
throws IOException, CsvValidationException {
assignmentService.importGrades(id,
@ModelAttribute("gradeImport") AssignmentGradeImportDTO gradeImport,
RedirectAttributes redirectAttributes) throws IOException, CsvValidationException {
ImportHandler.Result<GradeImportDTO> result = assignmentService.importGrades(id,
new InputStreamReader(file.getInputStream(), StandardCharsets.UTF_8), gradeImport);
redirectAttributes.addFlashAttribute("successfulImportSize", result.result().size());
redirectAttributes.addFlashAttribute("importWarnings", result.warnings());
redirectAttributes.addFlashAttribute("importErrors", result.errors());
return "redirect:/assignment/{id}";
}
Loading