diff --git a/Plugins/YLErp.Plugins.ZheShang/DocumentGenerator/TradeConfirmationGenerator.cs b/Plugins/YLErp.Plugins.ZheShang/DocumentGenerator/TradeConfirmationGenerator.cs index 9a6a12e0..1247005d 100644 --- a/Plugins/YLErp.Plugins.ZheShang/DocumentGenerator/TradeConfirmationGenerator.cs +++ b/Plugins/YLErp.Plugins.ZheShang/DocumentGenerator/TradeConfirmationGenerator.cs @@ -121,6 +121,7 @@ namespace YLErp.Plugins.ShanXi.DocumentGenerator // 计算初始预付金率和维持预付金率(加权) decimal initialMarginRate = 0; decimal maintainMarginRate = 0; + var exerciseDate= trades.Select(x => x.ExerciseDate).OrderBy(o=>o).FirstOrDefault(); foreach (var trade in trades) { var swapPositions = Context.GetSwapPositions(trade.id, true); @@ -147,7 +148,7 @@ namespace YLErp.Plugins.ShanXi.DocumentGenerator dic["成交日期"] = trade.TradeDate?.ToString("yyyy年M月d日"); dic["开始日期"] = trade.StartDate?.ToString("yyyy年M月d日"); - dic["到期日期"] = trade.ExerciseDate?.ToString("yyyy年M月d日"); + dic["到期日期"] = exerciseDate?.ToString("yyyy年M月d日"); bool posiLong = swapPosition?.PositionType == (int)PositionTypeFlag.Short ? false : true; var interestRate = interestMargin?.InterestRateDefault * 100 ?? 0; dic["多头约定利率"] = "不适用"; diff --git a/YLErpDAL/Modules/TradeModule/TradeOAService.cs b/YLErpDAL/Modules/TradeModule/TradeOAService.cs index 736594db..d1418c2d 100644 --- a/YLErpDAL/Modules/TradeModule/TradeOAService.cs +++ b/YLErpDAL/Modules/TradeModule/TradeOAService.cs @@ -175,6 +175,7 @@ namespace YLErp.Modules.TradeModule && t.TradeDate == trade.TradeDate && t.ValidState != "InValid"); + var exerciseDate = sameClientTrades.Select(x => x.ExerciseDate).OrderBy(o => o).FirstOrDefault(); // 3. 关联持仓表,筛选相同多空方向的持仓 var matchingPositions = from t in sameClientTrades join sp in DbContext.swap_position.AsNoTracking() @@ -228,7 +229,7 @@ namespace YLErp.Modules.TradeModule CKDX1 = "", CKDX2 = "", LB = "", - QSBGNR = $"各位领导:\n\t\t经友好协商,我司拟与交易对手开展以下场外利率收益互换交易:\n浮动收益交付方\t存款收益接收方\t标的\t方向\t起始日\t到期日\t合约名义本金\t保证金支付方\n浙商证券\t{trade.ClientName}\t{trade.UnderlyingInstrumentTypeCn}\t{posiTypeStr}\t{trade.StartDate?.ToString("yyyy/M/d")}\t{trade.ExerciseDate?.ToString("yyyy/M/d")}\t{totalNotionalPrincipal:N0}元\t{trade.ClientName}\n交易标的满足浙商证券标的池管理要求,交易对手方为非交易商,提供【{(marginRate*100).ToString("0.##")}%】名义本金的履约担保品作为初始保证金。保证金预警线与盯市追保符合内外规要求。", + QSBGNR = $"各位领导:\n\t\t经友好协商,我司拟与交易对手开展以下场外利率收益互换交易:\n浮动收益交付方\t存款收益接收方\t标的\t方向\t起始日\t到期日\t合约名义本金\t保证金支付方\n浙商证券\t{trade.ClientName}\t{trade.UnderlyingInstrumentTypeCn}\t{posiTypeStr}\t{trade.StartDate?.ToString("yyyy/M/d")}\t{exerciseDate?.ToString("yyyy/M/d")}\t{totalNotionalPrincipal:N0}元\t{trade.ClientName}\n交易标的满足浙商证券标的池管理要求,交易对手方为非交易商,提供【{(marginRate*100).ToString("0.##")}%】名义本金的履约担保品作为初始保证金。保证金预警线与盯市追保符合内外规要求。", MX = new object[0], SQMX = new object[0] },