using AssetManager.Models.DTOs; namespace AssetManager.Services; /// /// 投资组合门面接口 - 整合多个服务,简化 Controller 调用 /// public interface IPortfolioFacade { /// /// 创建投资组合 /// Task CreatePortfolioAsync(CreatePortfolioRequest request, string userId); /// /// 获取投资组合详情 /// Task GetPortfolioDetailAsync(string portfolioId, string userId); /// /// 获取投资组合列表 /// Task> GetPortfolioListAsync(string userId); /// /// 获取净值历史 /// Task GetNavHistoryAsync(string portfolioId, NavHistoryRequest request, string userId); /// /// 创建交易 /// Task CreateTransactionAsync(string portfolioId, CreateTransactionRequest request, string userId); /// /// 获取交易列表 /// Task> GetTransactionsAsync(string portfolioId, GetTransactionsRequest request, string userId); /// /// 获取策略信号 /// Task GetStrategySignalAsync(string portfolioId, string userId); /// /// 删除投资组合 /// Task DeletePortfolioAsync(string portfolioId, string userId); /// /// 更新投资组合 /// Task UpdatePortfolioAsync(string portfolioId, UpdatePortfolioRequest request, string userId); /// /// 创建投资组合(含用户验证和币种校验) /// Task CreatePortfolioWithValidationAsync(CreatePortfolioRequest request, string userId); /// /// 回填净值历史 /// Task BackfillNavHistoryAsync(string portfolioId, string userId, bool force = false); /// /// 获取用户总资产 /// Task GetTotalAssetsAsync(string userId); }