我对流口水相对较新,我正在拉头发以达到以下情况。
我有一个日期列表,假设10个日期。现在,我必须在这些元素之间应用一组规则,以找到满足所有规则的4个日期的匹配集。
假设以下是规则。我如何在流口水中迭代它,并在提供10个日期中找到四个日期。
date2> date1 + (6W - 4D)
date3> date2 + (4W - 4D)
date4 > date3 + (6M - 4D)
date4 > date1 + (4Y - 4D)
我建议您创建一个知道如何使用日期进行算术的帮助人类。
public class Helper {
public static Date calculate(Date source, String expression) {
//Do the magic
}
}
然后,您可以在规则中使用此助手类,如下:
rule "Find subset"
when
$d1: Date()
$d2: Date(this > Helper.calculate($d1, "6W-4D"))
$d3: Date(this > Helper.calculate($d2, "4W-4D"))
$d4: Date(
this > Helper.calculate($d1, "4Y-4D"),
this > Helper.calculate($d3, "6M-4D")
)
then
//Do whatever you need
end
希望它有帮助,