feat:风控引擎内存上下文改为查询数据库,修改注释中的相应规则,
This commit is contained in:
@@ -5183,29 +5183,6 @@ namespace YLErp.Modules.RiskModule
|
||||
TradeId = tradeId,
|
||||
TriggerPoint = "BOOK_CONFIRM"
|
||||
};
|
||||
riskContext.DataMap["trade"] = tradeObj;
|
||||
var sameUnderlyingTotalNotional = DbContext.trade
|
||||
.Where(t => t.ValidState != "InValid"
|
||||
&& t.UnderlyingId == tradeObj.UnderlyingId
|
||||
&& t.ParentTradeId == 0
|
||||
&& (ConsTrade.NeedMarginTradeStatusList.Contains(t.TradeStatus) || t.TradeStatus == "审批中"))
|
||||
.Sum(t => (double?)t.StockEqvNotional) ?? 0d;
|
||||
riskContext.DataMap["same_underlying_total_notional"] = sameUnderlyingTotalNotional;
|
||||
var underlying = DataCacheProvider.GetUnderlyingDataSource().GetData(tradeObj.UnderlyingCode);
|
||||
if (underlying != null)
|
||||
{
|
||||
if (underlying.IsBond() && !string.IsNullOrEmpty(underlying.ExJson))
|
||||
{
|
||||
var bond = JsonHelper.Deserialize<UnderlyingBond>(underlying.ExJson);
|
||||
if (bond != null)
|
||||
{
|
||||
underlying.IssueSize = bond.IssueSize;
|
||||
underlying.UnderlyingFullName = bond.UnderlyingFullName;
|
||||
underlying.UnderlyingIssuer = bond.UnderlyingIssuer;
|
||||
}
|
||||
}
|
||||
riskContext.DataMap["underlying_manager"] = underlying;
|
||||
}
|
||||
var riskResult = riskEngine.EvaluateRisk(riskContext, "BOOK_CONFIRM");
|
||||
|
||||
_logger.Info($"[风控引擎] 簿记交易确认 - TradeId: {tradeId}, Passed: {riskResult.Passed}, Blocked: {riskResult.Blocked}, NeedApproval: {riskResult.NeedApproval}, ShowTip: {riskResult.ShowTip}");
|
||||
|
||||
Reference in New Issue
Block a user