0

工作规则:

rule "it is morning before lunch"
    ruleflow-group "define_period"
    when
        $process: WorkflowProcessInstance()
        Hour(value >=6 && < 12) from $process.getVariable("hourOfDay")
    then 
        System.out.println("Its morning");
end

上课时间:

public class Hour {
    private Integer value;
    public Hour() {}
    public Hour(Integer value) {
        this.value=value;
    }
    public void setValue(Integer value) {
        this.value = value;
    }

    public Integer getValue() {
        return value;
    }

    @Override
    public String toString() {
        return value+"h";
    }
}

$process 还包含另一个变量 - 'period',它是'String' 类型的。我想使用它而不是比较小时。我该怎么做。我试过更换:

Hour(value >=6 && < 12) from $process.getVariable("hourOfDay")

String(this == "morning") from $process.getVariable("period")

String(value == "morning") from $process.getVariable("period")

但这不起作用。

如果您需要更多信息,请与我们联系。谢谢。

4

1 回答 1

0

尝试使用

$process: WorkflowProcessInstance( period == 'morning')

代替

 $process: WorkflowProcessInstance()
于 2013-07-15T06:13:44.473 回答