Glens updates to automatically increment barcode, and to remove hardcoded itemtypes...
[koha.git] / acqui / finishreceive.pl
1 #!/usr/bin/perl
2
3 #script to add a new item and to mark orders as received
4 #written 1/3/00 by chris@katipo.co.nz
5
6 use C4::Output;
7 use C4::Acquisitions;
8 use CGI;
9 use C4::Search;
10
11 my $input=new CGI;
12 #print $input->header;
13
14 my $user=$input->remote_user;
15 #print $input->dump;
16 my $biblio=$input->param('biblio');
17 my $ordnum=$input->param('ordnum');
18 my $quantrec=$input->param('quantityrec');
19 my $quantity=$input->param('quantity');
20 my $notes=$input->param('notes');
21 my $cost=$input->param('cost');
22 my $invoiceno=$input->param('invoice');
23 my $id=$input->param('id');
24 my $bibitemno=$input->param('biblioitemnum');
25 my $data=bibitemdata($bibitemno);
26 my $publisher=$data->{'publishercode'};
27 my $pubdate=$data->{'publicationdate'};
28 my $class=$data->{'classification'};
29 my $dewey=$data->{'dewey'};
30 my $subclass=$data->{'subclass'};
31
32 my $size=$data->{'size'};
33 my $illus=$data->{'illus'};
34 my $pages=$data->{'pages'};
35 my $replacement=$input->param('rrp');
36 my $branch=$input->param('branch');
37 my $bookfund=$input->param('bookfund');
38 my $itemtype=$input->param('format');
39 my $isbn=$input->param('ISBN');
40 my $series=$input->param('Series');
41 my $bookseller=$input->param('bookseller');
42 $id=$bookseller;
43 my $title=$input->param('title');
44 my $author=$input->param('author');
45 my $copyright=$input->param('copyright');
46
47 if ($quantrec != 0){
48   $cost=$cost / $quantrec;
49 }
50
51 my $gst=$input->param('gst');
52 my $freight=$input->param('freight');
53 my $volinf=$input->param('volinf');
54 my $loan=0;
55 if ($itemtype =~ /REF/){
56   $loan=1;
57 }
58
59 if ($itemtype =~ /PER/){
60 #  print "$bibitemno";
61   $class="Periodical";
62   $bibitemno=newbiblioitem($biblio,$itemtype,$isbn,$volinf,$class);
63 #  print "here $bibitemno";
64 }
65 if ($quantity != 0){
66   receiveorder($biblio,$ordnum,$quantrec,$user,$cost,$invoiceno,$bibitemno,$freight,$bookfund);
67   modbiblio($biblio,$title,$author,$copyright,$series);
68   modbibitem($bibitemno,$itemtype,$isbn,$publisher,$pubdate,$class,$dewey,$subclass,$illus,$pages,$volinf,$notes,$size);
69   #print $notes;
70   my $barcode=$input->param('barcode');
71   my @barcodes;
72   if ($barcode =~ /\,/){
73     @barcodes=split(/\,/,$barcode);
74   }elsif ($barcode =~ /\|/){
75     @barcodes=split(/\|/,$barcode);
76   } else {
77     $barcodes[0]=$barcode;
78   #  print $input->header;
79   #  print @barcodes;
80   #  print $barcode;
81   }
82   my ($error)=makeitems($quantrec,$bibitemno,$biblio,$replacement,$cost,$bookseller,$branch,$loan,@barcodes);
83   if ($error eq ''){
84     if ($itemtype ne 'PER'){
85       print $input->redirect("/cgi-bin/koha/acqui/receive.pl?invoice=$invoiceno&id=$id&freight=$freight&gst=$gst");
86     } else {
87       print $input->redirect("/acquisitions/");
88     }
89   } else {
90     print $input->header;
91     print $error;
92   }
93 } else {
94   print $input->header;
95   delorder($biblio,$ordnum);
96        print $input->redirect("/acquisitions/");
97 }