import { Controller, Get, Post, Body, Param } from '@nestjs/common'; import { ApiTags, ApiOperation } from '@nestjs/swagger'; import { AiAnalysisService } from './ai-analysis.service'; import { CurrentUser } from '../../common/decorators/current-user.decorator'; import type { UserPayload } from '../../common/types'; @ApiTags('ai-analysis') @Controller('ai-analysis') export class AiAnalysisController { constructor(private readonly service: AiAnalysisService) {} @Post() @ApiOperation({ summary: '提交 AI 分析任务' }) async create(@CurrentUser() user: UserPayload | undefined, @Body() body: any) { return this.service.createJob(String(user?.id || 'anonymous'), body); } @Get(':id') @ApiOperation({ summary: '获取 AI 分析结果' }) async findOne(@Param('id') id: string) { return this.service.getResult(id); } @Get('jobs/:jobId/status') @ApiOperation({ summary: '查询任务状态' }) async getJobStatus(@Param('jobId') jobId: string) { return this.service.getJobStatus(jobId); } }