diff --git a/mappings/on_rating.jsonata b/mappings/on_rating.jsonata new file mode 100644 index 0000000000000000000000000000000000000000..ae8487bf81647131dbba09aa833ee1ec8951e131 --- /dev/null +++ b/mappings/on_rating.jsonata @@ -0,0 +1,6 @@ +{ + "data": $.responses.{ + "context": context, + "message": message + }[] +} diff --git a/mappings/rating.jsonata b/mappings/rating.jsonata new file mode 100644 index 0000000000000000000000000000000000000000..2cf3d622a0bc9df22b102849adba74dcca23db14 --- /dev/null +++ b/mappings/rating.jsonata @@ -0,0 +1,4 @@ +{ + "context": context, + "message": message +} diff --git a/src/gcl/gcl.controller.ts b/src/gcl/gcl.controller.ts index c6e9bfa46f94a69075cb2a8977693faa4a482e9d..6909ffdb89b2ad8c7a54c687ed09ad78f2a282c0 100644 --- a/src/gcl/gcl.controller.ts +++ b/src/gcl/gcl.controller.ts @@ -36,4 +36,10 @@ export class GCLController { const statusResult = await this.service.status(body); return statusResult; } + + @httpPost('rating') + public async rating(@requestBody() body: any): Promise<any> { + const statusResult = await this.service.rating(body); + return statusResult; + } } diff --git a/src/gcl/gcl.service.ts b/src/gcl/gcl.service.ts index a490664626e6085f2730c6d96bd60d3dbd54b396..b0a51de26d4a2704a49bb6e205eff5971b6f9385 100644 --- a/src/gcl/gcl.service.ts +++ b/src/gcl/gcl.service.ts @@ -52,4 +52,12 @@ export class GCLService { return "In Progress"; } + + async rating(body: any) { + const payload = await this.tlService.transform(body, "rating"); + const psResponse = await this.psClientService.post(payload); + const response = await this.tlService.transform(psResponse, "on_rating"); + + return response; + } }