Files
zszq-trs/YLErpDAL/Modules/EodModule/SettlementModule/TradeSwapFlowMoreCheck.cs
T
2024-05-09 14:06:26 +08:00

48 lines
1.7 KiB
C#

using YLErp.Modules.TradeModule.SwapModule;
namespace YLErp.Modules.EodModule.SettlementModule
{
public class TradeSwapFlowMoreCheck : EodSettleServiceBase
{
public const string Step = "合成互换交易";
public TradeSwapFlowMoreCheck(EodSettlementContextBase context) : base(context)
{
}
public void Execute()
{
if (PS.Config.IsGuoJun)
{
try
{
var settleDate = _context.SettleDate;
var service = new SwapTradeFlowMoreImportService(UserInfo);
var clienIds = _context.Request.ClientIds;
List<string> listNumber=new List<string>();
#region 新增客户筛选 tw
if (clienIds != null)
{
listNumber = DbContextFactory.GetClientDbContext(UserInfo).client.Where(n => clienIds.Contains(n.id)).Select(l => l.Number).ToList();
}
#endregion
var tradeNumbers = DbContext.trade_swap_flow_more.Where(x => !x.IsCompose && !x.IsDelete && (x.TradeDate <= settleDate || x.UnwindDate <= settleDate)).Select(x => x.TradeNumber).Distinct().ToList();
if (listNumber.Count>0)
{
tradeNumbers = tradeNumbers.Intersect(listNumber).ToList();
}
tradeNumbers.ForEach(x =>
{
service.HandleSwapTrade(x);
});
}
catch (Exception ex)
{
_context.RaiseError(Step, ex.Message);
}
}
}
}
}