feat(mining-wallet): make initialize endpoints public for internal network calls

Changed system-accounts/initialize and pool-accounts/initialize endpoints from
@AdminOnly to @Public to allow deploy scripts to call them without authentication.
These endpoints are only accessible from internal network.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
hailin 2026-01-13 23:22:17 -08:00
parent 6ec79a6672
commit 77b682c8a8
2 changed files with 6 additions and 6 deletions

View File

@ -1,7 +1,7 @@
import { Controller, Get, Post, Body, Param, Query } from '@nestjs/common'; import { Controller, Get, Post, Body, Param, Query } from '@nestjs/common';
import { ApiTags, ApiOperation, ApiResponse, ApiBearerAuth, ApiQuery } from '@nestjs/swagger'; import { ApiTags, ApiOperation, ApiResponse, ApiBearerAuth, ApiQuery } from '@nestjs/swagger';
import { PoolAccountService } from '../../application/services/pool-account.service'; import { PoolAccountService } from '../../application/services/pool-account.service';
import { AdminOnly } from '../../shared/guards/jwt-auth.guard'; import { AdminOnly, Public } from '../../shared/guards/jwt-auth.guard';
import { PoolAccountType, TransactionType } from '@prisma/client'; import { PoolAccountType, TransactionType } from '@prisma/client';
import Decimal from 'decimal.js'; import Decimal from 'decimal.js';
@ -73,8 +73,8 @@ export class PoolAccountController {
} }
@Post('initialize') @Post('initialize')
@AdminOnly() @Public()
@ApiOperation({ summary: '初始化池账户' }) @ApiOperation({ summary: '初始化池账户(仅限内网调用)' })
@ApiResponse({ status: 201, description: '池账户初始化成功' }) @ApiResponse({ status: 201, description: '池账户初始化成功' })
async initialize(@Body() dto: InitializePoolsDto) { async initialize(@Body() dto: InitializePoolsDto) {
return this.poolAccountService.initializePools({ return this.poolAccountService.initializePools({

View File

@ -1,7 +1,7 @@
import { Controller, Get, Post, Body, Param, Query } from '@nestjs/common'; import { Controller, Get, Post, Body, Param, Query } from '@nestjs/common';
import { ApiTags, ApiOperation, ApiResponse, ApiBearerAuth } from '@nestjs/swagger'; import { ApiTags, ApiOperation, ApiResponse, ApiBearerAuth } from '@nestjs/swagger';
import { SystemAccountService } from '../../application/services/system-account.service'; import { SystemAccountService } from '../../application/services/system-account.service';
import { AdminOnly } from '../../shared/guards/jwt-auth.guard'; import { AdminOnly, Public } from '../../shared/guards/jwt-auth.guard';
import { SystemAccountType } from '@prisma/client'; import { SystemAccountType } from '@prisma/client';
class InitializeSystemAccountsDto { class InitializeSystemAccountsDto {
@ -47,8 +47,8 @@ export class SystemAccountController {
} }
@Post('initialize') @Post('initialize')
@AdminOnly() @Public()
@ApiOperation({ summary: '初始化核心系统账户' }) @ApiOperation({ summary: '初始化核心系统账户(仅限内网调用)' })
@ApiResponse({ status: 201, description: '系统账户初始化成功' }) @ApiResponse({ status: 201, description: '系统账户初始化成功' })
async initialize(@Body() dto: InitializeSystemAccountsDto) { async initialize(@Body() dto: InitializeSystemAccountsDto) {
return this.systemAccountService.initializeCoreAccounts(dto); return this.systemAccountService.initializeCoreAccounts(dto);