[jboss-svn-commits] JBL Code SVN: r27802 - labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/pas/solver/solution/initializer.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jul 9 15:44:17 EDT 2009
Author: ge0ffrey
Date: 2009-07-09 15:44:17 -0400 (Thu, 09 Jul 2009)
New Revision: 27802
Modified:
labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/pas/solver/solution/initializer/PatientAdmissionScheduleStartingSolutionInitializer.java
Log:
pas: initializer weight sorting yet another improvement 2
Modified: labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/pas/solver/solution/initializer/PatientAdmissionScheduleStartingSolutionInitializer.java
===================================================================
--- labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/pas/solver/solution/initializer/PatientAdmissionScheduleStartingSolutionInitializer.java 2009-07-09 19:36:45 UTC (rev 27801)
+++ labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/pas/solver/solution/initializer/PatientAdmissionScheduleStartingSolutionInitializer.java 2009-07-09 19:44:17 UTC (rev 27802)
@@ -110,13 +110,12 @@
BedDesignation bedDesignation = new BedDesignation();
bedDesignation.setId(admissionPart.getId());
bedDesignation.setAdmissionPart(admissionPart);
- int weight = 0;
+ int disallowedCount = 0;
for (Room room : patientAdmissionSchedule.getRoomList()) {
- weight += (room.getCapacity() * room.countDisallowedAdmissionPart(admissionPart));
+ disallowedCount += (room.getCapacity() * room.countDisallowedAdmissionPart(admissionPart));
}
- weight *= 1000;
- weight += bedDesignation.getAdmissionPart().getNightCount();
- initializationWeightList.add(new BedDesignationInitializationWeight(bedDesignation, weight));
+ initializationWeightList.add(new BedDesignationInitializationWeight(bedDesignation,
+ disallowedCount, bedDesignation.getAdmissionPart().getNightCount()));
}
Collections.sort(initializationWeightList);
List<BedDesignation> bedDesignationList = new ArrayList<BedDesignation>(
@@ -130,11 +129,13 @@
private class BedDesignationInitializationWeight implements Comparable<BedDesignationInitializationWeight> {
private BedDesignation bedDesignation;
- private int weight;
+ private int disallowedCount;
+ private int nightCount;
- private BedDesignationInitializationWeight(BedDesignation bedDesignation, int weight) {
+ private BedDesignationInitializationWeight(BedDesignation bedDesignation, int disallowedCount, int nightCount) {
this.bedDesignation = bedDesignation;
- this.weight = weight;
+ this.disallowedCount = disallowedCount;
+ this.nightCount = nightCount;
}
public BedDesignation getBedDesignation() {
@@ -143,7 +144,8 @@
public int compareTo(BedDesignationInitializationWeight other) {
return -new CompareToBuilder()
- .append(weight, other.weight)
+ .append(disallowedCount, other.disallowedCount)
+ .append(nightCount, other.nightCount)
.toComparison();
}
More information about the jboss-svn-commits
mailing list