Loading backend/src/place/place.controller.ts +19 −5 Original line number Diff line number Diff line import { Controller, Get, Post, Body, Patch, Param, Delete, UseInterceptors, UploadedFile } from '@nestjs/common'; import { Controller, Get, Post, Body, Patch, Param, Delete, UseInterceptors, UploadedFile, Query, } from '@nestjs/common'; import { PlaceService } from './place.service'; import { CreatePlaceDateTradDto } from './dto/create-place-date.dto'; import { UpdatePlaceDto } from './dto/update-place.dto'; import { ApiBearerAuth, ApiBody, ApiConsumes, ApiTags } from '@nestjs/swagger'; import { ApiBearerAuth, ApiBody, ApiConsumes, ApiParam, ApiQuery, ApiTags } from '@nestjs/swagger'; import { Roles } from 'src/auth/role.decorator'; import { ADMIN_ROLES } from 'src/shared/enum/admin-role.enum'; import { fileInterceptor } from 'src/shared/interceptors/file-save.interceptor'; import { FileValidationPipe } from 'src/shared/pipe/file-validation.pipe'; import { LANGUAGES } from 'src/shared/enum/languages.enum'; @Controller('place') @ApiTags('Place') Loading @@ -18,16 +30,18 @@ export class PlaceController { @Roles(ADMIN_ROLES) @ApiBearerAuth('jwt') @Post() @UseInterceptors(fileInterceptor('image', 'static/place/', ['.jpg', '.jpeg', '.png'])) @UseInterceptors(fileInterceptor('image', 'static/places/', ['.jpg', '.jpeg', '.png'])) async create(@UploadedFile(new FileValidationPipe()) file, @Body() createPlaceDto: CreatePlaceDateTradDto) { createPlaceDto.image = file; return await this.placeService.create(createPlaceDto); } @ApiQuery({ name: 'lang', type: String }) @ApiParam({ name: 'idTown', type: Number }) @Get('/town/:idTown/activity') async findAll(@Param('idTown') idTown: number) { async findAll(@Param('idTown') idTown: number, @Query('lang') lang: string) { try { return this.placeService.findAllByTown(idTown); return this.placeService.findAllByTown(idTown, lang as LANGUAGES); } catch (e) { throw e; } Loading Loading
backend/src/place/place.controller.ts +19 −5 Original line number Diff line number Diff line import { Controller, Get, Post, Body, Patch, Param, Delete, UseInterceptors, UploadedFile } from '@nestjs/common'; import { Controller, Get, Post, Body, Patch, Param, Delete, UseInterceptors, UploadedFile, Query, } from '@nestjs/common'; import { PlaceService } from './place.service'; import { CreatePlaceDateTradDto } from './dto/create-place-date.dto'; import { UpdatePlaceDto } from './dto/update-place.dto'; import { ApiBearerAuth, ApiBody, ApiConsumes, ApiTags } from '@nestjs/swagger'; import { ApiBearerAuth, ApiBody, ApiConsumes, ApiParam, ApiQuery, ApiTags } from '@nestjs/swagger'; import { Roles } from 'src/auth/role.decorator'; import { ADMIN_ROLES } from 'src/shared/enum/admin-role.enum'; import { fileInterceptor } from 'src/shared/interceptors/file-save.interceptor'; import { FileValidationPipe } from 'src/shared/pipe/file-validation.pipe'; import { LANGUAGES } from 'src/shared/enum/languages.enum'; @Controller('place') @ApiTags('Place') Loading @@ -18,16 +30,18 @@ export class PlaceController { @Roles(ADMIN_ROLES) @ApiBearerAuth('jwt') @Post() @UseInterceptors(fileInterceptor('image', 'static/place/', ['.jpg', '.jpeg', '.png'])) @UseInterceptors(fileInterceptor('image', 'static/places/', ['.jpg', '.jpeg', '.png'])) async create(@UploadedFile(new FileValidationPipe()) file, @Body() createPlaceDto: CreatePlaceDateTradDto) { createPlaceDto.image = file; return await this.placeService.create(createPlaceDto); } @ApiQuery({ name: 'lang', type: String }) @ApiParam({ name: 'idTown', type: Number }) @Get('/town/:idTown/activity') async findAll(@Param('idTown') idTown: number) { async findAll(@Param('idTown') idTown: number, @Query('lang') lang: string) { try { return this.placeService.findAllByTown(idTown); return this.placeService.findAllByTown(idTown, lang as LANGUAGES); } catch (e) { throw e; } Loading