]> wagnertech.de Git - kivitendo-erp.git/blobdiff - SL/Controller/DeliveryPlan.pm
Chartpicker auch für Steuerzonen und Buchungsgruppen
[kivitendo-erp.git] / SL / Controller / DeliveryPlan.pm
index c68cc4c32e8da842b261b34aebfbdd8905bc255d..411a9940eae3044ed45cb5fd63c40b81cd3ea081 100644 (file)
@@ -5,6 +5,7 @@ use parent qw(SL::Controller::Base);
 
 use Clone qw(clone);
 use SL::DB::OrderItem;
+use SL::DB::Business;
 use SL::Controller::Helper::GetModels;
 use SL::Controller::Helper::ReportGenerator;
 use SL::Locale::String;
@@ -12,7 +13,7 @@ use Carp;
 
 use Rose::Object::MakeMethods::Generic (
   scalar => [ qw(db_args flat_filter) ],
-  'scalar --get_set_init' => [ qw(models all_edit_right mode vc) ],
+  'scalar --get_set_init' => [ qw(models all_edit_right mode vc all_employees all_businesses) ],
 );
 
 __PACKAGE__->run_before(sub { $::auth->assert('delivery_plan'); });
@@ -118,21 +119,28 @@ sub make_filter_summary {
   my ($self) = @_;
   my $vc     = $self->vc;
   my $mode   = $self->mode;
+  my ($business, $employee);
 
   my $filter = $::form->{filter} || {};
   my @filter_strings;
 
+  $business = SL::DB::Business->new(id => $filter->{order}{customer}{"business_id"})->load->description if $filter->{order}{customer}{"business_id"};
+  $employee = SL::DB::Employee->new(id => $filter->{order}{employee_id})->load->name if $filter->{order}{employee_id};
+
   my @filters = (
-    [ $filter->{order}{"ordnumber:substr::ilike"},                $::locale->text('Number')                                             ],
-    [ $filter->{part}{"partnumber:substr::ilike"},                $::locale->text('Part Number')                                        ],
-    [ $filter->{"description:substr::ilike"},                     $::locale->text('Part Description')                                   ],
-    [ $filter->{"reqdate:date::ge"},                              $::locale->text('Delivery Date') . " " . $::locale->text('From Date') ],
-    [ $filter->{"reqdate:date::le"},                              $::locale->text('Delivery Date') . " " . $::locale->text('To Date')   ],
-    [ $filter->{"qty:number"},                                    $::locale->text('Quantity')                                           ],
-    [ $filter->{order}{vendor}{"name:substr::ilike"},             $::locale->text('Vendor')                                             ],
-    [ $filter->{order}{vendor}{"vendornumber:substr::ilike"},     $::locale->text('Vendor Number')                                      ],
-    [ $filter->{order}{customer}{"name:substr::ilike"},           $::locale->text('Customer')                                           ],
-    [ $filter->{order}{customer}{"customernumber:substr::ilike"}, $::locale->text('Customer Number')                                    ],
+    [ $filter->{order}{"ordnumber:substr::ilike"},                    $::locale->text('Number')                                             ],
+    [ $filter->{order}{globalproject}{"projectnumber:substr::ilike"}, $::locale->text('Document Project Number')                            ],
+    [ $filter->{part}{"partnumber:substr::ilike"},                    $::locale->text('Part Number')                                        ],
+    [ $filter->{"description:substr::ilike"},                         $::locale->text('Part Description')                                   ],
+    [ $filter->{"reqdate:date::ge"},                                  $::locale->text('Delivery Date') . " " . $::locale->text('From Date') ],
+    [ $filter->{"reqdate:date::le"},                                  $::locale->text('Delivery Date') . " " . $::locale->text('To Date')   ],
+    [ $filter->{"qty:number"},                                        $::locale->text('Quantity')                                           ],
+    [ $filter->{order}{vendor}{"name:substr::ilike"},                 $::locale->text('Vendor')                                             ],
+    [ $filter->{order}{vendor}{"vendornumber:substr::ilike"},         $::locale->text('Vendor Number')                                      ],
+    [ $filter->{order}{customer}{"name:substr::ilike"},               $::locale->text('Customer')                                           ],
+    [ $filter->{order}{customer}{"customernumber:substr::ilike"},     $::locale->text('Customer Number')                                    ],
+    [ $business,                                                      $::locale->text('Customer type')                                      ],
+    [ $employee,                                                      $::locale->text('Employee')                                           ],
   );
 
   my %flags = (
@@ -295,6 +303,12 @@ sub init_mode {
   return $::form->{mode} if ($::form->{mode} eq 'delivery_value_report' || $::form->{mode} eq 'delivery_plan') || croak "self (DeliveryPlan) has no mode defined";
 }
 
+sub init_all_employees {
+  return SL::DB::Manager::Employee->get_all_sorted;
+}
+sub init_all_businesses {
+  return SL::DB::Manager::Business->get_all_sorted;
+}
 sub link_to {
   my ($self, $object, %params) = @_;