From b5a3f485ab861b1d0330d1c4a3c4d17ba97f4863 Mon Sep 17 00:00:00 2001 From: Paul Poulain Date: Tue, 5 Apr 2011 22:11:15 +0200 Subject: [PATCH] BZ6074: setting import flag when staged file imported in aqbasket Lines issued from a staged file have a flag that can be set when the order has been added in a basket. It's set when a staged file is imported into the catalogue, it should be set also when a record is inserted through aquisition. Signed-off-by: Katrin Fischer - Add order from staged file to a new basket - Add single order from one item - Import rest using the bulk feature - Staged file will no longer be shown after all titles have been ordered and import_status in import_batches is correctly set to 'imported' Signed-off-by: Ian Walls Signed-off-by: Chris Cormack --- acqui/addorderiso2709.pl | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/acqui/addorderiso2709.pl b/acqui/addorderiso2709.pl index 46d05ddaad..bbfd3b7bfa 100755 --- a/acqui/addorderiso2709.pl +++ b/acqui/addorderiso2709.pl @@ -180,6 +180,7 @@ if ($op eq ""){ } } ( $biblionumber, $bibitemnum ) = AddBiblio( $marcrecord, $cgiparams->{'frameworkcode'} || '' ); + SetImportRecordStatus( $biblio->{'import_record_id'}, 'imported' ); # 2nd add authorities if applicable if (C4::Context->preference("BiblioAddsAuthorities")){ my ($countlinked,$countcreated)=BiblioAddAuthorities($marcrecord, $cgiparams->{'frameworkcode'}); @@ -262,6 +263,8 @@ if ($op eq ""){ my ( $biblionumber, $bibitemnum, $itemnumber ) = AddItemFromMarc( $record, $biblionumber ); NewOrderItem( $itemnumber, $ordernumber ); } + } else { + SetImportRecordStatus( $biblio->{'import_record_id'}, 'imported' ); } } # go to basket page @@ -337,15 +340,22 @@ sub import_batches_list { my @list = (); foreach my $batch (@$batches) { if ($batch->{'import_status'} eq "staged") { - push @list, { - import_batch_id => $batch->{'import_batch_id'}, - num_biblios => $batch->{'num_biblios'}, - num_items => $batch->{'num_items'}, - upload_timestamp => $batch->{'upload_timestamp'}, - import_status => $batch->{'import_status'}, - file_name => $batch->{'file_name'}, - comments => $batch->{'comments'}, - }; + # check if there is at least 1 line still staged + my $stagedList=GetImportBibliosRange($batch->{'import_batch_id'}, undef, undef, 'staged'); + if (scalar @$stagedList) { + push @list, { + import_batch_id => $batch->{'import_batch_id'}, + num_biblios => $batch->{'num_biblios'}, + num_items => $batch->{'num_items'}, + upload_timestamp => $batch->{'upload_timestamp'}, + import_status => $batch->{'import_status'}, + file_name => $batch->{'file_name'}, + comments => $batch->{'comments'}, + }; + } else { + # if there are no more line to includes, set the status to imported + SetImportBatchStatus( $batch->{'import_batch_id'}, 'imported' ); + } } } $template->param(batch_list => \@list); -- 2.39.2