fix(return-leg): PositionValueCalc.ratio 改为 int, 统一方向因子类型

ratio(收取=1/支付=-1)是方向因子, 应该是 int。
和 MtmCalc/DirectionRatio/MarginCalc 的 int 保持一致。

调用点(SwapEodPositionService 4处)原 ratio 是 decimal,
加 (int) 显式转换(值恒为 1或-1, 零精度损失)。

排查确认: 这是唯一的类型不一致, 其他纯函数参数类型均已统一。
验证: 编译0错误, 全量513测试7失败(基线一致)。
This commit is contained in:
hjhan
2026-08-11 16:59:22 +08:00
parent 16c44d3b50
commit 5a7869e0c9
3 changed files with 9 additions and 9 deletions
@@ -9,7 +9,7 @@ namespace YLErp.Modules.SwapModule.ReturnLegs;
/// </summary>
public static class PositionValueCalc
{
/// <summary>持仓价值 = 利息端 × 方向因子 + 浮动端。</summary>
public static decimal Calc(decimal interestProfitSum, decimal posiProfitSum, decimal ratio = 1m)
/// <summary>持仓价值 = 利息端 × 方向因子 + 浮动端。ratio: 收取=1, 支付=-1。</summary>
public static decimal Calc(decimal interestProfitSum, decimal posiProfitSum, int ratio = 1)
=> interestProfitSum * ratio + posiProfitSum;
}