在下面的 Drools 文件中,我在 when 表达式中加入了两个查询,并打印了匹配的结果。
import com.demo.drools.*;
rule "demo"
when
$book: BlockTrade()
$buys : Trade(type=="buy") from $book.trades
$sells : Trade(type=="sell", $buys.id==id,
$buys.price==price,
$buys.trader==trader) from $book.trades
then
System.out.println("buys: " + $buys);
System.out.println("sells: " + $sells);
end
它工作正常,但我想以不匹配的原因记录所有不匹配的交易。
例如:
交易 id=1 不匹配,因为 $buys.type="both" 不匹配 $buys 或 $sells 中的任何交易
// 或者
交易 id=2 不匹配,因为 $buys.price=50,并且 $buys.trader="John" 不匹配任何 $sells
如何实施?
芜湖不芜
相关分类