From bd6ec6215d362325c510611e4545b7643b918200 Mon Sep 17 00:00:00 2001 From: Nicolai Ort Date: Fri, 5 Feb 2021 17:48:14 +0100 Subject: [PATCH] Fixed data validation problem ref #5 --- src/controllers/PdfController.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/controllers/PdfController.ts b/src/controllers/PdfController.ts index 41d2c4a..6fc7116 100644 --- a/src/controllers/PdfController.ts +++ b/src/controllers/PdfController.ts @@ -1,8 +1,8 @@ -import { ContentType, Controller, Get } from 'routing-controllers'; +import { Body, Get, JsonController, Res } from 'routing-controllers'; import { OpenAPI } from 'routing-controllers-openapi'; import { PdfCreator } from '../PdfCreator'; -@Controller() +@JsonController() export class PdfController { private pdf: PdfCreator; constructor() { @@ -10,11 +10,10 @@ export class PdfController { } @Get('/contracts') - @ContentType("application/pdf") @OpenAPI({ description: "Generate Sponsoring contract pdfs from runner objects." }) - async generateContracts() { - //TODO: Accept the real classes - const contracts = await this.pdf.generateSponsoringContract(); + async generateContracts(@Body({ validate: true }) runner: any, @Res() res: any) { + const contracts = await this.pdf.generateSponsoringContract(runner); + res.setHeader('content-type', 'application/pdf'); return await contracts; } } \ No newline at end of file