Revision 7ac17a23
Von Tamino Steinert vor mehr als 2 Jahren hinzugefügt
SL/Controller/Reclamation.pm | ||
---|---|---|
save_and_show_email_dialog
|
||
workflow_save_and_sales_or_purchase_reclamation
|
||
save_and_order
|
||
save_and_delivery_order
|
||
)]);
|
||
|
||
__PACKAGE__->run_before('get_unalterable_data',
|
||
... | ... | |
save_and_show_email_dialog
|
||
workflow_save_and_sales_or_purchase_reclamation
|
||
save_and_order
|
||
save_and_delivery_order
|
||
)]);
|
||
|
||
#
|
||
... | ... | |
);
|
||
}
|
||
|
||
sub action_add_from_delivery_order {
|
||
my ($self) = @_;
|
||
|
||
unless ($::form->{from_id}) {
|
||
$self->js->flash('error', t8("Can't create new reclamation. No 'from_id' was given."));
|
||
return $self->js->render();
|
||
}
|
||
|
||
require SL::DB::DeliveryOrder;
|
||
my $delivery_order = SL::DB::DeliveryOrder->new(id => $::form->{from_id})->load;
|
||
my $reclamation = $delivery_order->convert_to_reclamation();
|
||
|
||
$self->reclamation($reclamation);
|
||
|
||
$self->reinit_after_new_reclamation();
|
||
|
||
$self->render(
|
||
'reclamation/form',
|
||
title => $self->get_title_for('add'),
|
||
%{$self->{template_args}},
|
||
);
|
||
}
|
||
|
||
# edit an existing reclamation
|
||
sub action_edit {
|
||
my ($self) = @_;
|
||
... | ... | |
$_[0]->workflow_save_and_sales_or_purchase_reclamation();
|
||
}
|
||
|
||
# save the reclamation and redirect to the frontend subroutine for a new
|
||
# delivery order
|
||
sub action_save_and_delivery_order {
|
||
my ($self) = @_;
|
||
|
||
my $to_type = $self->reclamation->is_sales ? 'sales_delivery_order'
|
||
: 'purchase_delivery_order';
|
||
$self->save_and_redirect_to(
|
||
controller => 'do.pl',
|
||
action => 'add_from_reclamation',
|
||
type => $to_type,
|
||
from_id => $self->reclamation->id,
|
||
);
|
||
}
|
||
|
||
# set form elements in respect to a changed customer or vendor
|
||
#
|
||
# This action is called on an change of the customer/vendor picker.
|
||
... | ... | |
my %allowed_linked_records = map {$_ => 1} qw(
|
||
SL::DB::Reclamation
|
||
SL::DB::Order
|
||
SL::DB::DeliveryOrder
|
||
);
|
||
my %allowed_linked_record_items = map {$_ => 1} qw(
|
||
SL::DB::ReclamationItem
|
||
SL::DB::OrderItem
|
||
SL::DB::DeliveryOrderItem
|
||
);
|
||
|
||
my $from_record_id = delete $::form->{converted_from_record_id};
|
||
... | ... | |
$::instance_conf->get_reclamation_warn_no_reqdate,
|
||
],
|
||
],
|
||
action => [
|
||
t8('Save and Delivery Order'),
|
||
call => [
|
||
'kivi.Reclamation.save', 'save_and_delivery_order',
|
||
$::instance_conf->get_reclamation_warn_duplicate_parts,
|
||
$::instance_conf->get_reclamation_warn_no_reqdate,
|
||
],
|
||
],
|
||
], # end of combobox "Workflow"
|
||
|
||
combobox => [
|
Auch abrufbar als: Unified diff
Workflow: delivery_order ↔ reclamation