|
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); |