【发布时间】:2020-03-26 22:37:55
【问题描述】:
尝试使用 Optaplanner 创建用于员工(护士)排班的 Java Web 应用程序。我想做一个这样的硬约束:
// 一个护士只能在晚上上夜班,即连续两班可以是 N-X 或 N-N
rule "nightOrOffAfterNightShift"
when
ShiftAssignment(
$employee : employee, employee != null,
$shiftDate : shiftDate,
$lastShift : shift,
$shiftType : shiftType
)
ShiftAssignment(
employee == $employee,
shiftDate.isAfter($shiftDate) == true
)
then
if(shiftType != $shiftType && shift != null)
scoreHolder.addHardConstraintMatch(kcontext, -1);
end
我没有使用 Drools 的经验,这有效吗?
【问题讨论】:
标签: java constraints drools optaplanner