29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
import { Controller, Get, Delete, Param, Query, UseGuards } from '@nestjs/common';
|
|
import { PetsService } from './pets.service';
|
|
import { JwtAuthGuard } from '../auth/jwt-auth.guard';
|
|
import { ApiTags, ApiBearerAuth, ApiOperation, ApiQuery } from '@nestjs/swagger';
|
|
|
|
@ApiTags('Admin - مدیریت حیوانات خانگی')
|
|
@ApiBearerAuth()
|
|
@UseGuards(JwtAuthGuard)
|
|
@Controller('admin/pets')
|
|
export class PetsController {
|
|
constructor(private readonly petsService: PetsService) {}
|
|
|
|
@Get()
|
|
@ApiOperation({ summary: 'لیست حیوانات خانگی' })
|
|
@ApiQuery({ name: 'page', required: false, description: 'شماره صفحه' })
|
|
@ApiQuery({ name: 'limit', required: false, description: 'تعداد آیتمها' })
|
|
@ApiQuery({ name: 'search', required: false, description: 'جستجو' })
|
|
async getPets(@Query() query: any) {
|
|
return this.petsService.getPets(query);
|
|
}
|
|
|
|
@Delete(':id')
|
|
@ApiOperation({ summary: 'حذف حیوان خانگی' })
|
|
async deletePet(@Param('id') id: string) {
|
|
await this.petsService.deletePet(id);
|
|
return { success: true };
|
|
}
|
|
}
|