canina/backend/src/wiki/wiki.controller.ts
parsa aghaei 62bd8811fa
All checks were successful
Deploy Canina / deploy (push) Successful in 4m58s
style: apply standard ESLint & Prettier formatting across backend
2026-07-29 15:41:53 +03:30

36 lines
1.2 KiB
TypeScript

import { Controller, Get, Param, HttpStatus, Query } from '@nestjs/common';
import { WikiService } from './wiki.service';
import {
ApiTags,
ApiOperation,
ApiResponse,
ApiOkResponse,
ApiNotFoundResponse,
} from '@nestjs/swagger';
import { PaginationDto } from '../common/dto/pagination.dto';
@ApiTags('Wiki - دانشنامه ترکیبات')
@Controller('wiki')
@ApiResponse({
status: HttpStatus.INTERNAL_SERVER_ERROR,
description: 'خطای داخلی سرور',
})
export class WikiController {
constructor(private readonly wikiService: WikiService) {}
@Get()
@ApiOperation({ summary: 'دریافت تمام کلمات دانشنامه' })
@ApiOkResponse({ description: 'لیست کلمات به همراه توضیحات (صفحه‌بندی شده)' })
findAll(@Query() query: PaginationDto) {
return this.wikiService.findAll(query);
}
@Get(':key')
@ApiOperation({ summary: 'دریافت ترکیب علمی با کلید' })
@ApiOkResponse({ description: 'اطلاعات کامل ترکیب علمی' })
@ApiNotFoundResponse({ description: 'ترکیب علمی یافت نشد' })
findOne(@Param('key') key: string) {
return this.wikiService.findOneByKey(key);
}
}