Lines 55-61
use CGI;
Link Here
|
55 |
use C4::Bookseller qw/GetBookSellerFromId/; |
55 |
use C4::Bookseller qw/GetBookSellerFromId/; |
56 |
use C4::Acquisition qw/CloseBasketgroup ReOpenBasketgroup GetOrders GetBasketsByBasketgroup GetBasketsByBookseller ModBasketgroup NewBasketgroup DelBasketgroup GetBasketgroups ModBasket GetBasketgroup GetBasket GetBasketGroupAsCSV/; |
56 |
use C4::Acquisition qw/CloseBasketgroup ReOpenBasketgroup GetOrders GetBasketsByBasketgroup GetBasketsByBookseller ModBasketgroup NewBasketgroup DelBasketgroup GetBasketgroups ModBasket GetBasketgroup GetBasket GetBasketGroupAsCSV/; |
57 |
use C4::Bookseller qw/GetBookSellerFromId/; |
57 |
use C4::Bookseller qw/GetBookSellerFromId/; |
58 |
use C4::Branch qw/GetBranches/; |
58 |
use C4::Branch qw/GetBranches GetBranchName/; |
59 |
use C4::Members qw/GetMember/; |
59 |
use C4::Members qw/GetMember/; |
60 |
|
60 |
|
61 |
our $input=new CGI; |
61 |
our $input=new CGI; |
Lines 155-171
sub displaybasketgroups {
Link Here
|
155 |
my $baskets = shift; |
155 |
my $baskets = shift; |
156 |
if (scalar @$basketgroups != 0) { |
156 |
if (scalar @$basketgroups != 0) { |
157 |
foreach my $basketgroup (@$basketgroups){ |
157 |
foreach my $basketgroup (@$basketgroups){ |
|
|
158 |
$basketgroup -> {'billingplacename'} = GetBranchName($basketgroup -> {'billingplace'}); |
159 |
$basketgroup -> {'deliveryplacename'} = GetBranchName($basketgroup -> {'deliveryplace'}); |
158 |
my $i = 0; |
160 |
my $i = 0; |
|
|
161 |
my $basketsqty = 0; |
159 |
while($i < scalar(@$baskets)){ |
162 |
while($i < scalar(@$baskets)){ |
160 |
my $basket = @$baskets[$i]; |
163 |
my $basket = @$baskets[$i]; |
161 |
if($basket->{'basketgroupid'} && $basket->{'basketgroupid'} == $basketgroup->{'id'}){ |
164 |
if($basket->{'basketgroupid'} && $basket->{'basketgroupid'} == $basketgroup->{'id'}){ |
162 |
$basket->{total} = BasketTotal($basket->{basketno}, $bookseller); |
165 |
$basket->{total} = BasketTotal($basket->{basketno}, $bookseller); |
163 |
push(@{$basketgroup->{'baskets'}}, $basket); |
166 |
push(@{$basketgroup->{'baskets'}}, $basket); |
164 |
splice(@$baskets, $i, 1); |
167 |
splice(@$baskets, $i, 1); |
|
|
168 |
++$basketsqty; |
165 |
--$i; |
169 |
--$i; |
166 |
} |
170 |
} |
167 |
++$i; |
171 |
++$i; |
168 |
} |
172 |
} |
|
|
173 |
$basketgroup -> {'basketsqty'} = $basketsqty; |
169 |
} |
174 |
} |
170 |
$template->param(basketgroups => $basketgroups); |
175 |
$template->param(basketgroups => $basketgroups); |
171 |
} |
176 |
} |
Lines 183-189
sub displaybasketgroups {
Link Here
|
183 |
|
188 |
|
184 |
sub printbasketgrouppdf{ |
189 |
sub printbasketgrouppdf{ |
185 |
my ($basketgroupid) = @_; |
190 |
my ($basketgroupid) = @_; |
186 |
|
191 |
|
187 |
my $pdfformat = C4::Context->preference("OrderPdfFormat"); |
192 |
my $pdfformat = C4::Context->preference("OrderPdfFormat"); |
188 |
if ($pdfformat eq 'pdfformat::layout3pages' || $pdfformat eq 'pdfformat::layout2pages'){ |
193 |
if ($pdfformat eq 'pdfformat::layout3pages' || $pdfformat eq 'pdfformat::layout2pages'){ |
189 |
eval { |
194 |
eval { |
Lines 194-216
sub printbasketgrouppdf{
Link Here
|
194 |
} |
199 |
} |
195 |
} |
200 |
} |
196 |
else { |
201 |
else { |
197 |
print $input->header; |
202 |
print $input->header; |
198 |
print $input->start_html; # FIXME Should do a nicer page |
203 |
print $input->start_html; # FIXME Should do a nicer page |
199 |
print "<h1>Invalid PDF Format set</h1>"; |
204 |
print "<h1>Invalid PDF Format set</h1>"; |
200 |
print "Please go to the systempreferences and set a valid pdfformat"; |
205 |
print "Please go to the systempreferences and set a valid pdfformat"; |
201 |
exit; |
206 |
exit; |
202 |
} |
207 |
} |
203 |
|
208 |
|
204 |
my $basketgroup = GetBasketgroup($basketgroupid); |
209 |
my $basketgroup = GetBasketgroup($basketgroupid); |
205 |
my $bookseller = GetBookSellerFromId($basketgroup->{'booksellerid'}); |
210 |
my $bookseller = GetBookSellerFromId($basketgroup->{'booksellerid'}); |
206 |
my $baskets = GetBasketsByBasketgroup($basketgroupid); |
211 |
my $baskets = GetBasketsByBasketgroup($basketgroupid); |
207 |
|
212 |
|
208 |
my %orders; |
213 |
my %orders; |
209 |
for my $basket (@$baskets) { |
214 |
for my $basket (@$baskets) { |
210 |
my @ba_orders; |
215 |
my @ba_orders; |
211 |
my @ords = &GetOrders($basket->{basketno}); |
216 |
my @ords = &GetOrders($basket->{basketno}); |
212 |
for my $ord (@ords) { |
217 |
for my $ord (@ords) { |
213 |
# ba_order is filled with : |
218 |
# ba_order is filled with : |
214 |
# 0 1 2 3 4 5 6 7 8 9 |
219 |
# 0 1 2 3 4 5 6 7 8 9 |
215 |
#isbn, itemtype, author, title, publishercode, quantity, listprice ecost discount gstrate |
220 |
#isbn, itemtype, author, title, publishercode, quantity, listprice ecost discount gstrate |
216 |
my @ba_order; |
221 |
my @ba_order; |
Lines 388-401
if ( $op eq "add" ) {
Link Here
|
388 |
displaybasketgroups($basketgroups, $bookseller, $baskets); |
393 |
displaybasketgroups($basketgroups, $bookseller, $baskets); |
389 |
} elsif ( $op eq 'closeandprint') { |
394 |
} elsif ( $op eq 'closeandprint') { |
390 |
my $basketgroupid = $input->param('basketgroupid'); |
395 |
my $basketgroupid = $input->param('basketgroupid'); |
391 |
|
396 |
|
392 |
CloseBasketgroup($basketgroupid); |
397 |
CloseBasketgroup($basketgroupid); |
393 |
|
398 |
|
394 |
printbasketgrouppdf($basketgroupid); |
399 |
printbasketgrouppdf($basketgroupid); |
395 |
exit; |
400 |
exit; |
396 |
}elsif ($op eq 'print'){ |
401 |
}elsif ($op eq 'print'){ |
397 |
my $basketgroupid = $input->param('basketgroupid'); |
402 |
my $basketgroupid = $input->param('basketgroupid'); |
398 |
|
403 |
|
399 |
printbasketgrouppdf($basketgroupid); |
404 |
printbasketgrouppdf($basketgroupid); |
400 |
exit; |
405 |
exit; |
401 |
}elsif ( $op eq "export" ) { |
406 |
}elsif ( $op eq "export" ) { |
Lines 410-426
if ( $op eq "add" ) {
Link Here
|
410 |
my $basketgroupid = $input->param('basketgroupid'); |
415 |
my $basketgroupid = $input->param('basketgroupid'); |
411 |
DelBasketgroup($basketgroupid); |
416 |
DelBasketgroup($basketgroupid); |
412 |
print $input->redirect('/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=' . $booksellerid); |
417 |
print $input->redirect('/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=' . $booksellerid); |
413 |
|
418 |
|
414 |
}elsif ( $op eq 'reopen'){ |
419 |
}elsif ( $op eq 'reopen'){ |
415 |
my $basketgroupid = $input->param('basketgroupid'); |
420 |
my $basketgroupid = $input->param('basketgroupid'); |
416 |
my $booksellerid = $input->param('booksellerid'); |
421 |
my $booksellerid = $input->param('booksellerid'); |
417 |
|
|
|
418 |
ReOpenBasketgroup($basketgroupid); |
422 |
ReOpenBasketgroup($basketgroupid); |
419 |
|
423 |
|
420 |
print $input->redirect('/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=' . $booksellerid . '#closed'); |
424 |
print $input->redirect('/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=' . $booksellerid . '#closed'); |
421 |
|
425 |
|
422 |
} elsif ( $op eq 'attachbasket') { |
426 |
} elsif ( $op eq 'attachbasket') { |
423 |
|
427 |
|
424 |
# Getting parameters |
428 |
# Getting parameters |
425 |
my $basketgroup = {}; |
429 |
my $basketgroup = {}; |
426 |
my @baskets = $input->param('basket'); |
430 |
my @baskets = $input->param('basket'); |
Lines 431-437
if ( $op eq "add" ) {
Link Here
|
431 |
my $deliveryplace = $input->param('deliveryplace'); |
435 |
my $deliveryplace = $input->param('deliveryplace'); |
432 |
my $freedeliveryplace = $input->param('freedeliveryplace'); |
436 |
my $freedeliveryplace = $input->param('freedeliveryplace'); |
433 |
my $deliverycomment = $input->param('deliverycomment'); |
437 |
my $deliverycomment = $input->param('deliverycomment'); |
434 |
my $close = $input->param('close') ? 1 : 0; |
438 |
my $close = $input->param('closed') ? 1 : 0; |
|
|
439 |
|
435 |
# If we got a basketgroupname, we create a basketgroup |
440 |
# If we got a basketgroupname, we create a basketgroup |
436 |
if ($basketgroupid) { |
441 |
if ($basketgroupid) { |
437 |
$basketgroup = { |
442 |
$basketgroup = { |
Lines 446-452
if ( $op eq "add" ) {
Link Here
|
446 |
}; |
451 |
}; |
447 |
ModBasketgroup($basketgroup); |
452 |
ModBasketgroup($basketgroup); |
448 |
if($close){ |
453 |
if($close){ |
449 |
|
454 |
|
450 |
} |
455 |
} |
451 |
}else{ |
456 |
}else{ |
452 |
$basketgroup = { |
457 |
$basketgroup = { |
Lines 460-470
if ( $op eq "add" ) {
Link Here
|
460 |
}; |
465 |
}; |
461 |
$basketgroupid = NewBasketgroup($basketgroup); |
466 |
$basketgroupid = NewBasketgroup($basketgroup); |
462 |
} |
467 |
} |
463 |
|
468 |
|
464 |
my $url = '/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=' . $booksellerid; |
469 |
my $url = '/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=' . $booksellerid; |
465 |
$url .= "&closed=1" if ($input->param("closed")); |
470 |
$url .= "&closed=1" if ($input->param("closed")); |
466 |
print $input->redirect($url); |
471 |
print $input->redirect($url); |
467 |
|
472 |
|
468 |
}else{ |
473 |
}else{ |
469 |
my $basketgroups = &GetBasketgroups($booksellerid); |
474 |
my $basketgroups = &GetBasketgroups($booksellerid); |
470 |
my $bookseller = &GetBookSellerFromId($booksellerid); |
475 |
my $bookseller = &GetBookSellerFromId($booksellerid); |