import { Body, Controller, Post, UseGuards } from '@nestjs/common' import { BasicAuthorizationGuard } from '../../../guards' import { BioimpedanceCredit } from '../../../models/credits/bioimpedance_credit.model' import { BaseEventParams } from '../../../params' import { Credits } from '../domain/credits' @Controller('notification/credits') export class CreditsController { constructor(private credits: Credits) {} @UseGuards(BasicAuthorizationGuard) @Post('crava_system') async notifyCravaSystemThatBioimpedanceCreditWasUsed( @Body() { event }: BaseEventParams, ): Promise { await this.credits.notifyCravaSystemThatBioimpedanceCreditWasUsed( BioimpedanceCredit.toInstance(event.data.new || event.data.row), ) } }