62 lines
1.8 KiB
TypeScript
62 lines
1.8 KiB
TypeScript
|
|
import { Controller, Get, Put, Param, UseGuards } from '@nestjs/common';
|
||
|
|
import { AISelfImprovementService } from '../../core/ai/AISelfImprovementService';
|
||
|
|
import { RbacGuard } from '../../core/guards/rbac.guard';
|
||
|
|
import { ApiBearerAuth, ApiTags } from '@nestjs/swagger';
|
||
|
|
|
||
|
|
@ApiTags('AI Self-Improvement')
|
||
|
|
@ApiBearerAuth()
|
||
|
|
@Controller('api/ai/self-improvement')
|
||
|
|
export class AISelfImprovementController {
|
||
|
|
constructor(private aiSelfImprovementService: AISelfImprovementService) {}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 生成改进建议
|
||
|
|
*/
|
||
|
|
@Get('suggestions/generate')
|
||
|
|
@UseGuards(RbacGuard)
|
||
|
|
async generateSuggestions() {
|
||
|
|
const suggestions = await this.aiSelfImprovementService.generateImprovementSuggestions();
|
||
|
|
return { success: true, suggestions };
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 获取所有改进建议
|
||
|
|
*/
|
||
|
|
@Get('suggestions')
|
||
|
|
@UseGuards(RbacGuard)
|
||
|
|
async getSuggestions() {
|
||
|
|
const suggestions = await this.aiSelfImprovementService.getImprovementSuggestions();
|
||
|
|
return { success: true, suggestions };
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 更新建议状态
|
||
|
|
*/
|
||
|
|
@Put('suggestions/:id/status')
|
||
|
|
@UseGuards(RbacGuard)
|
||
|
|
async updateSuggestionStatus(@Param('id') id: string, @Param('status') status: 'implemented' | 'dismissed') {
|
||
|
|
const result = await this.aiSelfImprovementService.updateSuggestionStatus(id, status);
|
||
|
|
return { success: result };
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 自动应用改进建议
|
||
|
|
*/
|
||
|
|
@Get('suggestions/apply')
|
||
|
|
@UseGuards(RbacGuard)
|
||
|
|
async applySuggestions() {
|
||
|
|
const result = await this.aiSelfImprovementService.applyImprovementSuggestions();
|
||
|
|
return { success: true, ...result };
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 执行定期优化
|
||
|
|
*/
|
||
|
|
@Get('optimize')
|
||
|
|
@UseGuards(RbacGuard)
|
||
|
|
async performOptimization() {
|
||
|
|
await this.aiSelfImprovementService.performRegularOptimization();
|
||
|
|
return { success: true, message: '定期优化执行完成' };
|
||
|
|
}
|
||
|
|
}
|