View | Details | Raw Unified | Return to bug 10869
Collapse All | Expand All

(-)a/C4/Acquisition.pm (-8 / +9 lines)
Lines 1751-1757 sub SearchOrders { Link Here
1751
1751
1752
=head3 DelOrder
1752
=head3 DelOrder
1753
1753
1754
  &DelOrder($biblionumber, $ordernumber);
1754
  &DelOrder($ordernumber, $biblionumber);
1755
1755
1756
Cancel the order with the given order and biblio numbers. It does not
1756
Cancel the order with the given order and biblio numbers. It does not
1757
delete any entries in the aqorders table, it merely marks them as
1757
delete any entries in the aqorders table, it merely marks them as
Lines 1760-1777 cancelled. Link Here
1760
=cut
1760
=cut
1761
1761
1762
sub DelOrder {
1762
sub DelOrder {
1763
    my ( $bibnum, $ordernumber ) = @_;
1763
    my ($ordernumber,$biblionumber) = @_;
1764
    my $dbh = C4::Context->dbh;
1764
    my $dbh = C4::Context->dbh;
1765
    my $query = "
1765
    my $query = "
1766
        UPDATE aqorders
1766
        UPDATE aqorders
1767
        SET    datecancellationprinted=now(), orderstatus='cancelled'
1767
        SET    datecancellationprinted=now(), orderstatus='cancelled'
1768
        WHERE  biblionumber=? AND ordernumber=?
1768
        WHERE  ordernumber=?
1769
    ";
1769
    ";
1770
    my $sth = $dbh->prepare($query);
1770
    my $sth = $dbh->prepare($query);
1771
    $sth->execute( $bibnum, $ordernumber );
1771
    $sth->execute($ordernumber);
1772
    my @itemnumbers = GetItemnumbersFromOrder( $ordernumber );
1772
    if ($biblionumber) {
1773
    foreach my $itemnumber (@itemnumbers){
1773
        my @itemnumbers = GetItemnumbersFromOrder( $ordernumber );
1774
        C4::Items::DelItem( $dbh, $bibnum, $itemnumber );
1774
        foreach my $itemnumber (@itemnumbers){
1775
            C4::Items::DelItem( $dbh, $biblionumber, $itemnumber );
1776
        }
1775
    }
1777
    }
1776
    return;
1778
    return;
1777
}
1779
}
Lines 2235-2241 sub GetHistory { Link Here
2235
        LEFT JOIN deletedbiblio ON deletedbiblio.biblionumber=aqorders.biblionumber
2237
        LEFT JOIN deletedbiblio ON deletedbiblio.biblionumber=aqorders.biblionumber
2236
        LEFT JOIN deletedbiblioitems ON deletedbiblioitems.biblionumber=aqorders.biblionumber
2238
        LEFT JOIN deletedbiblioitems ON deletedbiblioitems.biblionumber=aqorders.biblionumber
2237
        ";
2239
        ";
2238
2239
    if ( C4::Context->preference("IndependentBranches") ) {
2240
    if ( C4::Context->preference("IndependentBranches") ) {
2240
        $query .= " LEFT JOIN borrowers ON aqbasket.authorisedby=borrowers.borrowernumber";
2241
        $query .= " LEFT JOIN borrowers ON aqbasket.authorisedby=borrowers.borrowernumber";
2241
    }
2242
    }
(-)a/acqui/addorder.pl (-1 / +1 lines)
Lines 323-329 if ( $orderinfo->{quantity} ne '0' ) { Link Here
323
323
324
else { # qty=0, delete the line
324
else { # qty=0, delete the line
325
    my $biblionumber = $input->param('biblionumber');
325
    my $biblionumber = $input->param('biblionumber');
326
    DelOrder( $biblionumber, $$orderinfo{ordernumber} );
326
    DelOrder($$orderinfo{ordernumber}, $biblionumber );
327
    if ($orderinfo->{delbiblio} == 1){
327
    if ($orderinfo->{delbiblio} == 1){
328
     DelBiblio($biblionumber);
328
     DelBiblio($biblionumber);
329
    }
329
    }
(-)a/acqui/basket.pl (-1 / +1 lines)
Lines 114-120 if ( $op eq 'delete_confirm' ) { Link Here
114
    my @orders = GetOrders($basketno);
114
    my @orders = GetOrders($basketno);
115
#Delete all orders included in that basket, and all items received.
115
#Delete all orders included in that basket, and all items received.
116
    foreach my $myorder (@orders){
116
    foreach my $myorder (@orders){
117
        DelOrder($myorder->{biblionumber},$myorder->{ordernumber});
117
        DelOrder($myorder->{ordernumber},$myorder->{biblionumber});
118
    }
118
    }
119
# if $delbiblio = 1, delete the records if possible
119
# if $delbiblio = 1, delete the records if possible
120
    if ((defined $delbiblio)and ($delbiblio ==1)){
120
    if ((defined $delbiblio)and ($delbiblio ==1)){
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tt (-25 / +32 lines)
Lines 476-485 Link Here
476
                            [% books_loo.ordernumber %]
476
                            [% books_loo.ordernumber %]
477
                        </td>
477
                        </td>
478
                        <td>
478
                        <td>
479
                            <p>
479
                            <p> [% IF ( books_loo.order_received ) %] (rcvd)[% END %]
480
                                [% IF ( books_loo.order_received ) %] (rcvd)[% END %]
480
                                [% IF (books_loo.biblionumber) %]
481
                                <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% books_loo.biblionumber %]">[% books_loo.title |html %]</a> by [% books_loo.author %]
481
                                    <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% books_loo.biblionumber %]">[% books_loo.title |html %]</a> by [% books_loo.author %]
482
                                <br />
482
                                    <br />
483
                                [% ELSE %]
484
                                    <em>Deleted bibliographic record, can't find title</em><br />
485
                                [% END %]
483
                                [% IF ( books_loo.isbn ) %] - [% books_loo.isbn %][% END %]
486
                                [% IF ( books_loo.isbn ) %] - [% books_loo.isbn %][% END %]
484
                                [% IF ( books_loo.issn ) %] - [% books_loo.issn %][% END %]
487
                                [% IF ( books_loo.issn ) %] - [% books_loo.issn %][% END %]
485
                                [% IF ( books_loo.publishercode ) %], [% books_loo.publishercode %][% END %]
488
                                [% IF ( books_loo.publishercode ) %], [% books_loo.publishercode %][% END %]
Lines 531-557 Link Here
531
                                [% END %]
534
                                [% END %]
532
                            </td>
535
                            </td>
533
                            <td>
536
                            <td>
534
                            [% IF ( books_loo.left_holds_on_order ) %]
537
                            [% UNLESS (books_loo.biblionumber) %]
535
                            <span class="button" title="Can't delete order, ([% books_loo.holds_on_order %]) holds are linked with this order cancel holds first">Can't delete order</span><br>
538
                                <a href="javascript:confirm_delete_item([% books_loo.ordernumber %])" class="button">Delete order</a><br>
536
                            [% ELSE %]
537
                            <a href="javascript:confirm_delete_item([% books_loo.ordernumber %],[% books_loo.biblionumber %])" class="button">Delete order</a><br>
538
                            [% END %]
539
                            [% IF ( books_loo.can_del_bib ) %]
540
                            <a href="javascript:confirm_delete_biblio([% books_loo.ordernumber %],[% books_loo.biblionumber %])" class="button">Delete order and catalog record</a><br>
541
                            [% ELSE %]
539
                            [% ELSE %]
542
                            <span class="button" title="Can't delete catalog record, see constraints below">Can't delete order and catalog record</span><br>
540
                                [% IF ( books_loo.left_holds_on_order ) %]
543
                            [% END %]
541
                                <span class="button" title="Can't delete order, ([% books_loo.holds_on_order %]) holds are linked with this order cancel holds first">Can't delete order</span><br>
544
                            [% IF ( books_loo.left_item ) %]
542
                                [% ELSE %]
545
                            <b title="Can't delete catalog record, because of [% books_loo.items %] existing hold(s)" >[% books_loo.items %] item(s) left</b><br>
543
                                <a href="javascript:confirm_delete_item([% books_loo.ordernumber %],[% books_loo.biblionumber %])" class="button">Delete order</a><br>
546
                            [% END %]
544
                                [% END %]
547
                            [% IF ( books_loo.left_biblio ) %]
545
                                [% IF ( books_loo.can_del_bib ) %]
548
                            <b title="Can't delete catalog record, delete other orders linked to it first">[% books_loo.biblios %] order(s) left</b><br>
546
                                <a href="javascript:confirm_delete_biblio([% books_loo.ordernumber %],[% books_loo.biblionumber %])" class="button">Delete order and catalog record</a><br>
549
                            [% END %]
547
                                [% ELSE %]
550
                            [% IF ( books_loo.left_subscription ) %]
548
                                <span class="button" title="Can't delete catalog record, see constraints below">Can't delete order and catalog record</span><br>
551
                            <b title="Can't delete catalog record, delete subscriptions first">[% books_loo.subscriptions %] subscription(s) left</b><br>
549
                                [% END %]
552
                            [% END %]
550
                                [% IF ( books_loo.left_item ) %]
553
                            [% IF ( books_loo.left_holds ) %]
551
                                <b title="Can't delete catalog record, because of [% books_loo.items %] existing hold(s)" >[% books_loo.items %] item(s) left</b><br>
554
                            <b title="Can't delete catalog record or order, cancel holds first">[% books_loo.holds %] hold(s) left</b>
552
                                [% END %]
553
                                [% IF ( books_loo.left_biblio ) %]
554
                                <b title="Can't delete catalog record, delete other orders linked to it first">[% books_loo.biblios %] order(s) left</b><br>
555
                                [% END %]
556
                                [% IF ( books_loo.left_subscription ) %]
557
                                <b title="Can't delete catalog record, delete subscriptions first">[% books_loo.subscriptions %] subscription(s) left</b><br>
558
                                [% END %]
559
                                [% IF ( books_loo.left_holds ) %]
560
                                <b title="Can't delete catalog record or order, cancel holds first">[% books_loo.holds %] hold(s) left</b>
561
                                [% END %]
555
                            [% END %]
562
                            [% END %]
556
                            </td>
563
                            </td>
557
                            [% END %]
564
                            [% END %]
Lines 593-599 Link Here
593
                    <td>
600
                    <td>
594
                      <p>
601
                      <p>
595
                        [% IF ( order.order_received ) %] (rcvd)[% END %]
602
                        [% IF ( order.order_received ) %] (rcvd)[% END %]
596
                        [% IF (order.title) %]
603
                        [% IF (order.biblionumber) %]
597
                          [% order.title |html %] by [% order.author %]<br />
604
                          [% order.title |html %] by [% order.author %]<br />
598
                        [% ELSE %]
605
                        [% ELSE %]
599
                          <em>Deleted bibliographic record, can't find title</em><br />
606
                          <em>Deleted bibliographic record, can't find title</em><br />
(-)a/t/db_dependent/Acquisition.t (-2 / +1 lines)
Lines 519-525 my @base_expectedfields = qw( Link Here
519
  ( @base_expectedfields,
519
  ( @base_expectedfields,
520
    ( 'transferred_from_timestamp', 'transferred_from' ) );
520
    ( 'transferred_from_timestamp', 'transferred_from' ) );
521
is( GetOrders(), undef, "GetOrders with no params returns undef" );
521
is( GetOrders(), undef, "GetOrders with no params returns undef" );
522
DelOrder( $order_content[3]->{str}->{biblionumber}, $ordernumbers[3] );
522
DelOrder( $ordernumbers[3], $order_content[3]->{str}->{biblionumber});
523
my @get_orders = GetOrders($basketno);
523
my @get_orders = GetOrders($basketno);
524
(
524
(
525
    $test_missing_fields,   $test_extra_fields,
525
    $test_missing_fields,   $test_extra_fields,
526
- 

Return to bug 10869