fix: 添加 /api/v1/portfolio/assets 端点

- IPortfolioFacade 添加 GetTotalAssetsAsync 方法
- PortfolioFacade 实现 GetTotalAssetsAsync
- PortfolioController 添加 [HttpGet("assets")] 端点(放在 {id} 路由之前)
This commit is contained in:
OpenClaw Agent 2026-03-15 13:58:22 +00:00
parent 41ff4a2135
commit d4c58c8a08
3 changed files with 31 additions and 0 deletions

View File

@ -78,6 +78,23 @@ public class PortfolioController : ControllerBase
}); });
} }
/// <summary>
/// 获取用户总资产
/// </summary>
[HttpGet("assets")]
public async Task<ActionResult<ApiResponse<TotalAssetsResponse>>> GetTotalAssets()
{
var userId = GetCurrentUserId();
var totalAssets = await _portfolioFacade.GetTotalAssetsAsync(userId);
return Ok(new ApiResponse<TotalAssetsResponse>
{
code = Models.StatusCodes.Success,
data = totalAssets,
message = "success"
});
}
/// <summary> /// <summary>
/// 获取投资组合详情 /// 获取投资组合详情
/// </summary> /// </summary>

View File

@ -56,4 +56,9 @@ public interface IPortfolioFacade
/// 回填净值历史 /// 回填净值历史
/// </summary> /// </summary>
Task<BackfillNavResponse> BackfillNavHistoryAsync(string portfolioId, string userId, bool force = false); Task<BackfillNavResponse> BackfillNavHistoryAsync(string portfolioId, string userId, bool force = false);
/// <summary>
/// 获取用户总资产
/// </summary>
Task<TotalAssetsResponse> GetTotalAssetsAsync(string userId);
} }

View File

@ -186,4 +186,13 @@ public class PortfolioFacade : IPortfolioFacade
return await _navService.BackfillNavHistoryAsync(portfolioId, userId, force); return await _navService.BackfillNavHistoryAsync(portfolioId, userId, force);
} }
/// <summary>
/// 获取用户总资产
/// </summary>
public async Task<TotalAssetsResponse> GetTotalAssetsAsync(string userId)
{
_logger.LogInformation("获取用户总资产: {UserId}", userId);
return await _portfolioService.GetTotalAssetsAsync(userId);
}
} }