Files
team-planner/backend/src/ideas/ideas.controller.ts
2026-01-14 01:10:01 +03:00

62 lines
1.2 KiB
TypeScript

import {
Controller,
Get,
Post,
Body,
Patch,
Param,
Delete,
Query,
ParseUUIDPipe,
} from '@nestjs/common';
import { IdeasService } from './ideas.service';
import {
CreateIdeaDto,
UpdateIdeaDto,
QueryIdeasDto,
ReorderIdeasDto,
} from './dto';
@Controller('ideas')
export class IdeasController {
constructor(private readonly ideasService: IdeasService) {}
@Post()
create(@Body() createIdeaDto: CreateIdeaDto) {
return this.ideasService.create(createIdeaDto);
}
@Get()
findAll(@Query() query: QueryIdeasDto) {
return this.ideasService.findAll(query);
}
@Get('modules')
getModules() {
return this.ideasService.getModules();
}
@Patch('reorder')
reorder(@Body() reorderIdeasDto: ReorderIdeasDto) {
return this.ideasService.reorder(reorderIdeasDto.items);
}
@Get(':id')
findOne(@Param('id', ParseUUIDPipe) id: string) {
return this.ideasService.findOne(id);
}
@Patch(':id')
update(
@Param('id', ParseUUIDPipe) id: string,
@Body() updateIdeaDto: UpdateIdeaDto,
) {
return this.ideasService.update(id, updateIdeaDto);
}
@Delete(':id')
remove(@Param('id', ParseUUIDPipe) id: string) {
return this.ideasService.remove(id);
}
}