diff --git a/src/Api/TakeoutSaaS.AdminApi/Controllers/SystemParametersController.cs b/src/Api/TakeoutSaaS.AdminApi/Controllers/SystemParametersController.cs
new file mode 100644
index 0000000..045d649
--- /dev/null
+++ b/src/Api/TakeoutSaaS.AdminApi/Controllers/SystemParametersController.cs
@@ -0,0 +1,115 @@
+using MediatR;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+using TakeoutSaaS.Application.App.SystemParameters.Commands;
+using TakeoutSaaS.Application.App.SystemParameters.Dto;
+using TakeoutSaaS.Application.App.SystemParameters.Queries;
+using TakeoutSaaS.Module.Authorization.Attributes;
+using TakeoutSaaS.Shared.Abstractions.Constants;
+using TakeoutSaaS.Shared.Abstractions.Results;
+using TakeoutSaaS.Shared.Web.Api;
+
+namespace TakeoutSaaS.AdminApi.Controllers;
+
+///
+/// 系统参数管理。
+///
+///
+/// 提供参数的新增、修改、查询与删除。
+///
+[ApiVersion("1.0")]
+[Authorize]
+[Route("api/admin/v{version:apiVersion}/system-parameters")]
+public sealed class SystemParametersController(IMediator mediator) : BaseApiController
+{
+ ///
+ /// 创建系统参数。
+ ///
+ [HttpPost]
+ [PermissionAuthorize("system-parameter:create")]
+ [ProducesResponseType(typeof(ApiResponse), StatusCodes.Status200OK)]
+ public async Task> Create([FromBody] CreateSystemParameterCommand command, CancellationToken cancellationToken)
+ {
+ var result = await mediator.Send(command, cancellationToken);
+ return ApiResponse.Ok(result);
+ }
+
+ ///
+ /// 查询系统参数列表。
+ ///
+ [HttpGet]
+ [PermissionAuthorize("system-parameter:read")]
+ [ProducesResponseType(typeof(ApiResponse>), StatusCodes.Status200OK)]
+ public async Task>> List(
+ [FromQuery] string? keyword,
+ [FromQuery] bool? isEnabled,
+ [FromQuery] int page = 1,
+ [FromQuery] int pageSize = 20,
+ [FromQuery] string? sortBy = null,
+ [FromQuery] bool sortDesc = true,
+ CancellationToken cancellationToken = default)
+ {
+ var result = await mediator.Send(new SearchSystemParametersQuery
+ {
+ Keyword = keyword,
+ IsEnabled = isEnabled,
+ Page = page,
+ PageSize = pageSize,
+ SortBy = sortBy,
+ SortDescending = sortDesc
+ }, cancellationToken);
+
+ return ApiResponse>.Ok(result);
+ }
+
+ ///
+ /// 获取系统参数详情。
+ ///
+ [HttpGet("{parameterId:long}")]
+ [PermissionAuthorize("system-parameter:read")]
+ [ProducesResponseType(typeof(ApiResponse), StatusCodes.Status200OK)]
+ [ProducesResponseType(typeof(ApiResponse