feat: submission route post delete
This commit is contained in:
parent
911e17771f
commit
d9eb8def72
6 changed files with 100 additions and 17 deletions
|
@ -1,7 +1,7 @@
|
|||
import { getSubmissionRepository } from "../data/repositories.js";
|
||||
import {getGroupRepository, getSubmissionRepository} from "../data/repositories.js";
|
||||
import { Language } from "../entities/content/language.js";
|
||||
import { LearningObjectIdentifier } from "../entities/content/learning-object-identifier.js";
|
||||
import { mapToSubmissionDTO, SubmissionDTO } from "../interfaces/submission.js";
|
||||
import {mapToSubmission, mapToSubmissionDTO, SubmissionDTO} from "../interfaces/submission.js";
|
||||
|
||||
export async function getSubmission(
|
||||
learningObjectHruid: string,
|
||||
|
@ -20,3 +20,38 @@ export async function getSubmission(
|
|||
|
||||
return mapToSubmissionDTO(submission);
|
||||
}
|
||||
|
||||
export async function createSubmission(submissionDTO: SubmissionDTO) {
|
||||
const submissionRepository = getSubmissionRepository();
|
||||
const submission = mapToSubmission(submissionDTO);
|
||||
|
||||
try {
|
||||
const newSubmission = await submissionRepository.create(submission);
|
||||
await submissionRepository.save(newSubmission);
|
||||
} catch (e) {
|
||||
return null
|
||||
}
|
||||
|
||||
return submission;
|
||||
}
|
||||
|
||||
export async function deleteSubmission(
|
||||
learningObjectHruid: string,
|
||||
language: Language,
|
||||
version: string,
|
||||
submissionNumber: number
|
||||
) {
|
||||
const submissionRepository = getSubmissionRepository();
|
||||
|
||||
const submission = getSubmission(learningObjectHruid, language, version, submissionNumber);
|
||||
|
||||
if (!submission)
|
||||
return null
|
||||
|
||||
const loId = new LearningObjectIdentifier(learningObjectHruid, language, version);
|
||||
await submissionRepository.deleteSubmissionByLearningObjectAndSubmissionNumber(loId, submissionNumber);
|
||||
|
||||
return submission;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue