Drools决策表-如何在同一条件列中使用多个对象

Drools决策表-如何在同一条件列中使用多个对象,drools,Drools,我有以下POJO: (一) (二) 是否有人可以帮助编写用于编写以下内容的decison表语法: 如果我的发票对象包含任何有效货币 如果我的发票对象不包含任何有效货币 我相信你可以用这种方式做到 条件 条件 条件 行动 $inv:发票详细信息 $validCurr:ValidCurrencies $param==$validCurr.getCurrency()包含($inv.getCurrency()) 真的 真的 真的 /**行动1**/ 真的 真的 假的 /**行动2**/ publ

我有以下POJO:

(一)

(二)

是否有人可以帮助编写用于编写以下内容的decison表语法:

  • 如果我的发票对象包含任何
    有效货币
  • 如果我的发票对象不包含任何
    有效货币

我相信你可以用这种方式做到


条件
条件
条件
行动
$inv:发票详细信息
$validCurr:ValidCurrencies
$param==$validCurr.getCurrency()包含($inv.getCurrency())
真的
真的
真的
/**行动1**/
真的
真的
假的
/**行动2**/
public class InvoiceDetails{
    String currency;

    public String getCurrency(){
       return this.currency;
    }

    public void setCurrency(String currency){
      this.currency = currency;
    }
}
public class ValidCurrencies {

    List<String> currencies = new ArrayList<String>();

    public ValidCurrencies() {
        currencies.add("JPY");
        currencies.add("USD");
        currencies.add("EUR");
        currencies.add("CNY");
    }

    public List<String> getCurrencies() {
        return currencies;
    }

    public void setCurrencies(List<String> currencies) {
        this.currencies = currencies;
    }
}
CONDITION                                        |  ACTION
$inv: InvoiceDetails $validCurr: ValidCurrencies |
$param==$validCurr.getCurrencies().containsAll(Arrays.asList($inv.getCurrency()))
TRUE
FALSE