parent
52eb7b1afe
commit
af3a9e5ce2
@ -7,6 +7,7 @@ import {
|
|||||||
IsString
|
IsString
|
||||||
} from "class-validator";
|
} from "class-validator";
|
||||||
import { Column, Entity, ManyToOne, OneToMany, PrimaryGeneratedColumn } from "typeorm";
|
import { Column, Entity, ManyToOne, OneToMany, PrimaryGeneratedColumn } from "typeorm";
|
||||||
|
import { ResponseRunnerCard } from '../responses/ResponseRunnerCard';
|
||||||
import { Runner } from "./Runner";
|
import { Runner } from "./Runner";
|
||||||
import { TrackScan } from "./TrackScan";
|
import { TrackScan } from "./TrackScan";
|
||||||
|
|
||||||
@ -62,6 +63,6 @@ export class RunnerCard {
|
|||||||
* Turns this entity into it's response class.
|
* Turns this entity into it's response class.
|
||||||
*/
|
*/
|
||||||
public toResponse() {
|
public toResponse() {
|
||||||
return new Error("NotImplemented");
|
return new ResponseRunnerCard(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
47
src/models/responses/ResponseRunnerCard.ts
Normal file
47
src/models/responses/ResponseRunnerCard.ts
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
import { IsBoolean, IsEAN, IsInt, IsNotEmpty, IsObject, IsString } from "class-validator";
|
||||||
|
import { RunnerCard } from '../entities/RunnerCard';
|
||||||
|
import { ResponseRunner } from './ResponseRunner';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Defines the runner card response.
|
||||||
|
*/
|
||||||
|
export class ResponseRunnerCard {
|
||||||
|
/**
|
||||||
|
* The card's id.
|
||||||
|
*/
|
||||||
|
@IsInt()
|
||||||
|
id: number;;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The card's associated runner.
|
||||||
|
* This is important to link scans to runners.
|
||||||
|
*/
|
||||||
|
@IsObject()
|
||||||
|
runner: ResponseRunner;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The card's code.
|
||||||
|
*/
|
||||||
|
@IsEAN()
|
||||||
|
@IsString()
|
||||||
|
@IsNotEmpty()
|
||||||
|
code: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Is the enabled valid (for fraud reasons).
|
||||||
|
* The determination of validity will work differently for every child class.
|
||||||
|
*/
|
||||||
|
@IsBoolean()
|
||||||
|
enabled: boolean = true;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a ResponseRunnerCard object from a runner card.
|
||||||
|
* @param card The card the response shall be build for.
|
||||||
|
*/
|
||||||
|
public constructor(card: RunnerCard) {
|
||||||
|
this.id = card.id;
|
||||||
|
this.runner = card.runner.toResponse() || null;
|
||||||
|
this.code = card.code;
|
||||||
|
this.enabled = card.enabled;
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user