[jboss-svn-commits] JBL Code SVN: r32222 - labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Mar 25 16:16:25 EDT 2010
Author: ge0ffrey
Date: 2010-03-25 16:16:24 -0400 (Thu, 25 Mar 2010)
New Revision: 32222
Added:
labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/DayOffRequest.java
labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/DayOnRequest.java
labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/Shift.java
labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftOffRequest.java
labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftOnRequest.java
Modified:
labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/NurseAssignment.java
labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/NurseRoster.java
Log:
nurse rostering: shift, requests, nurseAssignment
Copied: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/DayOffRequest.java (from rev 32200, labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftDate.java)
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/DayOffRequest.java (rev 0)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/DayOffRequest.java 2010-03-25 20:16:24 UTC (rev 32222)
@@ -0,0 +1,44 @@
+package org.drools.planner.examples.nurserostering.domain;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import org.apache.commons.lang.builder.CompareToBuilder;
+import org.drools.planner.examples.common.domain.AbstractPersistable;
+
+/**
+ * @author Geoffrey De Smet
+ */
+ at XStreamAlias("DayOffRequest")
+public class DayOffRequest extends AbstractPersistable implements Comparable<DayOffRequest> {
+
+ private Employee employee;
+ private ShiftDate shiftDate;
+
+ public Employee getEmployee() {
+ return employee;
+ }
+
+ public void setEmployee(Employee employee) {
+ this.employee = employee;
+ }
+
+ public ShiftDate getShiftDate() {
+ return shiftDate;
+ }
+
+ public void setShiftDate(ShiftDate shiftDate) {
+ this.shiftDate = shiftDate;
+ }
+
+ public int compareTo(DayOffRequest other) {
+ return new CompareToBuilder()
+ .append(employee, other.employee)
+ .append(shiftDate, other.shiftDate)
+ .toComparison();
+ }
+
+ @Override
+ public String toString() {
+ return shiftDate + "_OFF_" + employee;
+ }
+
+}
Added: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/DayOnRequest.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/DayOnRequest.java (rev 0)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/DayOnRequest.java 2010-03-25 20:16:24 UTC (rev 32222)
@@ -0,0 +1,44 @@
+package org.drools.planner.examples.nurserostering.domain;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import org.apache.commons.lang.builder.CompareToBuilder;
+import org.drools.planner.examples.common.domain.AbstractPersistable;
+
+/**
+ * @author Geoffrey De Smet
+ */
+ at XStreamAlias("DayOnRequest")
+public class DayOnRequest extends AbstractPersistable implements Comparable<DayOnRequest> {
+
+ private Employee employee;
+ private ShiftDate shiftDate;
+
+ public Employee getEmployee() {
+ return employee;
+ }
+
+ public void setEmployee(Employee employee) {
+ this.employee = employee;
+ }
+
+ public ShiftDate getShiftDate() {
+ return shiftDate;
+ }
+
+ public void setShiftDate(ShiftDate shiftDate) {
+ this.shiftDate = shiftDate;
+ }
+
+ public int compareTo(DayOnRequest other) {
+ return new CompareToBuilder()
+ .append(employee, other.employee)
+ .append(shiftDate, other.shiftDate)
+ .toComparison();
+ }
+
+ @Override
+ public String toString() {
+ return shiftDate + "_ON_" + employee;
+ }
+
+}
Modified: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/NurseAssignment.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/NurseAssignment.java 2010-03-25 19:39:44 UTC (rev 32221)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/NurseAssignment.java 2010-03-25 20:16:24 UTC (rev 32222)
@@ -7,11 +7,6 @@
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.drools.planner.examples.common.domain.AbstractPersistable;
-import org.drools.planner.examples.curriculumcourse.domain.Course;
-import org.drools.planner.examples.curriculumcourse.domain.Curriculum;
-import org.drools.planner.examples.curriculumcourse.domain.Day;
-import org.drools.planner.examples.curriculumcourse.domain.Period;
-import org.drools.planner.examples.curriculumcourse.domain.Room;
/**
* @author Geoffrey De Smet
@@ -19,81 +14,43 @@
@XStreamAlias("NurseAssignment")
public class NurseAssignment extends AbstractPersistable implements Comparable<NurseAssignment> {
-// private Course course;
-// private int lectureIndexInCourse;
-//
-// // Changed by moves, between score calculations.
-// private Period period;
-// private Room room;
-//
-// public Course getCourse() {
-// return course;
-// }
-//
-// public void setCourse(Course course) {
-// this.course = course;
-// }
-//
-// public int getLectureIndexInCourse() {
-// return lectureIndexInCourse;
-// }
-//
-// public void setLectureIndexInCourse(int lectureIndexInCourse) {
-// this.lectureIndexInCourse = lectureIndexInCourse;
-// }
-//
-// public Period getPeriod() {
-// return period;
-// }
-//
-// public void setPeriod(Period period) {
-// this.period = period;
-// }
-//
-// public Room getRoom() {
-// return room;
-// }
-//
-// public void setRoom(Room room) {
-// this.room = room;
-// }
-//
-//
-// public String getLabel() {
-// return course + "-" + lectureIndexInCourse;
-// }
-//
-// public int getStudentSize() {
-// return course.getStudentSize();
-// }
-//
-// public List<Curriculum> getCurriculumList() {
-// return course.getCurriculumList();
-// }
-//
-// public Day getDay() {
-// return period.getDay();
-// }
-//
-// public int getTimeslotIndex() {
-// return period.getTimeslot().getTimeslotIndex();
-// }
+ private Shift shift;
+ // Changed by moves, between score calculations.
+ private Employee employee;
+
+ public Shift getShift() {
+ return shift;
+ }
+
+ public void setShift(Shift shift) {
+ this.shift = shift;
+ }
+
+ public Employee getEmployee() {
+ return employee;
+ }
+
+ public void setEmployee(Employee employee) {
+ this.employee = employee;
+ }
+
+ public String getLabel() {
+ return shift + "_" + employee;
+ }
+
public int compareTo(NurseAssignment other) {
return new CompareToBuilder()
-// .append(period, other.period)
-// .append(room, other.room)
-// .append(course, other.course)
+ .append(shift, other.shift)
+ .append(employee, other.employee)
.toComparison();
}
public NurseAssignment clone() {
NurseAssignment clone = new NurseAssignment();
clone.id = id;
-// clone.course = course;
-// clone.lectureIndexInCourse = lectureIndexInCourse;
-// clone.period = period;
-// clone.room = room;
+ clone.shift = shift;
+ clone.employee = employee;
return clone;
}
@@ -109,9 +66,8 @@
NurseAssignment other = (NurseAssignment) o;
return new EqualsBuilder()
.append(id, other.id)
-// .append(course, other.course)
-// .append(period, other.period)
-// .append(room, other.room)
+ .append(shift, other.shift)
+ .append(employee, other.employee)
.isEquals();
} else {
return false;
@@ -126,16 +82,14 @@
public int solutionHashCode() {
return new HashCodeBuilder()
.append(id)
-// .append(course)
-// .append(period)
-// .append(room)
+ .append(shift)
+ .append(employee)
.toHashCode();
}
@Override
public String toString() {
- return id.toString();
-// return course + "-" + lectureIndexInCourse + " @ " + period + " + " + room;
+ return shift + "_" + employee;
}
}
Modified: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/NurseRoster.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/NurseRoster.java 2010-03-25 19:39:44 UTC (rev 32221)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/NurseRoster.java 2010-03-25 20:16:24 UTC (rev 32222)
@@ -28,6 +28,11 @@
private List<Employee> employeeList;
private List<SkillProficiency> skillProficiencyList;
private List<ShiftDate> shiftDateList;
+ private List<Shift> shiftList;
+ private List<DayOffRequest> dayOffRequestList;
+ private List<DayOnRequest> dayOnRequestList;
+ private List<ShiftOffRequest> shiftOffRequestList;
+ private List<ShiftOnRequest> shiftOnRequestList;
private List<NurseAssignment> nurseAssignmentList;
@@ -105,6 +110,46 @@
this.shiftDateList = shiftDateList;
}
+ public List<Shift> getShiftList() {
+ return shiftList;
+ }
+
+ public void setShiftList(List<Shift> shiftList) {
+ this.shiftList = shiftList;
+ }
+
+ public List<DayOffRequest> getDayOffRequestList() {
+ return dayOffRequestList;
+ }
+
+ public void setDayOffRequestList(List<DayOffRequest> dayOffRequestList) {
+ this.dayOffRequestList = dayOffRequestList;
+ }
+
+ public List<DayOnRequest> getDayOnRequestList() {
+ return dayOnRequestList;
+ }
+
+ public void setDayOnRequestList(List<DayOnRequest> dayOnRequestList) {
+ this.dayOnRequestList = dayOnRequestList;
+ }
+
+ public List<ShiftOffRequest> getShiftOffRequestList() {
+ return shiftOffRequestList;
+ }
+
+ public void setShiftOffRequestList(List<ShiftOffRequest> shiftOffRequestList) {
+ this.shiftOffRequestList = shiftOffRequestList;
+ }
+
+ public List<ShiftOnRequest> getShiftOnRequestList() {
+ return shiftOnRequestList;
+ }
+
+ public void setShiftOnRequestList(List<ShiftOnRequest> shiftOnRequestList) {
+ this.shiftOnRequestList = shiftOnRequestList;
+ }
+
public List<NurseAssignment> getNurseAssignmentList() {
return nurseAssignmentList;
}
@@ -128,7 +173,7 @@
public Collection<? extends Object> getFacts() {
List<Object> facts = new ArrayList<Object>();
- facts.add(skillList);
+ facts.addAll(skillList);
facts.addAll(shiftTypeList);
facts.addAll(shiftTypeSkillRequirementList);
facts.addAll(shiftPatternList);
@@ -136,6 +181,11 @@
facts.addAll(employeeList);
facts.addAll(skillProficiencyList);
facts.addAll(shiftDateList);
+ facts.addAll(shiftList);
+ facts.addAll(dayOffRequestList);
+ facts.addAll(dayOnRequestList);
+ facts.addAll(shiftOffRequestList);
+ facts.addAll(shiftOnRequestList);
// TODO add more properties
@@ -160,6 +210,11 @@
clone.employeeList = employeeList;
clone.skillProficiencyList = skillProficiencyList;
clone.shiftDateList = shiftDateList;
+ clone.shiftList = shiftList;
+ clone.dayOffRequestList = dayOffRequestList;
+ clone.dayOnRequestList = dayOnRequestList;
+ clone.shiftOffRequestList = shiftOffRequestList;
+ clone.shiftOnRequestList = shiftOnRequestList;
// TODO add more properties
Added: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/Shift.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/Shift.java (rev 0)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/Shift.java 2010-03-25 20:16:24 UTC (rev 32222)
@@ -0,0 +1,44 @@
+package org.drools.planner.examples.nurserostering.domain;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import org.apache.commons.lang.builder.CompareToBuilder;
+import org.drools.planner.examples.common.domain.AbstractPersistable;
+
+/**
+ * @author Geoffrey De Smet
+ */
+ at XStreamAlias("Shift")
+public class Shift extends AbstractPersistable implements Comparable<Shift> {
+
+ private ShiftDate shiftDate;
+ private ShiftType shiftType;
+
+ public ShiftDate getShiftDate() {
+ return shiftDate;
+ }
+
+ public void setShiftDate(ShiftDate shiftDate) {
+ this.shiftDate = shiftDate;
+ }
+
+ public ShiftType getShiftType() {
+ return shiftType;
+ }
+
+ public void setShiftType(ShiftType shiftType) {
+ this.shiftType = shiftType;
+ }
+
+ public int compareTo(Shift other) {
+ return new CompareToBuilder()
+ .append(shiftDate, other.shiftDate)
+ .append(shiftType, other.shiftType)
+ .toComparison();
+ }
+
+ @Override
+ public String toString() {
+ return shiftDate + "_" + shiftType;
+ }
+
+}
Added: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftOffRequest.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftOffRequest.java (rev 0)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftOffRequest.java 2010-03-25 20:16:24 UTC (rev 32222)
@@ -0,0 +1,44 @@
+package org.drools.planner.examples.nurserostering.domain;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import org.apache.commons.lang.builder.CompareToBuilder;
+import org.drools.planner.examples.common.domain.AbstractPersistable;
+
+/**
+ * @author Geoffrey De Smet
+ */
+ at XStreamAlias("ShiftOffRequest")
+public class ShiftOffRequest extends AbstractPersistable implements Comparable<ShiftOffRequest> {
+
+ private Employee employee;
+ private Shift shift;
+
+ public Employee getEmployee() {
+ return employee;
+ }
+
+ public void setEmployee(Employee employee) {
+ this.employee = employee;
+ }
+
+ public Shift getShift() {
+ return shift;
+ }
+
+ public void setShift(Shift shift) {
+ this.shift = shift;
+ }
+
+ public int compareTo(ShiftOffRequest other) {
+ return new CompareToBuilder()
+ .append(employee, other.employee)
+ .append(shift, other.shift)
+ .toComparison();
+ }
+
+ @Override
+ public String toString() {
+ return shift + "_OFF_" + employee;
+ }
+
+}
Added: labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftOnRequest.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftOnRequest.java (rev 0)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-examples/src/main/java/org/drools/planner/examples/nurserostering/domain/ShiftOnRequest.java 2010-03-25 20:16:24 UTC (rev 32222)
@@ -0,0 +1,44 @@
+package org.drools.planner.examples.nurserostering.domain;
+
+import com.thoughtworks.xstream.annotations.XStreamAlias;
+import org.apache.commons.lang.builder.CompareToBuilder;
+import org.drools.planner.examples.common.domain.AbstractPersistable;
+
+/**
+ * @author Geoffrey De Smet
+ */
+ at XStreamAlias("ShiftOnRequest")
+public class ShiftOnRequest extends AbstractPersistable implements Comparable<ShiftOnRequest> {
+
+ private Employee employee;
+ private Shift shift;
+
+ public Employee getEmployee() {
+ return employee;
+ }
+
+ public void setEmployee(Employee employee) {
+ this.employee = employee;
+ }
+
+ public Shift getShift() {
+ return shift;
+ }
+
+ public void setShift(Shift shift) {
+ this.shift = shift;
+ }
+
+ public int compareTo(ShiftOnRequest other) {
+ return new CompareToBuilder()
+ .append(employee, other.employee)
+ .append(shift, other.shift)
+ .toComparison();
+ }
+
+ @Override
+ public String toString() {
+ return shift + "_ON_" + employee;
+ }
+
+}
More information about the jboss-svn-commits
mailing list