refactor(return-leg): 抽取 PositionValueCalc 持仓价值汇总

SwapEodPositionService 8处 SwapPositionValue inline 公式替换:
- 4处 InterestProfitSum * ratio + PosiProfitSum → PositionValueCalc.Calc(带ratio)
- 4处 InterestProfitSum + PosiProfitSum → PositionValueCalc.Calc(默认ratio=1)

持仓价值 = 利息端收益 + 浮动端收益, 8处副本→1个纯函数。
这是最后一个高性价比的纯函数提取。

验证: 编译0错误, 全量513测试7失败(基线一致)。
This commit is contained in:
hjhan
2026-08-11 16:50:21 +08:00
parent 744f1ae448
commit 16c44d3b50
3 changed files with 48 additions and 8 deletions
@@ -0,0 +1,25 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
using YLErp.Modules.SwapModule.ReturnLegs;
namespace UnitTestProject.Modules.SwapModule.ReturnLegs
{
[TestClass]
public class PositionValueCalcTest
{
[TestMethod]
public void _利息加浮动()
=> Assert.AreEqual(1500m, PositionValueCalc.Calc(1000m, 500m));
[TestMethod]
public void _利息乘1()
=> Assert.AreEqual(1500m, PositionValueCalc.Calc(1000m, 500m, 1m));
[TestMethod]
public void _利息乘负1()
=> Assert.AreEqual(-500m, PositionValueCalc.Calc(1000m, 500m, -1m));
[TestMethod]
public void _等于浮动端()
=> Assert.AreEqual(500m, PositionValueCalc.Calc(0m, 500m));
}
}