diff --git a/src/models/RunnerGroup.ts b/src/models/RunnerGroup.ts index 2cd3694..8142754 100644 --- a/src/models/RunnerGroup.ts +++ b/src/models/RunnerGroup.ts @@ -1,4 +1,4 @@ -import { PrimaryGeneratedColumn, Column, OneToMany, ManyToOne, Entity } from "typeorm"; +import { PrimaryGeneratedColumn, Column, OneToMany, ManyToOne, Entity, TableInheritance } from "typeorm"; import { IsInt, IsNotEmpty, @@ -13,6 +13,7 @@ import { RunnerTeam } from "./RunnerTeam"; * Defines the runnerGroup interface. */ @Entity() +@TableInheritance({ column: { name: "type", type: "varchar" } }) export abstract class RunnerGroup { /** * Autogenerated unique id (primary key). diff --git a/src/models/RunnerTeam.ts b/src/models/RunnerTeam.ts index 5adc60d..2a474ad 100644 --- a/src/models/RunnerTeam.ts +++ b/src/models/RunnerTeam.ts @@ -1,12 +1,12 @@ -import { Entity, Column, ManyToOne } from "typeorm"; -import { IsNotEmpty } from "class-validator"; +import { Entity, Column, ManyToOne, ChildEntity } from "typeorm"; +import { IsOptional } from "class-validator"; import { RunnerGroup } from "./RunnerGroup"; import { RunnerOrganisation } from "./RunnerOrganisation"; /** * Defines a runner team (class or deparment for example). */ -@Entity() +@ChildEntity() export class RunnerTeam extends RunnerGroup { /**