ref #205
This commit is contained in:
parent
71ebce6f8e
commit
2a72aea10e
@ -1,6 +1,6 @@
|
|||||||
import { Authorized, Body, Delete, Get, JsonController, OnUndefined, Param, Post, Put, QueryParam } from 'routing-controllers';
|
import { Authorized, Body, Delete, Get, JsonController, OnUndefined, Param, Post, Put, QueryParam } from 'routing-controllers';
|
||||||
import { OpenAPI, ResponseSchema } from 'routing-controllers-openapi';
|
import { OpenAPI, ResponseSchema } from 'routing-controllers-openapi';
|
||||||
import { getConnectionManager, Repository } from 'typeorm';
|
import { Repository, getConnectionManager } from 'typeorm';
|
||||||
import { TrackHasScanStationsError, TrackIdsNotMatchingError, TrackLapTimeCantBeNegativeError, TrackNotFoundError } from "../errors/TrackErrors";
|
import { TrackHasScanStationsError, TrackIdsNotMatchingError, TrackLapTimeCantBeNegativeError, TrackNotFoundError } from "../errors/TrackErrors";
|
||||||
import { CreateTrack } from '../models/actions/create/CreateTrack';
|
import { CreateTrack } from '../models/actions/create/CreateTrack';
|
||||||
import { UpdateTrack } from '../models/actions/update/UpdateTrack';
|
import { UpdateTrack } from '../models/actions/update/UpdateTrack';
|
||||||
@ -25,9 +25,17 @@ export class TrackController {
|
|||||||
@Authorized("TRACK:GET")
|
@Authorized("TRACK:GET")
|
||||||
@ResponseSchema(ResponseTrack, { isArray: true })
|
@ResponseSchema(ResponseTrack, { isArray: true })
|
||||||
@OpenAPI({ description: 'Lists all tracks.' })
|
@OpenAPI({ description: 'Lists all tracks.' })
|
||||||
async getAll() {
|
async getAll(@QueryParam("page", { required: false }) page: number, @QueryParam("page_size", { required: false }) page_size: number = 100) {
|
||||||
let responseTracks: ResponseTrack[] = new Array<ResponseTrack>();
|
let responseTracks: ResponseTrack[] = new Array<ResponseTrack>();
|
||||||
const tracks = await this.trackRepository.find();
|
let tracks: Array<Track>;
|
||||||
|
|
||||||
|
if (page) {
|
||||||
|
tracks = await this.trackRepository.find({ skip: page * page_size, take: page_size });
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
tracks = await this.trackRepository.find();
|
||||||
|
}
|
||||||
|
|
||||||
tracks.forEach(track => {
|
tracks.forEach(track => {
|
||||||
responseTracks.push(new ResponseTrack(track));
|
responseTracks.push(new ResponseTrack(track));
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user