時間に依存するいくつかのDroolsルールを設定しています。つまり、指定された時間が午前8時から午後5時までの場合、特定の結果を返す必要があります。これらの時間外に別のものを返すべきです。Drools:Joda DateTimeの比較
私が渡しているオブジェクトには、ルールで使用する必要があるJoda DateTimeがあります。
現時点では、このJoda DateTimeオブジェクトを24時間の数値に整形して整数比較を使用できます(つまり、> 800と< 1700)。私は例を捜したが、残念なことにDroolsでタイムスタンプ比較の言葉がほとんど見つからなかったので、私はそれを行う他の方法は考えられませんでした。
ありがとうございました。
スプレンディッド制約でそれを使用することです。ありがとうございました! – GarlicBread
更新:関数の構文を少し変更する必要がありましたが、適切なトラック(2つの別々の関数に分割されています)にありました: function boolean isBefore(DateTime dateTime、int checkTime){ int hhmm = dateTime.hourOfDay get()* 100 + dateTime.minuteOfHour()。get(); return hhmm <= checkTime; } function boolean isAfter(DateTime dateTime、int checkTime){ int hhmm = dateTime.hourOfDay()。get()* 100 + dateTime.minuteOfHour()。get(); return hhmm> = checkTime; } – GarlicBread