X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/3039c21038342767513e71dcf810caa8aab0fe8e..b2becee7e28c289b5edf51083a01a73b35396227:/SL/Controller/CsvImport.pm diff --git a/SL/Controller/CsvImport.pm b/SL/Controller/CsvImport.pm index 25558b9f8..3cd0da24f 100644 --- a/SL/Controller/CsvImport.pm +++ b/SL/Controller/CsvImport.pm @@ -13,6 +13,7 @@ use SL::SessionFile; use SL::Controller::CsvImport::Contact; use SL::Controller::CsvImport::CustomerVendor; use SL::Controller::CsvImport::Part; +use SL::Controller::CsvImport::Inventory; use SL::Controller::CsvImport::Shipto; use SL::Controller::CsvImport::Project; use SL::Controller::CsvImport::Order; @@ -27,7 +28,7 @@ use parent qw(SL::Controller::Base); use Rose::Object::MakeMethods::Generic ( scalar => [ qw(type profile file all_profiles all_charsets sep_char all_sep_chars quote_char all_quote_chars escape_char all_escape_chars all_buchungsgruppen all_units - import_status errors headers raw_data_headers info_headers data num_imported num_importable displayable_columns file) ], + import_status errors headers raw_data_headers info_headers data num_imported num_importable displayable_columns file all_taxzones) ], 'scalar --get_set_init' => [ qw(worker task_server) ], 'array' => [ progress_tracker => { }, @@ -221,7 +222,7 @@ sub check_auth { sub check_type { my ($self) = @_; - die "Invalid CSV import type" if none { $_ eq $::form->{profile}->{type} } qw(parts customers_vendors addresses contacts projects orders); + die "Invalid CSV import type" if none { $_ eq $::form->{profile}->{type} } qw(parts inventories customers_vendors addresses contacts projects orders); $self->type($::form->{profile}->{type}); } @@ -263,10 +264,15 @@ sub render_inputs { : $self->type eq 'addresses' ? $::locale->text('CSV import: shipping addresses') : $self->type eq 'contacts' ? $::locale->text('CSV import: contacts') : $self->type eq 'parts' ? $::locale->text('CSV import: parts and services') + : $self->type eq 'inventories' ? $::locale->text('CSV import: inventories') : $self->type eq 'projects' ? $::locale->text('CSV import: projects') : $self->type eq 'orders' ? $::locale->text('CSV import: orders') : die; + if ($self->{type} eq 'customers_vendors' or $self->{type} eq 'orders' ) { + $self->all_taxzones(SL::DB::Manager::TaxZone->get_all_sorted(query => [ obsolete => 0 ])); + }; + if ($self->{type} eq 'parts') { $self->all_buchungsgruppen(SL::DB::Manager::Buchungsgruppe->get_all_sorted); $self->all_units(SL::DB::Manager::Unit->get_all_sorted); @@ -604,6 +610,7 @@ sub init_worker { : $self->{type} eq 'contacts' ? SL::Controller::CsvImport::Contact->new(@args) : $self->{type} eq 'addresses' ? SL::Controller::CsvImport::Shipto->new(@args) : $self->{type} eq 'parts' ? SL::Controller::CsvImport::Part->new(@args) + : $self->{type} eq 'inventories' ? SL::Controller::CsvImport::Inventory->new(@args) : $self->{type} eq 'projects' ? SL::Controller::CsvImport::Project->new(@args) : $self->{type} eq 'orders' ? SL::Controller::CsvImport::Order->new(@args) : die "Program logic error";