Files
wwjcloud-nest-v1/wwjcloud/src/common/sys/controllers/admin/ScheduleLogController.ts

64 lines
2.1 KiB
TypeScript
Raw Normal View History

import { Controller, Get, Query, UseGuards, Req, UnauthorizedException } from '@nestjs/common';
import { ApiTags, ApiOperation, ApiResponse } from '@nestjs/swagger';
import type { Request } from 'express';
import { JwtAuthGuard } from '../../../auth/guards/JwtAuthGuard';
import { RolesGuard } from '../../../auth/guards/RolesGuard';
import { Roles } from '../../../auth/decorators/RolesDecorator';
interface AuthenticatedRequest extends Request {
user?: {
uid: number;
username: string;
siteId: number;
userType: string;
};
}
/**
* -
* : /adminapi/sys/schedule-log
*/
@ApiTags('定时任务日志')
@Controller('adminapi/sys/schedule-log')
@UseGuards(JwtAuthGuard, RolesGuard)
@Roles('admin')
export class ScheduleLogController {
constructor() {}
@Get('page')
@ApiOperation({ summary: '获取定时任务日志分页列表' })
@ApiResponse({ status: 200, description: '获取成功' })
async getPage(@Query() query: any, @Req() req: AuthenticatedRequest) {
const siteId = req.user?.siteId;
if (!siteId) {
throw new UnauthorizedException('未授权访问:缺少 site_id');
}
// TODO: 实现定时任务日志分页列表
return { list: [], total: 0 };
}
@Get('list')
@ApiOperation({ summary: '获取定时任务日志列表' })
@ApiResponse({ status: 200, description: '获取成功' })
async getList(@Query() query: any, @Req() req: AuthenticatedRequest) {
const siteId = req.user?.siteId;
if (!siteId) {
throw new UnauthorizedException('未授权访问:缺少 site_id');
}
// TODO: 实现定时任务日志列表
return [];
}
@Get('stats')
@ApiOperation({ summary: '获取定时任务统计信息' })
@ApiResponse({ status: 200, description: '获取成功' })
async getStats(@Req() req: AuthenticatedRequest) {
const siteId = req.user?.siteId;
if (!siteId) {
throw new UnauthorizedException('未授权访问:缺少 site_id');
}
// TODO: 实现定时任务统计信息
return { total: 0, success: 0, failed: 0 };
}
}