Merge branch 'glms/feature/dotnumber' into 'glms/feature/1.4.2'

fix(settlement): 修复预付金计算中的精度问题

See merge request otc-dev/zszq-trs!4
This commit is contained in:
张名锐
2026-08-04 05:14:12 +00:00
@@ -42,8 +42,8 @@ namespace YLErp.Modules.EodModule.SettlementModule
var currencyProvider = _context.EodCurrencyProvider;
List<int> marginTypes = new List<int>() { (int)InterestModeEnum., (int)InterestModeEnum. };
//预付金可取上浮比率
var marginRatio = _context.SystemValue.MarginRatio ?? 0.15;
var marginMaxRatio = marginRatio + 0.02;
var marginRatio = Math.Round((decimal)(_context.SystemValue.MarginRatio ?? 0.15), 2, MidpointRounding.AwayFromZero);
var marginMaxRatio = marginRatio + 0.02m;
var preBalanceDate = _context.PreSettleDate;
var preClientbalancedailys = DbContext.ClientBalanceDaily.Where(t => t.BalanceDate == preBalanceDate).ToList();
if (reqClientIds != null && reqClientIds.Any())
@@ -946,7 +946,7 @@ namespace YLErp.Modules.EodModule.SettlementModule
}
}
//可取预付金为预付金余额 - 应缴预付金(上浮2%) 20220207新增减去互换预付金容忍额
AdvisableMargin = Math.Max(MarginBalance + (PayableMargin - SwapUnPayableMargin) * marginMaxRatio / marginRatio, 0);
AdvisableMargin = Math.Max(MarginBalance + (PayableMargin - SwapUnPayableMargin) * (double)(marginMaxRatio / marginRatio), 0);
//计算追保金额 维持预付金带方向 所以计算追保金额是 为相加
var IsTradeCredit = (client.IsTradeCredit ?? 0) == 1;
@@ -1378,4 +1378,4 @@ namespace YLErp.Modules.EodModule.SettlementModule
}
}
}
}
}