using AssetManager.Models.DTOs;
namespace AssetManager.Services;
///
/// 组合净值历史服务接口
///
public interface IPortfolioNavService
{
///
/// 获取组合净值历史曲线
///
Task GetNavHistoryAsync(string portfolioId, string userId, NavHistoryRequest request);
///
/// 计算并保存单个组合当日净值
///
Task CalculateAndSaveDailyNavAsync(string portfolioId);
///
/// 批量计算所有组合当日净值(定时任务调用)
///
Task CalculateAllPortfoliosDailyNavAsync();
///
/// 回填历史净值(基于交易记录完整计算)
///
Task BackfillNavHistoryAsync(string portfolioId, string userId, bool force = false);
///
/// 删除指定日期之后的净值记录(交易修改后重新计算)
///
Task DeleteNavHistoryAfterDateAsync(string portfolioId, DateTime date);
}