1 package SL::DB::Manager::OrderItem;
5 use SL::DB::Helper::Manager;
6 use base qw(SL::DB::Helper::Manager);
8 use SL::DB::Helper::Filtered;
9 use SL::DB::Helper::Paginated;
10 use SL::DB::Helper::Sorted;
12 sub object_class { 'SL::DB::OrderItem' }
14 __PACKAGE__->make_manager_methods;
15 __PACKAGE__->add_filter_specs(
17 my ($key, $value, $prefix) = @_;
20 $prefix . reqdate => $value,
22 $prefix . reqdate => undef,
23 $prefix . 'order.reqdate' => $value,
31 return ( columns => { delivery_date => [ 'deliverydate', ],
32 description => [ 'lower(orderitems.description)', ],
33 partnumber => [ 'part.partnumber', ],
35 ordnumber => [ 'order.ordnumber' ],
36 customer => [ 'lower(customer.name)', ],
37 position => [ 'trans_id', 'runningnumber' ],
38 reqdate => [ 'COALESCE(orderitems.reqdate, order.reqdate)' ],
39 orddate => [ 'order.orddate' ],
40 sellprice => [ 'sellprice' ],
41 discount => [ 'discount' ],
42 transdate => [ 'orderitems.transdate::date', 'order.reqdate' ],
44 default => [ 'position', 1 ],
49 sub default_objects_per_page { 15 }