Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision dbf2d709

Von Sven Schöling vor etwa 2 Jahren hinzugefügt

  • ID dbf2d709b206dd1c0f43f0224524fe04e503476e
  • Vorgänger c1f1f681
  • Nachfolger 9452d6b8

RecordLink: in controller vor dem Speichern und ausserhalb der TX behandeln

Unterschiede anzeigen:

SL/Controller/DeliveryOrder.pm
my $errors = [];
my $db = $self->order->db;
# link records
if ($::form->{converted_from_oe_id}) {
my @converted_from_oe_ids = split ' ', $::form->{converted_from_oe_id};
set_record_link_conversions(
$self->order,
'SL::DB::Order' => \@converted_from_oe_ids,
'SL::DB::OrderItem' => $::form->{converted_from_orderitems_ids},
);
}
if ($::form->{converted_from_reclamation_id}) {
my @converted_from_reclamation_ids = split ' ', $::form->{converted_from_reclamation_id};
set_record_link_conversions(
$self->order,
'SL::DB::Reclamation' => \@converted_from_reclamation_ids,
'SL::DB::ReclamationItem' => $::form->{converted_from_reclamation_items_ids},
);
}
$db->with_transaction(sub {
my $validity_token;
if (!$self->order->id) {
......
SL::DB::DeliveryOrderItem->new(id => $_)->delete for @{$self->item_ids_to_delete || []};
$self->order->save(cascade => 1);
# link records
if ($::form->{converted_from_oe_id}) {
my @converted_from_oe_ids = split ' ', $::form->{converted_from_oe_id};
set_record_link_conversions(
$self->order,
'SL::DB::Order' => \@converted_from_oe_ids,
'SL::DB::OrderItem' => $::form->{converted_from_orderitems_ids},
);
}
if ($::form->{converted_from_reclamation_id}) {
my @converted_from_reclamation_ids = split ' ', $::form->{converted_from_reclamation_id};
set_record_link_conversions(
$self->order,
'SL::DB::Reclamation' => \@converted_from_reclamation_ids,
'SL::DB::ReclamationItem' => $::form->{converted_from_reclamation_items_ids},
);
}
$self->save_history('SAVED');
$validity_token->delete if $validity_token;

Auch abrufbar als: Unified diff