ProjectsController
Class: ProjectsController
Defined in: apps/api/src/modules/projects/projects.controller.ts:25
Контроллер управления проектами.
Базовый маршрут:
/projects
Предоставляет операции:
- получить список проектов;
- получить проект по ID;
- создать новый проект;
- обновить существующий проект;
- удалить проект.
Constructors
Constructor
new ProjectsController(
projectsService):ProjectsController
Defined in: apps/api/src/modules/projects/projects.controller.ts:26
Parameters
projectsService
Returns
ProjectsController
Methods
create()
create(
user,dto):Promise<Project>
Defined in: apps/api/src/modules/projects/projects.controller.ts:75
Создать новый проект.
Parameters
user
dto
Данные для создания проекта
Returns
Promise<Project>
Созданный проект
Route
POST /projects
Тело запроса должно содержать:
{
"name": "My project",
"description": "Optional"
}
findAll()
findAll(
user):Promise<Project[]>
Defined in: apps/api/src/modules/projects/projects.controller.ts:38
Получить список всех проектов.
Parameters
user
Returns
Promise<Project[]>
Список проектов в виде массива Project[]
Route
GET /projects
Возвращает все видимые проекты (по умолчанию — все).
findOne()
findOne(
user,id):Promise<Project>
Defined in: apps/api/src/modules/projects/projects.controller.ts:53
Получить проект по его ID.
Parameters
user
id
string
UUID проекта
Returns
Promise<Project>
Сущность проекта
Route
GET /projects/:id
Если проект не найден — выбрасывается NotFoundException.
remove()
remove(
user,id):Promise<void>
Defined in: apps/api/src/modules/projects/projects.controller.ts:111
Удалить проект.
Parameters
user
id
string
UUID проекта
Returns
Promise<void>
Route
DELETE /projects/:id
Удаляет проект и все связанные с ним записи, если на уровне Prisma включен каскад или ручная логика.
update()
update(
user,id,dto):Promise<Project>
Defined in: apps/api/src/modules/projects/projects.controller.ts:92
Обновить существующий проект.
Parameters
user
id
string
UUID проекта
dto
Набор обновляемых полей
Returns
Promise<Project>
Обновлённый проект
Route
PATCH /projects/:id
Поддерживается частичное обновление (patch): можно передать только те поля, которые нужно изменить.