我是流口水的新手,我想知道如何根据对象的两个属性对集合进行排序。以下对象存储在集合中。
class Schedule{
private String datePlan;
private String orderNumber;
//more fields
}
我尝试通过配置以下规则,但似乎存在问题。
rule "ORDER RULE"
dialect "java"
when
// OrderBy DatePlan asc, OrderNo asc
not Schedule(planYearMonth == $schedule.planYearMonth,
carSeries == $schedule.carSeries,
porCode == $schedule.porCode,
productionFamilyCode == $schedule.productionFamilyCode,
endItemModelCode == $schedule.endItemModelCode,
endItemColorCode == $schedule.endItemColorCode,
datePlan < $schedule.datePlan ||
orderNumber< $schedule.orderNumber))
then
retract($order);
retract($schedule);
end
下面的逻辑是存储订单和时间表
rule "insert Orders"
when
$inlist : OrderList( $inIdx : size > 0)
then
for (int i=0; i < $inIdx; i++){
Order order = (Order)$inlist.get(i);
insert(order);
}
retract($inlist);
end
rule "insert Schedules"
when
$inlist : ScheduleList( $inIdx : size > 0)
then
for (int i=0; i < $inIdx; i++){
Schedule schedule = (Schedule)$inlist.get(i);
insert(schedule);
}
retract($inlist);
end