use Koha::Acquisition::Booksellers;
use Koha::Acquisition::Currencies qw( get_active );
+use Koha::AdditionalFields;
use Koha::DateUtils qw( output_pref );
use Koha::Misc::Files;
use Koha::Acquisition::Invoice::Adjustments;
+use Koha::Acquisition::Invoices;
my $input = CGI->new;
my ( $template, $loggedinuser, $cookie, $flags ) = get_template_and_user(
ModInvoice(
invoiceid => $invoiceid,
invoicenumber => $invoicenumber,
- shipmentdate => scalar output_pref( { str => scalar $input->param('shipmentdate'), dateformat => 'iso', dateonly => 1 } ),
- billingdate => scalar output_pref( { str => scalar $input->param('billingdate'), dateformat => 'iso', dateonly => 1 } ),
+ shipmentdate => scalar $input->param('shipmentdate'),
+ billingdate => scalar $input->param('billingdate'),
shipmentcost => $shipmentcost,
shipmentcost_budgetid => $shipment_budget_id
);
MergeInvoices($invoiceid, \@sources);
defined($invoice_files) && $invoice_files->MergeFileRecIds(@sources);
}
+
+ my @additional_fields;
+ my $invoice_fields = Koha::AdditionalFields->search({ tablename => 'aqinvoices' });
+ while ( my $field = $invoice_fields->next ) {
+ my $value = $input->param('additional_field_' . $field->id);
+ push @additional_fields, {
+ id => $field->id,
+ value => $value,
+ };
+ }
+ Koha::Acquisition::Invoices->find($invoiceid)->set_additional_fields(\@additional_fields);
+
$template->param( modified => 1 );
}
elsif ( $op && $op eq 'delete' ) {
my $adjustment_id = $input->param('adjustment_id');
my $del_adj = Koha::Acquisition::Invoice::Adjustments->find( $adjustment_id );
if ($del_adj) {
- if (C4::Context->preference("AcqLog")) {
+ if (C4::Context->preference("AcquisitionLog")) {
my $infos = {
invoiceid => $del_adj->invoiceid,
budget_id => $del_adj->budget_id,
note => $note[$i],
budget_id => $budget_id[$i] || undef,
encumber_open => defined $e_open{ $adjustment_id[$i] } ? 1 : 0,
- });
+ };
my $new_adj = Koha::Acquisition::Invoice::Adjustment->new($adj);
$new_adj->store();
# Log this addition
- if (C4::Context->preference("AcqLog")) {
+ if (C4::Context->preference("AcquisitionLog")) {
logaction(
'ACQUISITIONS',
'CREATE_INVOICE_ADJUSTMENT',
my $old_adj = Koha::Acquisition::Invoice::Adjustments->find( $adjustment_id[$i] );
unless ( $old_adj->adjustment == $adjustment[$i] && $old_adj->reason eq $reason[$i] && $old_adj->budget_id == $budget_id[$i] && $old_adj->encumber_open == $e_open{$adjustment_id[$i]} && $old_adj->note eq $note[$i] ){
# Log this modification
- if (C4::Context->preference("AcqLog")) {
+ if (C4::Context->preference("AcquisitionLog")) {
my $infos = {
adjustment => $adjustment[$i],
reason => $reason[$i],
b_txt => $r->{budget_name},
b_active => $r->{budget_period_active},
selected => $selected,
+ b_sort1_authcat => $r->{'sort1_authcat'},
+ b_sort2_authcat => $r->{'sort2_authcat'},
};
}
my $adjustments = Koha::Acquisition::Invoice::Adjustments->search({ invoiceid => $details->{'invoiceid'} });
if ( $adjustments ) { $template->param( adjustments => $adjustments ); }
+my $invoice = Koha::Acquisition::Invoices->find($invoiceid);
+$template->param(
+ available_additional_fields => Koha::AdditionalFields->search( { tablename => 'aqinvoices' } ),
+ additional_field_values => { map {
+ $_->field->id => $_->value
+ } $invoice->additional_field_values->as_list },
+);
+
$template->param(
invoiceid => $details->{'invoiceid'},
invoicenumber => $details->{'invoicenumber'},
suppliername => $details->{'suppliername'},
booksellerid => $details->{'booksellerid'},
shipmentdate => $details->{'shipmentdate'},
+ shipment_budget_id => $shipmentcost_budgetid,
billingdate => $details->{'billingdate'},
invoiceclosedate => $details->{'closedate'},
shipmentcost => $shipmentcost,