refactor(accrual): 抽取BuildSegmentRates共享分段取率+清理needPrice死参数
- 抽取 BuildSegmentRates:统一单利/复利分段取率循环,参数化 fetchAfterDate (单利传 ValueDate 仅取新段,复利传 null 全程取) - 修复 BuildSegmentRates static→instance:访问实例属性 IndexFixer - 清理 CalcDaily 层 needPrice 死参数:4个 CalcDaily* 方法签名移除 needPrice;上层 CalcSwapInterests/GetInterests 保留 (virtual seam/位置参数兼容) - 修复 6 处调用点 needPrice 参数传递 - 新增影子测试:单利+FR007浮动+部分平仓+历史归档,验证 segmentRates 一致 - 新增 TdCarryInCharacterizationTest:钉死部分平仓 TdInterestAmount carry-in 行为 测试: 511通过 / 7预存在失败(数据依赖) / 9跳过
This commit is contained in:
@@ -509,7 +509,7 @@ namespace YLErp.Modules.SwapModule
|
||||
decimal tdInterestAmount = 0m;
|
||||
|
||||
service.CalcDailyCompoundInterestByEod(preEod, resetDate, startDate, position,
|
||||
principal, principal, flowEvent, AnnualDays, false, 0.013502m, 1m,
|
||||
principal, principal, flowEvent, AnnualDays, 0.013502m, 1m,
|
||||
ref interestAmount, ref tdInterestAmount);
|
||||
|
||||
AssertDecimal(principal + pendingInterest, flowEvent.InterestPrincipal,
|
||||
|
||||
Reference in New Issue
Block a user