Projekt

Allgemein

Profil

Fehler #351

Order-Controller: Angebot als neu speichern erzeugt kein neues Objekt

Von Jan Büren vor mehr als 6 Jahren hinzugefügt. Vor mehr als 6 Jahren aktualisiert.

Status:
Gelöst
Priorität:
Normal
Zugewiesen an:
-
Zielversion:
-
Beginn:
28.03.2018
Abgabedatum:
% erledigt:

0%

Geschätzter Aufwand:

Beschreibung

Das vorherige Objekt wird nur unter einer anderen Nummer gespeichert.

Das Order-Objekt hat ja eine Methode new_from, die ist allerdings bisher nur für den Workflow relevant.

Ich hab erstmal wie folgt geflickt:

Controller/Order.pm


  my $src_order = SL::DB::Order->new(id => $self->order->id)->load;

+  $self->order = SL::DB::Order->new_from($src_order, destination_type => $src_order->type);
# belegnummer neu setzen usw.

Entsprechend im Backend DB/Order.pm

  # TODO eleganter coden
  my $save_as_new       =  ('sales_quotation'    eq $source->type && 'sales_quotation'    eq $destination_type)
                        || ('sales_order'        eq $source->type && 'sales_order'        eq $destination_type)
                        || ('purchase_quotation' eq $source->type && 'purchase_quotation' eq $destination_type)
                        || ('purchase_order'     eq $source->type && 'purchase_order'     eq $destination_type);
- quotation => 0
+ quotation => $save_as_new ? $source->quotation : 0,
-    $current_oe_item->{"converted_from_orderitems_id"} = $_->{id} if ref($item_parent) eq 'SL::DB::Order';
+    $current_oe_item->{"converted_from_orderitems_id"} = $_->{id} if ref($item_parent) eq 'SL::DB::Order' && !$save_as_new;

Zugehörige Revisionen

Revision 89a2d4f1 (diff)
Von Bernd Bleßmann vor mehr als 6 Jahren hinzugefügt

Auftrags-Controller: bei als neu speichern auch ein neues Objekt erzeugen

Behebt #351 (redmine).

Historie

#1

Von Jan Büren vor mehr als 6 Jahren aktualisiert

new_from, natürlich so:

- $self->order = SL::DB::Order->new_from($src_order, destination_type => $src_order->type);
+  $self->order(SL::DB::Order->new_from($src_order, destination_type => $src_order->type));

#2

Von Bernd Bleßmann vor mehr als 6 Jahren aktualisiert

  • Status wurde von Neu zu Gelöst geändert

Auch abrufbar als: Atom PDF