From a0d87692ea3cf4c0bf1355390d4ace871c0ef471 Mon Sep 17 00:00:00 2001 From: Nikolay Tarasov Date: Sun, 2 Mar 2025 11:07:47 +0300 Subject: [PATCH] Added route Get task by ID --- nestjs/backend/src/tasks/tasks.controller.ts | 14 ++++++++++++++ nestjs/backend/src/tasks/tasks.service.ts | 7 +++++++ 2 files changed, 21 insertions(+) diff --git a/nestjs/backend/src/tasks/tasks.controller.ts b/nestjs/backend/src/tasks/tasks.controller.ts index 8293ff2..8035f28 100644 --- a/nestjs/backend/src/tasks/tasks.controller.ts +++ b/nestjs/backend/src/tasks/tasks.controller.ts @@ -84,6 +84,20 @@ export class TasksController { return this.tasksService.findOneById(id); } + @ApiOperation({ summary: 'Get tasks by project ID' }) + @ApiParam({ name: 'projectId', type: 'number' }) + @ApiResponse({ + status: 200, + description: 'List of tasks for the specified project', + type: Task, + isArray: true, + }) + @Get('project/:projectId') + async findByProject(@Param('projectId') projectId: number): Promise { + return this.tasksService.findByProjectId(projectId); + } + + @ApiOperation({ summary: 'Update task' }) @ApiParam({ name: 'id', type: 'number' }) @ApiBody({ diff --git a/nestjs/backend/src/tasks/tasks.service.ts b/nestjs/backend/src/tasks/tasks.service.ts index d2af77b..062bdf9 100644 --- a/nestjs/backend/src/tasks/tasks.service.ts +++ b/nestjs/backend/src/tasks/tasks.service.ts @@ -42,6 +42,13 @@ export class TasksService { return this.tasksRepository.findOne({ where: { id } }); } + async findByProjectId(projectId: number): Promise { + return this.tasksRepository.find({ + where: { project: { id: projectId } }, + relations: ['assigned_user'], // Загружаем связанные данные о назначенном пользователе + }); + } + async update(id: number, data: { title?: string; status?: string; deadline?: Date; assignedUserId?: number }) { const task = await this.findOneById(id); if (!task) throw new NotFoundException('Task not found'); -- 2.47.2