Skip to main content

ProjectsController

@lowcode/api


Class: ProjectsController

Defined in: apps/api/src/modules/projects/projects.controller.ts:21

Контроллер управления проектами.

Базовый маршрут: /projects

Предоставляет операции:

  • получить список проектов;
  • получить проект по ID;
  • создать новый проект;
  • обновить существующий проект;
  • удалить проект.

Constructors

Constructor

new ProjectsController(projectsService): ProjectsController

Defined in: apps/api/src/modules/projects/projects.controller.ts:22

Parameters

projectsService

ProjectsService

Returns

ProjectsController

Methods

create()

create(dto): Promise<Project>

Defined in: apps/api/src/modules/projects/projects.controller.ts:71

Создать новый проект.

Parameters

dto

CreateProjectDto

Данные для создания проекта

Returns

Promise<Project>

Созданный проект

Route

POST /projects

Тело запроса должно содержать:

{
"name": "My project",
"description": "Optional"
}

findAll()

findAll(): Promise<Project[]>

Defined in: apps/api/src/modules/projects/projects.controller.ts:34

Получить список всех проектов.

Returns

Promise<Project[]>

Список проектов в виде массива Project[]

Route

GET /projects

Возвращает все видимые проекты (по умолчанию — все).


findOne()

findOne(id): Promise<Project>

Defined in: apps/api/src/modules/projects/projects.controller.ts:49

Получить проект по его ID.

Parameters

id

string

UUID проекта

Returns

Promise<Project>

Сущность проекта

Route

GET /projects/:id

Если проект не найден — выбрасывается NotFoundException.


remove()

remove(id): Promise<void>

Defined in: apps/api/src/modules/projects/projects.controller.ts:103

Удалить проект.

Parameters

id

string

UUID проекта

Returns

Promise<void>

Route

DELETE /projects/:id

Удаляет проект и все связанные с ним записи, если на уровне Prisma включен каскад или ручная логика.


update()

update(id, dto): Promise<Project>

Defined in: apps/api/src/modules/projects/projects.controller.ts:88

Обновить существующий проект.

Parameters

id

string

UUID проекта

dto

UpdateProjectDto

Набор обновляемых полей

Returns

Promise<Project>

Обновлённый проект

Route

PATCH /projects/:id

Поддерживается частичное обновление (patch): можно передать только те поля, которые нужно изменить.