Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 51c872e7

Von Sven Schöling vor mehr als 1 Jahr hinzugefügt

  • ID 51c872e76985f6a33a7b1d940872a181d6693074
  • Vorgänger d9676896
  • Nachfolger 95c4d843

RecordLink: in BackgroundJobs nicht mehr manuell setzen

Unterschiede anzeigen:

SL/BackgroundJob/ConvertTimeRecordings.pm
$do->save;
$_->update_attributes(booked => 1) for @{$time_recordings_by_order_id->{$related_order_id}};
$related_order->link_to_record($do);
# TODO extend link_to_record for items, otherwise long-term no d.r.y.
foreach my $item (@{ $do->items }) {
foreach (qw(orderitems)) {
if ($item->{"converted_from_${_}_id"}) {
die unless $item->{id};
RecordLinks->create_links('mode' => 'ids',
'from_table' => $_,
'from_ids' => $item->{"converted_from_${_}_id"},
'to_table' => 'delivery_order_items',
'to_id' => $item->{id},
) || die;
delete $item->{"converted_from_${_}_id"};
}
}
}
# update delivered and item's ship for related order
my $helper = SL::Helper::ShippedQty->new->calculate($related_order)->write_to_objects;
$related_order->delivered($related_order->{delivered});
SL/BackgroundJob/CreatePeriodicInvoices.pm
$invoice->post(ar_id => $config->ar_chart_id) || die;
$order->link_to_record($invoice);
foreach my $item (@{ $invoice->items }) {
foreach (qw(orderitems)) { # expand if needed (delivery_order_items)
if ($item->{"converted_from_${_}_id"}) {
die unless $item->{id};
RecordLinks->create_links('mode' => 'ids',
'from_table' => $_,
'from_ids' => $item->{"converted_from_${_}_id"},
'to_table' => 'invoice',
'to_id' => $item->{id},
) || die;
delete $item->{"converted_from_${_}_id"};
}
}
}
foreach my $item (grep { ($_->recurring_billing_mode eq 'once') && !$_->recurring_billing_invoice_id } @{ $order->orderitems }) {
$item->update_attributes(recurring_billing_invoice_id => $invoice->id);
}

Auch abrufbar als: Unified diff