import { Controller, Get, Post, Body, Patch, Param, Delete, } from '@nestjs/common'; import { CustomFieldsService } from './custom-fields.service'; import { CreateCustomFieldValueDto, UpdateCustomFieldValueDto, CustomFieldEntityParamsDto, UpsertCustomFieldValueDto, } from '../shared/dto/custom-field.dto'; @Controller('custom-fields') export class CustomFieldsController { constructor(private readonly customFieldsService: CustomFieldsService) {} @Post('values') createCustomFieldValue( @Body() createCustomFieldValueDto: CreateCustomFieldValueDto, ) { return this.customFieldsService.createCustomFieldValue( createCustomFieldValueDto, ); } @Get('values/:entityType/:entityId') findCustomFieldValuesByEntity(@Param() params: CustomFieldEntityParamsDto) { return this.customFieldsService.findCustomFieldValuesByEntity( params.entityType, params.entityId, ); } @Get('values/:id') findOneCustomFieldValue(@Param('id') id: string) { return this.customFieldsService.findOneCustomFieldValue(id); } @Patch('values/:id') updateCustomFieldValue( @Param('id') id: string, @Body() updateCustomFieldValueDto: UpdateCustomFieldValueDto, ) { return this.customFieldsService.updateCustomFieldValue( id, updateCustomFieldValueDto, ); } @Delete('values/:id') removeCustomFieldValue(@Param('id') id: string) { return this.customFieldsService.removeCustomFieldValue(id); } @Post('values/upsert') upsertCustomFieldValue(@Body() body: UpsertCustomFieldValueDto) { return this.customFieldsService.upsertCustomFieldValue(body); } }