diff --git a/backend/F9WebAiTest.Api/Controllers/SysGongyingshangController.cs b/backend/F9WebAiTest.Api/Controllers/SysGongyingshangController.cs
new file mode 100644
index 0000000..b1cebf8
--- /dev/null
+++ b/backend/F9WebAiTest.Api/Controllers/SysGongyingshangController.cs
@@ -0,0 +1,61 @@
+using F9WebAiTest.Application.Common;
+using F9WebAiTest.Application.Common.Exceptions;
+using F9WebAiTest.Application.CQRS.SYS.Gongyingshangs.Commands;
+using F9WebAiTest.Application.CQRS.SYS.Gongyingshangs.Queries;
+using F9WebAiTest.Domain.Enums.SYS.Gongyingshangs;
+using MediatR;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+
+namespace F9WebAiTest.Api.Controllers;
+
+/// 往来单位(供应商/客户)管理
+[ApiController]
+[Route("api/sys/gongyingshang")]
+[Authorize]
+public class SysGongyingshangController : ControllerBase
+{
+ private readonly IMediator _mediator;
+ public SysGongyingshangController(IMediator mediator) => _mediator = mediator;
+
+ /// 分页查询(业务类型 + 销售类型 + 关键字)
+ [HttpGet]
+ public async Task GetPaged([FromQuery] Gys_Type_Enum type = Gys_Type_Enum.干茧,
+ [FromQuery] Gys_SaleType_Enum? saleType = null, [FromQuery] string like = "",
+ [FromQuery] int pageIndex = 1, [FromQuery] int pageSize = 20)
+ => Ok(ApiResult