feat(backend): Repositories voor leerinhoud
LearningObjectRepository, LearningPathRepository en AttachmentRepository aangemaakt.
This commit is contained in:
parent
cf97a3af84
commit
8ec201513c
5 changed files with 36 additions and 2 deletions
10
backend/src/data/content/attachment-repository.ts
Normal file
10
backend/src/data/content/attachment-repository.ts
Normal file
|
@ -0,0 +1,10 @@
|
|||
import {DwengoEntityRepository} from "../dwengo-entity-repository";
|
||||
import {Attachment} from "../../entities/content/attachment.entity";
|
||||
import {LearningObject} from "../../entities/content/learning-object.entity";
|
||||
|
||||
export class AttachmentRepository extends DwengoEntityRepository<Attachment> {
|
||||
public findByLearningObjectAndNumber(learningObject: LearningObject, sequenceNumber: number) {
|
||||
return this.findOne({learningObject: learningObject, sequenceNumber: sequenceNumber});
|
||||
}
|
||||
// This repository is read-only for now since creating own learning object is an extension feature.
|
||||
}
|
14
backend/src/data/content/learning-object-repository.ts
Normal file
14
backend/src/data/content/learning-object-repository.ts
Normal file
|
@ -0,0 +1,14 @@
|
|||
import {DwengoEntityRepository} from "../dwengo-entity-repository";
|
||||
import {LearningObject} from "../../entities/content/learning-object.entity";
|
||||
import {LearningObjectIdentifier} from "../../entities/content/learning-object-identifier";
|
||||
|
||||
export class LearningObjectRepository extends DwengoEntityRepository<LearningObject> {
|
||||
public findByIdentifier(identifier: LearningObjectIdentifier): Promise<LearningObject | null> {
|
||||
return this.findOne({
|
||||
hruid: identifier.hruid,
|
||||
language: identifier.language,
|
||||
version: identifier.version
|
||||
});
|
||||
}
|
||||
// This repository is read-only for now since creating own learning object is an extension feature.
|
||||
}
|
10
backend/src/data/content/learning-path-repository.ts
Normal file
10
backend/src/data/content/learning-path-repository.ts
Normal file
|
@ -0,0 +1,10 @@
|
|||
import {DwengoEntityRepository} from "../dwengo-entity-repository";
|
||||
import {LearningPath} from "../../entities/content/learning-path.entity";
|
||||
import {Language} from "../../entities/content/language";
|
||||
|
||||
export class LearningPathRepository extends DwengoEntityRepository<LearningPath> {
|
||||
public findByHruidAndLanguage(hruid: string, language: Language): Promise<LearningPath | null> {
|
||||
return this.findOne({hruid: hruid, language: language});
|
||||
}
|
||||
// This repository is read-only for now since creating own learning object is an extension feature.
|
||||
}
|
|
@ -7,7 +7,7 @@ export class Attachment {
|
|||
learningObject!: LearningObject;
|
||||
|
||||
@PrimaryKey({type: "integer"})
|
||||
no!: number;
|
||||
sequenceNumber!: number;
|
||||
|
||||
@Property({type: "string"})
|
||||
mimeType!: string;
|
||||
|
|
|
@ -23,7 +23,7 @@ export class LearningPath {
|
|||
image!: string;
|
||||
|
||||
@Embedded({entity: () => LearningPathNode, array: true})
|
||||
nodes: LearningPathNode[];
|
||||
nodes: LearningPathNode[] = [];
|
||||
}
|
||||
|
||||
@Embeddable()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue