From: Tomas M. <to...@us...> - 2011-01-25 02:53:24
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/solver/studentsct In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv23527/JavaSource/org/unitime/timetable/solver/studentsct Modified Files: StudentSectioningDatabaseLoader.java Log Message: If the class limit can be tweaked (if there is more students enrolled than the class limit), check the course limit too (and tweak if needed). Index: StudentSectioningDatabaseLoader.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/solver/studentsct/StudentSectioningDatabaseLoader.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** StudentSectioningDatabaseLoader.java 14 Jan 2011 18:24:29 -0000 1.3 --- StudentSectioningDatabaseLoader.java 25 Jan 2011 02:53:16 -0000 1.4 *************** *** 576,579 **** --- 576,587 ---- hasLimit = true; } + if (enrl.getCourse() != null && enrl.getCourse().getLimit() >= 0 && enrl.getCourse().getLimit() < 1 + enrl.getCourse().getEnrollments().size()) { + iProgress.info(" course " + enrl.getCourse().getName() + " has no space available (limit is "+ enrl.getCourse().getLimit() + ")"); + if (iTweakLimits) { + enrl.getCourse().setLimit(enrl.getCourse().getEnrollments().size() + 1); + iProgress.info(" limit increased to "+enrl.getCourse().getLimit()); + } + hasLimit = true; + } if (!hasLimit && !hasOverlap) { for (Iterator<Enrollment> i = r.getModel().conflictValues(r.getInitialAssignment()).iterator(); i.hasNext();) { |