X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FPresenter%2FRecord.pm;h=ae2164e8b137978f98349e662164e8163aad9720;hb=808bfd679e48691da8f0b9bbb8c778ab7805cbda;hp=b395e822a8c52ccf0e8ba8f492e9a2bac150eeb1;hpb=6a12a968761127af91e9da8db7579be2836bcaaa;p=kivitendo-erp.git diff --git a/SL/Presenter/Record.pm b/SL/Presenter/Record.pm index b395e822a..ae2164e8b 100644 --- a/SL/Presenter/Record.pm +++ b/SL/Presenter/Record.pm @@ -43,6 +43,7 @@ sub grouped_record_list { my $output = ''; $output .= _requirement_spec_list( $self, $groups{requirement_specs}, %params) if $groups{requirement_specs}; + $output .= _shop_order_list( $self, $groups{shop_orders}, %params) if $groups{shop_orders}; $output .= _sales_quotation_list( $self, $groups{sales_quotations}, %params) if $groups{sales_quotations}; $output .= _sales_order_list( $self, $groups{sales_orders}, %params) if $groups{sales_orders}; $output .= _sales_delivery_order_list( $self, $groups{sales_delivery_orders}, %params) if $groups{sales_delivery_orders}; @@ -55,11 +56,15 @@ sub grouped_record_list { $output .= _purchase_invoice_list( $self, $groups{purchase_invoices}, %params) if $groups{purchase_invoices}; $output .= _ap_transaction_list( $self, $groups{ap_transactions}, %params) if $groups{ap_transactions}; + $output .= _gl_transaction_list( $self, $groups{gl_transactions}, %params) if $groups{gl_transactions}; + $output .= _bank_transactions( $self, $groups{bank_transactions}, %params) if $groups{bank_transactions}; $output .= _sepa_collection_list( $self, $groups{sepa_collections}, %params) if $groups{sepa_collections}; $output .= _sepa_transfer_list( $self, $groups{sepa_transfers}, %params) if $groups{sepa_transfers}; + $output .= _letter_list( $self, $groups{letters}, %params) if $groups{letters}; + $output = $self->render('presenter/record/grouped_record_list', %params, output => $output); return $output; @@ -163,9 +168,9 @@ sub record_list { sub _group_records { my ($list) = @_; - my %matchers = ( requirement_specs => sub { (ref($_[0]) eq 'SL::DB::RequirementSpec') }, + shop_orders => sub { (ref($_[0]) eq 'SL::DB::ShopOrder') && $_[0]->id }, sales_quotations => sub { (ref($_[0]) eq 'SL::DB::Order') && $_[0]->is_type('sales_quotation') }, sales_orders => sub { (ref($_[0]) eq 'SL::DB::Order') && $_[0]->is_type('sales_order') }, sales_delivery_orders => sub { (ref($_[0]) eq 'SL::DB::DeliveryOrder') && $_[0]->is_sales }, @@ -180,6 +185,7 @@ sub _group_records { sepa_transfers => sub { (ref($_[0]) eq 'SL::DB::SepaExportItem') && $_[0]->ap_id }, gl_transactions => sub { (ref($_[0]) eq 'SL::DB::GLTransaction') }, bank_transactions => sub { (ref($_[0]) eq 'SL::DB::BankTransaction') && $_[0]->id }, + letters => sub { (ref($_[0]) eq 'SL::DB::Letter') && $_[0]->id }, ); my %groups; @@ -226,6 +232,23 @@ sub _requirement_spec_list { ); } +sub _shop_order_list { + my ($self, $list, %params) = @_; + + return $self->record_list( + $list, + title => $::locale->text('Shop Orders'), + type => 'shop_order', + columns => [ + [ $::locale->text('Shop Order Date'), sub { $_[0]->order_date->to_kivitendo } ], + [ $::locale->text('Shop Order Number'), sub { $self->shop_order($_[0], display => 'table-cell') } ], + [ $::locale->text('Transfer Date'), 'transfer_date' ], + [ $::locale->text('Amount'), 'amount' ], + ], + %params, + ); +} + sub _sales_quotation_list { my ($self, $list, %params) = @_; @@ -432,6 +455,22 @@ sub _ap_transaction_list { ); } +sub _gl_transaction_list { + my ($self, $list, %params) = @_; + + return $self->record_list( + $list, + title => $::locale->text('GL Transactions'), + type => 'gl_transaction', + columns => [ + [ $::locale->text('Transdate'), 'transdate' ], + [ $::locale->text('Reference'), 'reference' ], + [ $::locale->text('Description'), sub { $self->gl_transaction($_[0 ], display => 'table-cell') } ], + ], + %params, + ); +} + sub _bank_transactions { my ($self, $list, %params) = @_; @@ -490,6 +529,24 @@ sub _sepa_collection_list { _sepa_export_list($self, $list, %params, type => 'sepa_collection'); } +sub _letter_list { + my ($self, $list, %params) = @_; + + return $self->record_list( + $list, + title => $::locale->text('Letters'), + type => 'letter', + columns => [ + [ $::locale->text('Date'), 'date' ], + [ $::locale->text('Letternumber'), sub { $self->letter($_[0], display => 'table-cell') } ], + [ $::locale->text('Customer'), 'customer' ], + [ $::locale->text('Reference'), 'reference' ], + [ $::locale->text('Subject'), 'subject' ], + ], + %params, + ); +} + 1; __END__ @@ -572,6 +629,8 @@ The order in which the records are grouped is: =item * AP transactions +=item * GL transactions + =item * SEPA collections =item * SEPA transfers