From d4c58c8a08a13c678ed1577b163eee3f35b61306 Mon Sep 17 00:00:00 2001 From: OpenClaw Agent Date: Sun, 15 Mar 2026 13:58:22 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=B7=BB=E5=8A=A0=20/api/v1/portfolio/a?= =?UTF-8?q?ssets=20=E7=AB=AF=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - IPortfolioFacade 添加 GetTotalAssetsAsync 方法 - PortfolioFacade 实现 GetTotalAssetsAsync - PortfolioController 添加 [HttpGet("assets")] 端点(放在 {id} 路由之前) --- .../Controllers/PortfolioController.cs | 17 +++++++++++++++++ AssetManager.Services/IPortfolioFacade.cs | 5 +++++ AssetManager.Services/PortfolioFacade.cs | 9 +++++++++ 3 files changed, 31 insertions(+) diff --git a/AssetManager.API/Controllers/PortfolioController.cs b/AssetManager.API/Controllers/PortfolioController.cs index 513e8e9..d6949e3 100755 --- a/AssetManager.API/Controllers/PortfolioController.cs +++ b/AssetManager.API/Controllers/PortfolioController.cs @@ -78,6 +78,23 @@ public class PortfolioController : ControllerBase }); } + /// + /// 获取用户总资产 + /// + [HttpGet("assets")] + public async Task>> GetTotalAssets() + { + var userId = GetCurrentUserId(); + var totalAssets = await _portfolioFacade.GetTotalAssetsAsync(userId); + + return Ok(new ApiResponse + { + code = Models.StatusCodes.Success, + data = totalAssets, + message = "success" + }); + } + /// /// 获取投资组合详情 /// diff --git a/AssetManager.Services/IPortfolioFacade.cs b/AssetManager.Services/IPortfolioFacade.cs index 72ffcb2..51f1945 100644 --- a/AssetManager.Services/IPortfolioFacade.cs +++ b/AssetManager.Services/IPortfolioFacade.cs @@ -56,4 +56,9 @@ public interface IPortfolioFacade /// 回填净值历史 /// Task BackfillNavHistoryAsync(string portfolioId, string userId, bool force = false); + + /// + /// 获取用户总资产 + /// + Task GetTotalAssetsAsync(string userId); } diff --git a/AssetManager.Services/PortfolioFacade.cs b/AssetManager.Services/PortfolioFacade.cs index c107d11..6b3809f 100644 --- a/AssetManager.Services/PortfolioFacade.cs +++ b/AssetManager.Services/PortfolioFacade.cs @@ -186,4 +186,13 @@ public class PortfolioFacade : IPortfolioFacade return await _navService.BackfillNavHistoryAsync(portfolioId, userId, force); } + + /// + /// 获取用户总资产 + /// + public async Task GetTotalAssetsAsync(string userId) + { + _logger.LogInformation("获取用户总资产: {UserId}", userId); + return await _portfolioService.GetTotalAssetsAsync(userId); + } }