diff --git a/src/models/DistanceDonation.ts b/src/models/DistanceDonation.ts index d30b093..915362b 100644 --- a/src/models/DistanceDonation.ts +++ b/src/models/DistanceDonation.ts @@ -1,4 +1,4 @@ -import { Entity, Column } from "typeorm"; +import { Entity, Column, ManyToOne } from "typeorm"; import { IsInt, IsNotEmpty, IsPositive,} from "class-validator"; import { Donation } from "./Donation"; import { Runner } from "./Runner"; @@ -14,7 +14,7 @@ export class DistanceDonation extends Donation { */ @Column() @IsNotEmpty() - //TODO:Relation + @ManyToOne(() => Runner, runner => runner.distanceDonations) runner: Runner; /** @@ -33,7 +33,7 @@ export class DistanceDonation extends Donation { public get amount(): number { let calculatedAmount = -1; try { - //calculatedAmount = this.amountPerDistance * this.runner.getDistance(); + calculatedAmount = this.amountPerDistance * this.runner.getDistance(); } catch (error) { throw error; } diff --git a/src/models/Runner.ts b/src/models/Runner.ts index a625333..21af21a 100644 --- a/src/models/Runner.ts +++ b/src/models/Runner.ts @@ -1,7 +1,8 @@ -import { Entity, Column } from "typeorm"; +import { Entity, Column, OneToMany } from "typeorm"; import { IsNotEmpty,} from "class-validator"; import { Participant } from "./Participant"; import { RunnerGroup } from "./RunnerGroup"; +import { DistanceDonation } from "./DistanceDonation"; /** * Defines a runner. @@ -15,4 +16,7 @@ export class Runner extends Participant { @IsNotEmpty() //TODO:Relation group: RunnerGroup; + + @OneToMany(() => DistanceDonation, distanceDonation => distanceDonation.runner) + distanceDonations: DistanceDonation[]; }