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); + } }