X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=acqui%2Ffinishreceive.pl;h=ad977cab22f844935df7aa440f09fd5be86dbb6e;hb=eba255208603846f1d96a3fb7fafb6b645636f4b;hp=34ac9f4db1e50af6e8096411f75edc9c83517500;hpb=528f1b2b8006061a4b2d10a53f367d84b7b6e50b;p=koha-ffzg.git diff --git a/acqui/finishreceive.pl b/acqui/finishreceive.pl index 34ac9f4db1..ad977cab22 100755 --- a/acqui/finishreceive.pl +++ b/acqui/finishreceive.pl @@ -3,123 +3,73 @@ #script to add a new item and to mark orders as received #written 1/3/00 by chris@katipo.co.nz + +# Copyright 2000-2002 Katipo Communications +# +# This file is part of Koha. +# +# Koha is free software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) any later +# version. +# +# Koha is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along with +# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +use strict; use C4::Output; -use C4::Catalogue; +use C4::Acquisition; use C4::Biblio; use CGI; use C4::Search; my $input=new CGI; -#print $input->header; my $user=$input->remote_user; -#print $input->dump; -my $biblionumber = $input->param('biblio'); +my $biblionumber = $input->param('biblionumber'); +my $biblioitemnumber=$input->param('biblioitemnumber'); my $ordnum=$input->param('ordnum'); my $quantrec=$input->param('quantityrec'); my $quantity=$input->param('quantity'); -my $notes=$input->param('notes'); my $cost=$input->param('cost'); my $invoiceno=$input->param('invoice'); -my $bibitemno=$input->param('biblioitemnum'); -my $data=bibitemdata($bibitemno); -my $publisher=$data->{'publishercode'}; -my $pubdate=$data->{'publicationdate'}; -my $class=$data->{'classification'}; -my $dewey=$data->{'dewey'}; -my $subclass=$data->{'subclass'}; - -my $size=$data->{'size'}; -my $illus=$data->{'illus'}; -my $pages=$data->{'pages'}; +my $datereceived=$input->param('datereceived'); my $replacement=$input->param('rrp'); -my $branch=$input->param('branch'); -my $bookfund=$input->param('bookfund'); -my $itemtype=$input->param('format'); -my $isbn=$input->param('ISBN'); -my $bookseller = $input->param('bookseller'); -my $id = $bookseller; -my $biblio = { - biblionumber => $biblionumber, - title => $input->param('title')?$input->param('title'):"", - author => $input->param('author')?$input->param('author'):"", - copyrightdate => $input->param('copyright')?$input->param('copyright'):"", - series => $input->param('Series')?$input->param('Series'):"" -}; # my $biblio - -if ($quantrec != 0){ - $cost=$cost / $quantrec; -} - my $gst=$input->param('gst'); my $freight=$input->param('freight'); -my $volinf=$input->param('volinf'); -my $loan=0; -if ($itemtype =~ /REF/){ - $loan=1; -} +my $supplierid = $input->param('supplierid'); +my $branch=$input->param('branch'); -if ($itemtype =~ /PER/){ -# print "$bibitemno"; - $class="Periodical"; - $bibitemno = &newbiblioitem({ - biblionumber => $biblionumber, - itemtype => $itemtype?$itemtype:"", - isbn => $isbn?$isbn:"", - volumeddesc => $volinf?$volinf:"", - classification => $class?$class:"" }); -# print "here $bibitemno"; -} -if ($quantity != 0){ - receiveorder($biblionumber,$ordnum,$quantrec,$user,$cost,$invoiceno,$bibitemno,$freight,$bookfund); - modbiblio($biblio); - &modbibitem({ - biblioitemnumber => $bibitemno, - itemtype => $itemtype?$itemtype:"", - isbn => $isbn?$isbn:"", - publisher => $publisher?$publisher:"", - publicationyear => $pubdate?$pubdate:"", - class => $class?$class:"", - dewey => $dewey?$dewey:"", - subclass => $subclass?$subclass:"", - illus => $illus?$illus:"", - pages => $pages?$pages:"", - volumeddesc => $volinf?$volinf:"", - notes => $notes?$notes:"", - size => $size?$size:"" }); +# if ($quantrec != 0){ +# $cost /= $quantrec; +# } - my $barcode=$input->param('barcode'); - my @barcodes; - if ($barcode =~ /\,/){ - @barcodes=split(/\,/,$barcode); - }elsif ($barcode =~ /\|/){ - @barcodes=split(/\|/,$barcode); - } else { - $barcodes[0]=$barcode; - # print $input->header; - # print @barcodes; - # print $barcode; - } - my ($error) = newitems({ biblioitemnumber => $bibitemno, - biblionumber => $biblionumber, - replacementprice => $replacement, - price => $cost, - booksellerid => $bookseller, - homebranch => $branch, - loan => $loan }, - @barcodes); - if ($error eq ''){ - if ($itemtype ne 'PER'){ - print $input->redirect("/cgi-bin/koha/acqui/receive.pl?invoice=$invoiceno&id=$id&freight=$freight&gst=$gst"); - } else { - print $input->redirect("/acquisitions/"); +if ($quantity != 0) { + # save the quantity recieved. + $datereceived = ModReceiveOrder($biblionumber,$ordnum,$quantrec,$user,$cost,$invoiceno,$datereceived,$freight,$replacement); + # create items if the user has entered barcodes + my $barcode=$input->param('barcode'); + my @barcodes=split(/\,| |\|/,$barcode); + # foreach barcode provided, build the item MARC::Record and create the item + foreach my $bc (@barcodes) { + my $itemRecord = TransformKohaToMarc({ + "items.replacementprice" => $replacement, + "items.price" => $cost, + "items.booksellerid" => $supplierid, + "items.homebranch" => $branch, + "items.holdingbranch" => $branch, + "items.barcode" => $bc, + "items.loan" => 0, }); + AddItem($itemRecord,$biblionumber); } - } else { - print $input->header; - print $error; - } + print $input->redirect("/cgi-bin/koha/acqui/parcel.pl?invoice=$invoiceno&supplierid=$supplierid&freight=$freight&gst=$gst&datereceived=$datereceived"); } else { - print $input->header; - delorder($biblionumber,$ordnum); - print $input->redirect("/acquisitions/"); + print $input->header; + delorder($biblionumber,$ordnum); + print $input->redirect("/acquisitions/"); }