import { IsInt, IsString } from "class-validator"; import { RunnerOrganisation } from '../entities/RunnerOrganisation'; /** * Defines the org stats response. * This differs from the normal org responce. */ export class ResponseStatsOrgnisation { /** * The orgs's id. */ @IsInt() id: number; /** * The orgs's name. */ @IsString() name: string; /** * The orgs's runner's currently ran distance in meters. */ @IsInt() distance: number; /** * The orgs's currently collected donations. */ @IsInt() donationAmount: number; /** * Creates a new organisation stats response from a organisation * @param org The organisation whoes response shall be generated - the following relations have to be resolved: runners, runners.scans, runners.distanceDonations, runners.scans.track, teams, teams.runners, teams.runners.scans, teams.runners.distanceDonations, teams.runners.scans.track */ public constructor(org: RunnerOrganisation) { this.name = org.name; this.id = org.id; this.distance = org.distance; this.donationAmount = org.distanceDonationAmount; } }