feat: group verbinding tussen databank en api aangemaakt

This commit is contained in:
Adriaan Jacquet 2025-03-08 21:49:29 +01:00
parent baf43e91de
commit 3f62ab70e1
6 changed files with 104 additions and 24 deletions

View file

@ -0,0 +1,36 @@
import { getAssignmentRepository, getClassRepository, getGroupRepository } from "../data/repositories";
import { GroupDTO, mapToGroupDTO, mapToGroupDTOId } from "../interfaces/groups";
export async function getGroup(
classId: string,
assignmentNumber: number,
groupNumber: number,
full: boolean,
): Promise<GroupDTO | null> {
const classRepository = getClassRepository();
const cls = await classRepository.findById(classId);
if (!cls) {
return null;
}
const assignmentRepository = getAssignmentRepository();
const assignment = await assignmentRepository.findByClassAndId(cls, assignmentNumber);
if (!assignment) {
return null;
}
const groupRepository = getGroupRepository();
const group = await groupRepository.findByAssignmentAndGroupNumber(assignment, groupNumber);
if (!group) {
return null;
}
if (full) {
return mapToGroupDTO(group);
}
return mapToGroupDTOId(group);
}