Home > Back-end >  Drools condition matching problem, big help
Drools condition matching problem, big help

Time:04-26

DRL rule I'm such a definition:
Rule "callMeterPoweroffEvent
"Agenda - group "poweroffCheck
"The when
$fact: (KieFlowFact (actIndex & lt; 0)
The or KieFlowFact (execResult! . FlowActName==FlowActEnum. PoweroffCheckAct. CALL_METER_POWEROFF_EVENT, execResult# FlowActExecResult. The resultCode!=0, execTimes & lt; 5)
)
Then
$fact. SetStatus (KieFlowFact. Running);
CallMeterPoweroffEvent $fact. SetCurrRuleName (" ");
$fact. SetSyncType (KieFlowFact. Async);
$fact. SetExecClassName (" com. Xinlian. WorkFlowServer. Util. PoweroffCheckActExecutor ");
CallMeterPoweroffEvent $fact. SetExecMethod (" ");
CallMeterPoweroffEventBack $fact. SetBackHandleMethod (" ");

End

My KieFlowFact object
{" actIndex ": 1," agendaGroup ":" poweroffCheck ", "flowId:" 410000002020596, "matchStatus" : "0"}
It is can match the rule of

{" actIndex ": 0," agendaGroup ":" poweroffCheck ", "execResult" : {" flowActName ":" callMeterPoweroffEvent ", "nextExecTime:" 1619337250000, "the resultCode:" 304, "suspend" : true}, "execTimes" : 0, "flowId:" 410000002020596, "matchStatus" : "0"}
This object is what can't match?? To solve the definition is my DRL is there a problem
  • Related