import { Controller, Get, Post, Put, Delete, Body, Param, Query, UseGuards, } from '@nestjs/common'; import { JwtAuthGuard } from '../../../auth/guards/JwtAuthGuard'; import { RolesGuard } from '../../../auth/guards/RolesGuard'; import { AppletSiteVersionService } from '../../services/admin/AppletSiteVersionService'; @Controller('adminapi/applet/site-version') @UseGuards(JwtAuthGuard, RolesGuard) export class SiteVersionController { constructor(private readonly appletSiteVersionService: AppletSiteVersionService) {} /** * 站点版本列表 */ @Get('lists') async lists(@Query() query: any) { return this.appletSiteVersionService.getPage(query); } /** * 站点版本信息 */ @Get('info/:version_id') async info(@Param('version_id') version_id: string) { return this.appletSiteVersionService.getInfo(parseInt(version_id)); } /** * 添加站点版本 */ @Post('add') async add(@Body() data: { site_id: number; version_name: string; version_code: string; version_desc?: string; version_config?: any; status?: number; }) { return this.appletSiteVersionService.add(data); } /** * 编辑站点版本 */ @Put('edit/:version_id') async edit( @Param('version_id') version_id: string, @Body() data: { site_id?: number; version_name?: string; version_code?: string; version_desc?: string; version_config?: any; status?: number; }, ) { return this.appletSiteVersionService.edit(parseInt(version_id), data); } /** * 删除站点版本 */ @Delete('delete/:version_id') async delete(@Param('version_id') version_id: string) { return this.appletSiteVersionService.delete(parseInt(version_id)); } /** * 发布站点版本 */ @Post('publish/:version_id') async publish(@Param('version_id') version_id: string) { return this.appletSiteVersionService.publish(parseInt(version_id)); } /** * 回滚站点版本 */ @Post('rollback/:version_id') async rollback(@Param('version_id') version_id: string) { return this.appletSiteVersionService.rollback(parseInt(version_id)); } }