Files
wwjcloud/src/core/channel/controllers/adminapi/pc.controller.ts

90 lines
2.5 KiB
TypeScript
Raw Normal View History

import {
Controller,
Get,
Post,
Put,
Delete,
Body,
Param,
Query,
UseGuards,
UseInterceptors,
UploadedFile,
UploadedFiles,
Session,
Req,
} from '@nestjs/common';
import { FileInterceptor, FilesInterceptor } from '@nestjs/platform-express';
import {
ApiTags,
ApiOperation,
ApiResponse,
ApiConsumes,
} from '@nestjs/swagger';
import { Request } from 'express';
import { JwtAuthGuard } from '@wwjCommon/security/guards/jwt-auth.guard';
import { RolesGuard } from '@wwjCommon/security/guards/roles.guard';
import { Roles } from '@wwjCommon/security/decorators/roles.decorator';
import { Public } from '@wwjCommon/security/decorators/public.decorator';
import { BusinessException } from '@wwjCommon/exception/business.exception';
// @UploadedFile() - 单文件上传,配合 @UseInterceptors(FileInterceptor('file'))
// @UploadedFiles() - 多文件上传,配合 @UseInterceptors(FilesInterceptor('files'))
// @Session() - 获取会话对象对应PHP Session::get()
// @Req() - 获取Request对象对应PHP Request
import { PcService } from '../../services/admin/pc.service';
/**
* PcController
* PHP: Pc Controller
* Java: @RestController
*
*
* - @UploadedFile() - (PHP Request::file())
* - @UploadedFiles() -
* - @Session() - (PHP Session::get())
* - @Req() - (PHP Request)
*/
@ApiTags('channel')
@Controller('adminapi/channel')
export class PcController {
constructor(private readonly pcService: PcService) {}
/**
* PC端配置
* 路由: GET pc/config
* PHP路由: Route::get('pc/config', 'channel.Pc/get')
*/
@Get('pc/config')
@UseGuards(JwtAuthGuard, RolesGuard)
@ApiOperation({ summary: 'PC端配置' })
async get(): Promise<ApiResponse> {
try {
// 基于PHP真实逻辑实现
// PHP原始方法: get
return await this.pcService.getPc();
} catch (error) {
throw new BusinessException('get操作失败', error);
}
}
/**
* PC端配置
* 路由: PUT pc/config
* PHP路由: Route::put('pc/config', 'channel.Pc/set')
*/
@Put('pc/config')
@UseGuards(JwtAuthGuard, RolesGuard)
@ApiOperation({ summary: 'PC端配置' })
async set(@Body() data: SetDto): Promise<ApiResponse> {
try {
// 基于PHP真实逻辑实现
// PHP原始方法: set
return await this.pcService.setPc(data);
} catch (error) {
throw new BusinessException('set操作失败', error);
}
}
}