diff --git a/src/controllers/ScanController.ts b/src/controllers/ScanController.ts index 5a6f8af..7b69fab 100644 --- a/src/controllers/ScanController.ts +++ b/src/controllers/ScanController.ts @@ -1,4 +1,5 @@ -import { Authorized, Body, Delete, Get, HeaderParam, JsonController, OnUndefined, Param, Post, Put, QueryParam, UseBefore } from 'routing-controllers'; +import { Request } from "express"; +import { Authorized, Body, Delete, Get, JsonController, OnUndefined, Param, Post, Put, QueryParam, Req, UseBefore } from 'routing-controllers'; import { OpenAPI, ResponseSchema } from 'routing-controllers-openapi'; import { getConnectionManager, Repository } from 'typeorm'; import { RunnerNotFoundError } from '../errors/RunnerErrors'; @@ -14,7 +15,6 @@ import { TrackScan } from '../models/entities/TrackScan'; import { ResponseEmpty } from '../models/responses/ResponseEmpty'; import { ResponseScan } from '../models/responses/ResponseScan'; import { ResponseTrackScan } from '../models/responses/ResponseTrackScan'; - @JsonController('/scans') export class ScanController { private scanRepository: Repository; @@ -71,9 +71,10 @@ export class ScanController { @ResponseSchema(ResponseTrackScan) @ResponseSchema(RunnerNotFoundError, { statusCode: 404 }) @OpenAPI({ description: 'Create a new track scan (for "normal" scans use /scans instead).
Please remember that to provide the scan\'s card\'s station\'s id.', security: [{ "ScanApiToken": [] }, { "AuthToken": [] }, { "RefreshTokenCookie": [] }] }) - async postTrackScans(@Body({ validate: true }) createScan: CreateTrackScan, @HeaderParam("station_id") station_id: string) { + async postTrackScans(@Body({ validate: true }) createScan: CreateTrackScan, @Req() req: Request) { + const station_id = req.headers["station_id"]; if (station_id) { - createScan.station = parseInt(station_id); + createScan.station = parseInt(station_id.toString()); } let scan = await createScan.toEntity(); scan = await this.trackScanRepository.save(scan);