From 5a36c8dcae3d79b3b05ffb30a7ebb0d31dc8183a Mon Sep 17 00:00:00 2001 From: Nicolai Ort Date: Sun, 28 Mar 2021 18:44:21 +0200 Subject: [PATCH] Added query param to return created runenrcards ref #180 --- src/controllers/RunnerCardController.ts | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/controllers/RunnerCardController.ts b/src/controllers/RunnerCardController.ts index 808b0d5..84f10eb 100644 --- a/src/controllers/RunnerCardController.ts +++ b/src/controllers/RunnerCardController.ts @@ -50,13 +50,22 @@ export class RunnerCardController { @Post('/bulk') @Authorized("CARD:CREATE") @ResponseSchema(ResponseEmpty, { statusCode: 200 }) - @OpenAPI({ description: "Create blank cards in bulk.
Just provide the count as a query param and wait for the 200 response." }) - async postBlancoBulk(@QueryParam("count") count: number) { + @OpenAPI({ description: "Create blank cards in bulk.
Just provide the count as a query param and wait for the 200 response.
You can provide the 'returnCards' query param if you want to receive the RESPONSERUNNERCARD objects in the response." }) + async postBlancoBulk(@QueryParam("count") count: number, @QueryParam("returnCards") returnCards: boolean = false) { let createPromises = new Array(); for (let index = 0; index < count; index++) { createPromises.push(this.cardRepository.save({ runner: null, enabled: true })) } - await Promise.all(createPromises); + + const cards = await Promise.all(createPromises); + + if (returnCards) { + let responseCards: ResponseRunnerCard[] = new Array(); + cards.forEach(card => { + responseCards.push(new ResponseRunnerCard(card)); + }); + return responseCards; + } let response = new ResponseEmpty(); response.response = `Created ${count} new blanco cards.` return response;