[jboss-svn-commits] JBL Code SVN: r32391 - labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/nurserostering/solver.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Apr 4 09:01:23 EDT 2010


Author: ge0ffrey
Date: 2010-04-04 09:01:22 -0400 (Sun, 04 Apr 2010)
New Revision: 32391

Modified:
   labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/nurserostering/solver/nurseRosteringScoreRules.drl
Log:
nurse rostering: fix consec working days finally

Modified: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/nurserostering/solver/nurseRosteringScoreRules.drl
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/nurserostering/solver/nurseRosteringScoreRules.drl	2010-04-04 12:57:59 UTC (rev 32390)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/resources/org/drools/planner/examples/nurserostering/solver/nurseRosteringScoreRules.drl	2010-04-04 13:01:22 UTC (rev 32391)
@@ -94,17 +94,16 @@
         EmployeeAssignment(employee == $employee, shiftDateDayIndex > $firstDayIndex, $lastDayIndex : shiftDateDayIndex);
         not EmployeeAssignment(employee == $employee, shiftDateDayIndex == ($lastDayIndex + 1));
 
-
         // There are no free days between the first and last day
         forall($shiftDate : ShiftDate(dayIndex > $firstDayIndex, dayIndex < $lastDayIndex)
                EmployeeAssignment(employee == $employee, shiftDate == $shiftDate)
         );
 
         // There are to many days
-        eval(($lastDayIndex - $firstDayIndex) > $maximumValue);
+        eval(($lastDayIndex - $firstDayIndex + 1) > $maximumValue);
     then
         insertLogical(new IntConstraintOccurrence("maximumConsecutiveWorkingDays", ConstraintType.NEGATIVE_SOFT,
-                (($lastDayIndex - $firstDayIndex) - $maximumValue) * $contractLine.getMaximumWeight(),
+                (($lastDayIndex - $firstDayIndex + 1) - $maximumValue) * $contractLine.getMaximumWeight(),
                 $employee, $firstDayIndex, $lastDayIndex));
 end
 



More information about the jboss-svn-commits mailing list