import { Body, Controller, Post } from '@nestjs/common'; import { CreateProductRequest } from '@/pet-feeder/dto/create-product.request'; import { ProductService } from '@/pet-feeder/service/product.service'; import { ProductVo } from '@/pet-feeder/vo/product.vo'; import { ProductMapper } from '@/pet-feeder/mapper/product.mapper'; import { ApiBearerAuth, ApiOkResponse } from '@nestjs/swagger'; @Controller('products') export class ProductController { constructor( private readonly productService: ProductService, private readonly productMapper: ProductMapper, ) {} @Post() @ApiOkResponse({ type: ProductVo, }) @ApiBearerAuth() async create( @Body() createProductRequest: CreateProductRequest, ): Promise { return this.productMapper.toVo( await this.productService.create(createProductRequest), ); } }