Newer
Older
import {
Controller,
Get,
Post,
Body,
Patch,
Param,
Delete,
} from '@nestjs/common';
import { ApiTags } from '@nestjs/swagger';
import { MoviesService } from './movies.service';
import { CreateMovieDto } from './dto/create-movie.dto';
import { UpdateMovieDto } from './dto/update-movie.dto';

Lukáš Kratochvíl
committed
import { MovieEntity } from './entities/movie.entity';
@ApiTags('movies')
@Controller('movies')
export class MoviesController {
constructor(private readonly moviesService: MoviesService) {}
@Post()

Lukáš Kratochvíl
committed
async create(@Body() createMovieDto: CreateMovieDto): Promise<MovieEntity> {
return await this.moviesService.create(createMovieDto);
}
@Get()

Lukáš Kratochvíl
committed
async findAll(): Promise<MovieEntity[]> {
return await this.moviesService.findAll();
}
@Get(':id')

Lukáš Kratochvíl
committed
async findOne(@Param('id') id: string): Promise<MovieEntity> {
return await this.moviesService.findOne(id);
}
async addCategory(
@Param('id') id: string,
@Param('categoryName') categoryName: string,
): Promise<MovieEntity> {
return await this.moviesService.addCategory(id, categoryName);
}
async update(
@Param('id') id: string,
@Body() updateMovieDto: UpdateMovieDto,
): Promise<MovieEntity> {
return await this.moviesService.update(id, updateMovieDto);
}
@Delete(':id')

Lukáš Kratochvíl
committed
async remove(@Param('id') id: string): Promise<MovieEntity> {
return await this.moviesService.remove(id);
}
}