Files
cyh-tk-backend/src/modules/media/media.controller.ts
zhxiao1124 5fa8c5e0a9 feat(dramas,media): add video resolution fields and fix quote style
1. 为剧集剧集添加width和height字段,支持存储视频分辨率信息
2. 统一将media.controller.ts中的单引号改为双引号,保持代码风格一致
2026-07-01 16:04:49 +08:00

41 lines
1.3 KiB
TypeScript

import { Body, Controller, Get, Post, Query, UseGuards } from "@nestjs/common";
import { ApiBearerAuth, ApiTags } from "@nestjs/swagger";
import { RequirePermissions } from "../admin/decorators/require-permissions.decorator";
import { AdminJwtAuthGuard } from "../admin/guards/admin-jwt-auth.guard";
import { PermissionsGuard } from "../admin/guards/permissions.guard";
import { CreateCoverDto } from "./dto/create-cover.dto";
import { CreateUploadJobDto } from "./dto/create-upload-job.dto";
import { MediaService } from "./media.service";
@ApiTags("Media")
@Controller("/api/admin/v1/media")
@ApiBearerAuth()
@UseGuards(AdminJwtAuthGuard, PermissionsGuard)
export class MediaController {
constructor(private readonly mediaService: MediaService) {}
@Post("/covers")
@RequirePermissions("media:create")
createCover(@Body() dto: CreateCoverDto) {
return this.mediaService.createCover(dto);
}
@Post("/upload-jobs")
@RequirePermissions("media:create")
createUploadJob(@Body() dto: CreateUploadJobDto) {
return this.mediaService.createUploadJob(dto);
}
@Get("/upload-jobs")
@RequirePermissions("media:read")
listUploadJobs(
@Query("page") page?: string,
@Query("pageSize") pageSize?: string,
) {
return this.mediaService.listUploadJobs({
page: Number(page) || 1,
pageSize: Number(pageSize) || 20,
});
}
}