Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
  • Loading branch information
pYassine committed Jul 12, 2021
1 parent 98f7a2e commit d130394
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 11 deletions.
21 changes: 21 additions & 0 deletions packages/backend/src/sms/SpotHitPushDecorator.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import { createParamDecorator, ExecutionContext } from "@nestjs/common";
import { SuiviSmsDto } from "./suivi-sms.dto";

export const SpotHitPushDecorator = createParamDecorator(
(data: unknown, ctx: ExecutionContext) => {
const req = ctx.switchToHttp().getRequest();
const result = new SuiviSmsDto();

result.id_accuse = req.query?.id_accuse || null;
result.id_message = req.query?.id_message || null;
result.numero = req.query?.numero || null;
result.statut = req.query?.statut || null;

result.date_envoi = new Date(req.query?.date_envoi * 1000);
result.date_update = new Date(req.query?.date_update * 1000);
result.statut_code = req.query?.statut_code || null;
result.nom = req.query?.nom || null;

return result;
}
);
19 changes: 15 additions & 4 deletions packages/backend/src/sms/sms.controller.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
import { Body, Controller, Get, Param, UseGuards } from "@nestjs/common";
import {
Body,
Controller,
Get,
Param,
UseGuards,
UsePipes,
ValidationPipe,
} from "@nestjs/common";
import { AuthGuard } from "@nestjs/passport";
import { ApiBearerAuth, ApiTags } from "@nestjs/swagger";
import { CurrentUser } from "../auth/current-user.decorator";
Expand All @@ -7,7 +15,8 @@ import { UsagerAccessGuard } from "../auth/guards/usager-access.guard";
import { StructuresService } from "../structures/services/structures.service";
import { AppAuthUser } from "../_common/model";
import { SmsService } from "./services/sms.service";
import { SuiviSmsDto } from "./suivi.dto";
import { SpotHitPushDecorator } from "./SpotHitPushDecorator";
import { SuiviSmsDto } from "./suivi-sms.dto";

@Controller("sms")
@ApiTags("sms")
Expand All @@ -33,9 +42,11 @@ export class SmsController {
return this.smsService.changeStatutByDomifa(structureId, smsParams);
}

@UsePipes(new ValidationPipe({ transform: true }))
@Get("retour-api")
// URL de retour de l'API Spot-Hit pour mettre à jour le statut d'un SMS
public async retourApi(@Body() suiviSmsDto: SuiviSmsDto) {
public async getHello(@SpotHitPushDecorator() suiviSmsDto: SuiviSmsDto) {
// URL de retour de l'API Spot-Hit pour mettre à jour le statut d'un SMS

console.log(suiviSmsDto);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,19 +26,18 @@ export class SuiviSmsDto {
public statut!: number;

@IsNotEmpty()
public timestamp!: string;

@IsDate()
date_envoi: Date; // Date d'envoi du message (timestamp).
public date_envoi: Date; // Date d'envoi du message (timestamp).
@IsNotEmpty()
@IsDate()
date_update: Date; // Date de dernière mise à jour du statut (timestamp).
public date_update: Date; // Date de dernière mise à jour du statut (timestamp).

@IsNumber()
@Min(0)
@Max(9999)
@IsNotEmpty()
statut_code: number; // Statut détaillé de 0 à 9999 (détails à demander à votre gestionnaire de compte).
@IsOptional()
public statut_code: number; // Statut détaillé de 0 à 9999 (détails à demander à votre gestionnaire de compte).

@IsOptional()
nom: string; // Le nom ou l'identifiant personnel de votre message
public nom: string; // Le nom ou l'identifiant personnel de votre message
}

0 comments on commit d130394

Please sign in to comment.