feat(src/modules/cities/cities.controller.ts): добавляет ответы API для получения всех городов и районов

 feat(src/modules/chat/chat.controller.ts): добавляет ответы API для создания чата и получения сообщений

 feat(src/modules/greetings/greetings.controller.ts): добавляет ответы API для получения и создания приветствий

 feat(src/modules/likes/likes.controller.ts): добавляет ответы API для создания лайков и получения совпадений

 feat(src/modules/reports/reports.controller.ts): добавляет ответы API для создания и получения отчетов

 feat(src/modules/feed/feed.controller.ts): добавляет ответ API для получения отфильтрованного фида

 feat(src/auth/auth.controller.ts): добавляет ответы API для регистрации, входа и выхода пользователей

 feat(src/modules/media/media.controller.ts): добавляет ответы API для загрузки и получения медиа

 feat(src/modules/users/users.controller.ts): добавляет ответы API для получения текущего пользователя и управления пользователями

 feat(src/modules/tags/tags.controller.ts): добавляет ответы API для получения и создания тегов

 feat(src/modules/profiles/profiles.controller.ts): добавляет ответы API для управления профилями пользователей

 feat(src/modules/dates/dates.controller.ts): добавляет ответы API для создания и получения встреч
This commit is contained in:
Oscar
2026-06-08 14:22:50 +03:00
parent bc3e48bcad
commit 102b6b4026
24 changed files with 598 additions and 12 deletions

View File

@@ -1,10 +1,11 @@
import { Body, Controller, Get, Param, Post, UseGuards } from '@nestjs/common';
import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
import { ApiBearerAuth, ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger';
import { Public } from '../../common/decorators/public.decorator';
import { Roles } from '../../common/decorators/roles.decorator';
import { JwtAuthGuard } from '../../common/guards/jwt-auth.guard';
import { RolesGuard } from '../../common/guards/roles.guard';
import { CitiesService } from './cities.service';
import { CityResponseDto, DistrictResponseDto } from './dto/city-response.dto';
@ApiTags('cities')
@Controller('cities')
@@ -14,6 +15,7 @@ export class CitiesController {
@Public()
@Get()
@ApiOperation({ summary: 'Get all cities' })
@ApiResponse({ status: 200, type: [CityResponseDto] })
findAll() {
return this.citiesService.findAll();
}
@@ -21,6 +23,7 @@ export class CitiesController {
@Public()
@Get(':cityId/districts')
@ApiOperation({ summary: 'Get districts for a city' })
@ApiResponse({ status: 200, type: [DistrictResponseDto] })
findDistricts(@Param('cityId') cityId: string) {
return this.citiesService.findDistricts(cityId);
}
@@ -30,6 +33,7 @@ export class CitiesController {
@Roles('admin')
@Post()
@ApiOperation({ summary: 'Create city (admin only)' })
@ApiResponse({ status: 201, type: CityResponseDto })
createCity(@Body() body: { name: string; lat: number; lng: number }) {
return this.citiesService.createCity(body.name, body.lat, body.lng);
}
@@ -39,6 +43,7 @@ export class CitiesController {
@Roles('admin')
@Post(':cityId/districts')
@ApiOperation({ summary: 'Create district (admin only)' })
@ApiResponse({ status: 201, type: DistrictResponseDto })
createDistrict(@Param('cityId') cityId: string, @Body() body: { name: string }) {
return this.citiesService.createDistrict(cityId, body.name);
}