Auftrags-Controller: Währung in make_order setzen
authorBernd Bleßmann <bernd@kivitendo-premium.de>
Mon, 27 Jul 2020 13:30:24 +0000 (15:30 +0200)
committerBernd Bleßmann <bernd@kivitendo-premium.de>
Mon, 27 Jul 2020 13:30:24 +0000 (15:30 +0200)
SL/Controller/Order.pm

index f06f06e..d40d2eb 100644 (file)
@@ -1364,8 +1364,9 @@ sub make_order {
   # order here solves this problem.
   my $order;
   $order   = SL::DB::Order->new(id => $::form->{id})->load(with => [ 'orderitems', 'orderitems.part' ]) if $::form->{id};
-  $order ||= SL::DB::Order->new(orderitems => [],
-                                quotation  => (any { $self->type eq $_ } (sales_quotation_type(), request_quotation_type())));
+  $order ||= SL::DB::Order->new(orderitems  => [],
+                                quotation   => (any { $self->type eq $_ } (sales_quotation_type(), request_quotation_type())),
+                                currency_id => $::instance_conf->get_currency_id());
 
   my $cv_id_method = $self->cv . '_id';
   if (!$::form->{id} && $::form->{$cv_id_method}) {
@@ -1528,8 +1529,6 @@ sub setup_order_from_cv {
 sub recalc {
   my ($self) = @_;
 
-  $self->order->currency_id($::instance_conf->get_currency_id()) unless $self->order->currency_id;
-
   my %pat = $self->order->calculate_prices_and_taxes();
 
   $self->{taxes} = [];