From f33647c5bec978890c05d6282b0079c5b423480c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E5=90=8D=E9=94=90?= <1565842059@qq.com> Date: Thu, 20 Aug 2026 16:38:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=90=88=E5=B9=B6=E5=90=8E=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- YLErpDAL/Modules/SwapModule/SwapDealService.cs | 2 +- YLErpDAL/Modules/SwapModule/SwapEodPositionService.cs | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/YLErpDAL/Modules/SwapModule/SwapDealService.cs b/YLErpDAL/Modules/SwapModule/SwapDealService.cs index 5772c6ba..232622b4 100644 --- a/YLErpDAL/Modules/SwapModule/SwapDealService.cs +++ b/YLErpDAL/Modules/SwapModule/SwapDealService.cs @@ -408,7 +408,7 @@ namespace YLErp.Modules.SwapModule // EOD 恢复会改变入场基准和有效平仓数量;按当前平仓价重算前端派生盈亏。 // FloatPnlSum 是只读属性,由 MarkClosePnl、费用和分红自动派生,不能直接写入。 - RecalculateNormalizedUnwindAmounts(unwindData); + UnwindNormalizer.RecalculateNormalizedUnwindAmounts(unwindData); } return true; } diff --git a/YLErpDAL/Modules/SwapModule/SwapEodPositionService.cs b/YLErpDAL/Modules/SwapModule/SwapEodPositionService.cs index 07bbac84..3e1a6350 100644 --- a/YLErpDAL/Modules/SwapModule/SwapEodPositionService.cs +++ b/YLErpDAL/Modules/SwapModule/SwapEodPositionService.cs @@ -791,18 +791,18 @@ namespace YLErp.Modules.SwapModule position.PosiQuantity, position.ContractSize, shortRatio); - position.PosiMtmPnL = RoundMoney(MtmCalc.UnrealizedPnl( + position.PosiMtmPnL = EodPnlCalculator.RoundMoney(MtmCalc.UnrealizedPnl( position.UnderlyingPrice, position.PosiGrossPrice, position.PosiQuantity, position.ContractSize, shortRatio, directionRatio)); - position.PosiProfitSum = RoundMoney(MtmCalc.ReturnLegProfitSum( + position.PosiProfitSum = EodPnlCalculator.RoundMoney(MtmCalc.ReturnLegProfitSum( position.PosiMtmPnL, position.PosiDividendSum, position.PosiFeePending)); - position.SwapPositionValue = RoundMoney(PositionValueCalc.Calc( + position.SwapPositionValue = EodPnlCalculator.RoundMoney(PositionValueCalc.Calc( position.InterestProfitSum, position.PosiProfitSum)); position.PosiStatus = position.PosiQuantity == 0 ? 1 : 0;