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

(-)a/C4/Acquisition.pm (-23 / +122 lines)
Lines 28-34 use MARC::Record; Link Here
28
use C4::Suggestions;
28
use C4::Suggestions;
29
use C4::Biblio;
29
use C4::Biblio;
30
use C4::Debug;
30
use C4::Debug;
31
use C4::SQLHelper qw(InsertInTable);
31
use C4::SQLHelper qw(InsertInTable UpdateInTable);
32
use C4::Bookseller qw(GetBookSellerFromId);
32
use C4::Bookseller qw(GetBookSellerFromId);
33
use C4::Templates qw(gettemplate);
33
use C4::Templates qw(gettemplate);
34
34
Lines 43-49 BEGIN { Link Here
43
    require Exporter;
43
    require Exporter;
44
    @ISA    = qw(Exporter);
44
    @ISA    = qw(Exporter);
45
    @EXPORT = qw(
45
    @EXPORT = qw(
46
        &GetBasket &NewBasket &CloseBasket &DelBasket &ModBasket
46
        &GetBasket &NewBasket &CloseBasket &ReopenBasket &DelBasket &ModBasket
47
        &GetBasketAsCSV &GetBasketGroupAsCSV
47
        &GetBasketAsCSV &GetBasketGroupAsCSV
48
        &GetBasketsByBookseller &GetBasketsByBasketgroup
48
        &GetBasketsByBookseller &GetBasketsByBasketgroup
49
        &GetBasketsInfosByBookseller
49
        &GetBasketsInfosByBookseller
Lines 75-80 BEGIN { Link Here
75
        &GetItemnumbersFromOrder
75
        &GetItemnumbersFromOrder
76
76
77
        &AddClaim
77
        &AddClaim
78
        &GetBiblioCountByBasketno
78
    );
79
    );
79
}
80
}
80
81
Lines 214-220 sub NewBasket { Link Here
214
215
215
  &CloseBasket($basketno);
216
  &CloseBasket($basketno);
216
217
217
close a basket (becomes unmodifiable,except for recieves)
218
close a basket (becomes unmodifiable, except for receives)
218
219
219
=cut
220
=cut
220
221
Lines 228-233 sub CloseBasket { Link Here
228
    ";
229
    ";
229
    my $sth = $dbh->prepare($query);
230
    my $sth = $dbh->prepare($query);
230
    $sth->execute($basketno);
231
    $sth->execute($basketno);
232
233
    my @orders = GetOrders($basketno);
234
    foreach my $order (@orders) {
235
        $query = qq{
236
            UPDATE aqorders
237
            SET orderstatus = 1
238
            WHERE ordernumber = ?;
239
        };
240
        $sth = $dbh->prepare($query);
241
        $sth->execute($order->{'ordernumber'});
242
    }
243
}
244
245
=head3 ReopenBasket
246
247
  &ReopenBasket($basketno);
248
249
reopen a basket
250
251
=cut
252
253
sub ReopenBasket {
254
    my ($basketno) = @_;
255
    my $dbh        = C4::Context->dbh;
256
    my $query = "
257
        UPDATE aqbasket
258
        SET    closedate=NULL
259
        WHERE  basketno=?
260
    ";
261
    my $sth = $dbh->prepare($query);
262
    $sth->execute($basketno);
263
264
    my @orders = GetOrders($basketno);
265
    foreach my $order (@orders) {
266
        $query = qq{
267
            UPDATE aqorders
268
            SET orderstatus = 0
269
            WHERE ordernumber = ?;
270
        };
271
        $sth = $dbh->prepare($query);
272
        $sth->execute($order->{'ordernumber'});
273
    }
231
}
274
}
232
275
233
#------------------------------------------------------------#
276
#------------------------------------------------------------#
Lines 467-472 sub ModBasket { Link Here
467
    my $dbh = C4::Context->dbh;
510
    my $dbh = C4::Context->dbh;
468
    my $sth = $dbh->prepare($query);
511
    my $sth = $dbh->prepare($query);
469
    $sth->execute(@params);
512
    $sth->execute(@params);
513
470
    $sth->finish;
514
    $sth->finish;
471
}
515
}
472
516
Lines 1150-1156 The following keys are used: "biblionumber", "title", "basketno", "quantity", "n Link Here
1150
1194
1151
sub NewOrder {
1195
sub NewOrder {
1152
    my $orderinfo = shift;
1196
    my $orderinfo = shift;
1153
#### ------------------------------
1197
    my $parent_ordernumber = shift;
1198
1154
    my $dbh = C4::Context->dbh;
1199
    my $dbh = C4::Context->dbh;
1155
    my @params;
1200
    my @params;
1156
1201
Lines 1425-1431 sub ModReceiveOrder { Link Here
1425
        # (entirely received)
1470
        # (entirely received)
1426
        $sth=$dbh->prepare("
1471
        $sth=$dbh->prepare("
1427
            UPDATE aqorders
1472
            UPDATE aqorders
1428
            SET quantity = ?
1473
            SET quantity = ?,
1474
                orderstatus = 2
1429
            WHERE ordernumber = ?
1475
            WHERE ordernumber = ?
1430
        ");
1476
        ");
1431
1477
Lines 1452-1458 sub ModReceiveOrder { Link Here
1452
    } else {
1498
    } else {
1453
        $sth=$dbh->prepare("update aqorders
1499
        $sth=$dbh->prepare("update aqorders
1454
                            set quantityreceived=?,datereceived=?,invoiceid=?,
1500
                            set quantityreceived=?,datereceived=?,invoiceid=?,
1455
                                unitprice=?,rrp=?,ecost=?
1501
                                unitprice=?,rrp=?,ecost=?,orderstatus=3
1456
                            where biblionumber=? and ordernumber=?");
1502
                            where biblionumber=? and ordernumber=?");
1457
        $sth->execute($quantrec,$datereceived,$invoiceid,$cost,$rrp,$ecost,$biblionumber,$ordernumber);
1503
        $sth->execute($quantrec,$datereceived,$invoiceid,$cost,$rrp,$ecost,$biblionumber,$ordernumber);
1458
        $sth->finish;
1504
        $sth->finish;
Lines 1502-1508 sub CancelReceipt { Link Here
1502
            UPDATE aqorders
1548
            UPDATE aqorders
1503
            SET quantityreceived = ?,
1549
            SET quantityreceived = ?,
1504
                datereceived = ?,
1550
                datereceived = ?,
1505
                invoiceid = ?
1551
                invoiceid = ?,
1552
                orderstatus = 1
1506
            WHERE ordernumber = ?
1553
            WHERE ordernumber = ?
1507
        };
1554
        };
1508
        $sth = $dbh->prepare($query);
1555
        $sth = $dbh->prepare($query);
Lines 1529-1535 sub CancelReceipt { Link Here
1529
        }
1576
        }
1530
        $query = qq{
1577
        $query = qq{
1531
            UPDATE aqorders
1578
            UPDATE aqorders
1532
            SET quantity = ?
1579
            SET quantity = ?,
1580
                orderstatus = 1
1533
            WHERE ordernumber = ?
1581
            WHERE ordernumber = ?
1534
        };
1582
        };
1535
        $sth = $dbh->prepare($query);
1583
        $sth = $dbh->prepare($query);
Lines 1669-1675 sub DelOrder { Link Here
1669
    my $dbh = C4::Context->dbh;
1717
    my $dbh = C4::Context->dbh;
1670
    my $query = "
1718
    my $query = "
1671
        UPDATE aqorders
1719
        UPDATE aqorders
1672
        SET    datecancellationprinted=now()
1720
        SET    datecancellationprinted=now(), orderstatus=4
1673
        WHERE  biblionumber=? AND ordernumber=?
1721
        WHERE  biblionumber=? AND ordernumber=?
1674
    ";
1722
    ";
1675
    my $sth = $dbh->prepare($query);
1723
    my $sth = $dbh->prepare($query);
Lines 2030-2035 sub GetHistory { Link Here
2030
    my $basket = $params{basket};
2078
    my $basket = $params{basket};
2031
    my $booksellerinvoicenumber = $params{booksellerinvoicenumber};
2079
    my $booksellerinvoicenumber = $params{booksellerinvoicenumber};
2032
    my $basketgroupname = $params{basketgroupname};
2080
    my $basketgroupname = $params{basketgroupname};
2081
    my $budget = $params{budget};
2082
    my $orderstatus = $params{orderstatus};
2083
2033
    my @order_loop;
2084
    my @order_loop;
2034
    my $total_qty         = 0;
2085
    my $total_qty         = 0;
2035
    my $total_qtyreceived = 0;
2086
    my $total_qtyreceived = 0;
Lines 2038-2047 sub GetHistory { Link Here
2038
    my $dbh   = C4::Context->dbh;
2089
    my $dbh   = C4::Context->dbh;
2039
    my $query ="
2090
    my $query ="
2040
        SELECT
2091
        SELECT
2041
            biblio.title,
2092
            COALESCE(biblio.title,     deletedbiblio.title)     AS title,
2042
            biblio.author,
2093
            COALESCE(biblio.author,    deletedbiblio.author)    AS author,
2043
	    biblioitems.isbn,
2094
            COALESCE(biblioitems.isbn, deletedbiblioitems.isbn) AS isbn,
2044
        biblioitems.ean,
2095
            COALESCE(biblioitems.ean,  deletedbiblioitems.ean)  AS ean,
2045
            aqorders.basketno,
2096
            aqorders.basketno,
2046
            aqbasket.basketname,
2097
            aqbasket.basketname,
2047
            aqbasket.basketgroupid,
2098
            aqbasket.basketgroupid,
Lines 2056-2074 sub GetHistory { Link Here
2056
            aqorders.invoiceid,
2107
            aqorders.invoiceid,
2057
            aqinvoices.invoicenumber,
2108
            aqinvoices.invoicenumber,
2058
            aqbooksellers.id as id,
2109
            aqbooksellers.id as id,
2059
            aqorders.biblionumber
2110
            aqorders.biblionumber,
2111
            aqorders.orderstatus,
2112
            aqorders.parent_ordernumber,
2113
            aqbudgets.budget_name
2114
            ";
2115
    $query .= ", aqbudgets.budget_id AS budget" if defined $budget;
2116
    $query .= "
2060
        FROM aqorders
2117
        FROM aqorders
2061
        LEFT JOIN aqbasket ON aqorders.basketno=aqbasket.basketno
2118
        LEFT JOIN aqbasket ON aqorders.basketno=aqbasket.basketno
2062
        LEFT JOIN aqbasketgroups ON aqbasket.basketgroupid=aqbasketgroups.id
2119
        LEFT JOIN aqbasketgroups ON aqbasket.basketgroupid=aqbasketgroups.id
2063
        LEFT JOIN aqbooksellers ON aqbasket.booksellerid=aqbooksellers.id
2120
        LEFT JOIN aqbooksellers ON aqbasket.booksellerid=aqbooksellers.id
2064
	LEFT JOIN biblioitems ON biblioitems.biblionumber=aqorders.biblionumber
2121
        LEFT JOIN biblioitems ON biblioitems.biblionumber=aqorders.biblionumber
2065
        LEFT JOIN biblio ON biblio.biblionumber=aqorders.biblionumber
2122
        LEFT JOIN biblio ON biblio.biblionumber=aqorders.biblionumber
2066
    LEFT JOIN aqinvoices ON aqorders.invoiceid = aqinvoices.invoiceid";
2123
        LEFT JOIN aqbudgets ON aqorders.budget_id=aqbudgets.budget_id
2124
        LEFT JOIN aqinvoices ON aqorders.invoiceid = aqinvoices.invoiceid
2125
        LEFT JOIN deletedbiblio ON deletedbiblio.biblionumber=aqorders.biblionumber
2126
        LEFT JOIN deletedbiblioitems ON deletedbiblioitems.biblionumber=aqorders.biblionumber
2127
        ";
2128
2129
    if ( C4::Context->preference("IndependentBranches") ) {
2130
        $query .= " LEFT JOIN borrowers ON aqbasket.authorisedby=borrowers.borrowernumber";
2131
    }
2067
2132
2068
    $query .= " LEFT JOIN borrowers ON aqbasket.authorisedby=borrowers.borrowernumber"
2133
    $query .= " WHERE 1 ";
2069
    if ( C4::Context->preference("IndependentBranches") );
2070
2134
2071
    $query .= " WHERE (datecancellationprinted is NULL or datecancellationprinted='0000-00-00') ";
2135
    $query .= " AND (datecancellationprinted is NULL or datecancellationprinted='0000-00-00') " if $orderstatus ne '4';
2072
2136
2073
    my @query_params  = ();
2137
    my @query_params  = ();
2074
2138
Lines 2087-2093 sub GetHistory { Link Here
2087
        $query .= " AND biblioitems.isbn LIKE ? ";
2151
        $query .= " AND biblioitems.isbn LIKE ? ";
2088
        push @query_params, "%$isbn%";
2152
        push @query_params, "%$isbn%";
2089
    }
2153
    }
2090
    if ( defined $ean and $ean ) {
2154
    if ( $ean ) {
2091
        $query .= " AND biblioitems.ean = ? ";
2155
        $query .= " AND biblioitems.ean = ? ";
2092
        push @query_params, "$ean";
2156
        push @query_params, "$ean";
2093
    }
2157
    }
Lines 2096-2101 sub GetHistory { Link Here
2096
        push @query_params, "%$name%";
2160
        push @query_params, "%$name%";
2097
    }
2161
    }
2098
2162
2163
    if ( $budget ) {
2164
        $query .= " AND aqbudgets.budget_id = ? ";
2165
        push @query_params, "$budget";
2166
    }
2167
2099
    if ( $from_placed_on ) {
2168
    if ( $from_placed_on ) {
2100
        $query .= " AND creationdate >= ? ";
2169
        $query .= " AND creationdate >= ? ";
2101
        push @query_params, $from_placed_on;
2170
        push @query_params, $from_placed_on;
Lines 2106-2111 sub GetHistory { Link Here
2106
        push @query_params, $to_placed_on;
2175
        push @query_params, $to_placed_on;
2107
    }
2176
    }
2108
2177
2178
    if ( defined $orderstatus and $orderstatus ne '') {
2179
        $query .= " AND aqorders.orderstatus = ? ";
2180
        push @query_params, "$orderstatus";
2181
    }
2182
2109
    if ($basket) {
2183
    if ($basket) {
2110
        if ($basket =~ m/^\d+$/) {
2184
        if ($basket =~ m/^\d+$/) {
2111
            $query .= " AND aqorders.basketno = ? ";
2185
            $query .= " AND aqorders.basketno = ? ";
Lines 2141-2149 sub GetHistory { Link Here
2141
        $line->{count} = $cnt++;
2215
        $line->{count} = $cnt++;
2142
        $line->{toggle} = 1 if $cnt % 2;
2216
        $line->{toggle} = 1 if $cnt % 2;
2143
        push @order_loop, $line;
2217
        push @order_loop, $line;
2144
        $total_qty         += $line->{'quantity'};
2218
        $total_qty         += ( $line->{quantity} ) ? $line->{quantity} : 0;
2145
        $total_qtyreceived += $line->{'quantityreceived'};
2219
        $total_qtyreceived += ( $line->{quantityreceived} ) ? $line->{quantityreceived} : 0;
2146
        $total_price       += $line->{'quantity'} * $line->{'ecost'};
2220
        $total_price       += ( $line->{quantity} and $line->{ecost} ) ? $line->{quantity} * $line->{ecost} : 0;
2147
    }
2221
    }
2148
    return \@order_loop, $total_qty, $total_price, $total_qtyreceived;
2222
    return \@order_loop, $total_qty, $total_price, $total_qtyreceived;
2149
}
2223
}
Lines 2607-2612 sub ReopenInvoice { Link Here
2607
    $sth->execute($invoiceid);
2681
    $sth->execute($invoiceid);
2608
}
2682
}
2609
2683
2684
=head3 GetBiblioCountByBasketno
2685
2686
$biblio_count = &GetBiblioCountByBasketno($basketno);
2687
2688
Looks up the biblio's count that has basketno value $basketno
2689
2690
Returns a quantity
2691
2692
=cut
2693
2694
sub GetBiblioCountByBasketno {
2695
    my ($basketno) = @_;
2696
    my $dbh          = C4::Context->dbh;
2697
    my $query        = "
2698
        SELECT COUNT( DISTINCT( biblionumber ) )
2699
        FROM   aqorders
2700
        WHERE  basketno = ?
2701
            AND (datecancellationprinted IS NULL OR datecancellationprinted='0000-00-00')
2702
        ";
2703
2704
    my $sth = $dbh->prepare($query);
2705
    $sth->execute($basketno);
2706
    return $sth->fetchrow;
2707
}
2708
2610
1;
2709
1;
2611
__END__
2710
__END__
2612
2711
(-)a/acqui/basket.pl (-10 / +8 lines)
Lines 177-194 if ( $op eq 'delete_confirm' ) { Link Here
177
        }
177
        }
178
        exit;
178
        exit;
179
    } else {
179
    } else {
180
    $template->param(confirm_close => "1",
180
    $template->param(
181
            booksellerid    => $booksellerid,
181
        confirm_close   => "1",
182
            basketno        => $basket->{'basketno'},
182
        booksellerid    => $booksellerid,
183
                basketname      => $basket->{'basketname'},
183
        basketno        => $basket->{'basketno'},
184
            basketgroupname => $basket->{'basketname'});
184
        basketname      => $basket->{'basketname'},
185
        
185
        basketgroupname => $basket->{'basketname'},
186
    );
186
    }
187
    }
187
} elsif ($op eq 'reopen') {
188
} elsif ($op eq 'reopen') {
188
    my $basket;
189
    ReopenBasket($query->param('basketno'));
189
    $basket->{basketno} = $query->param('basketno');
190
    $basket->{closedate} = undef;
191
    ModBasket($basket);
192
    print $query->redirect('/cgi-bin/koha/acqui/basket.pl?basketno='.$basket->{'basketno'})
190
    print $query->redirect('/cgi-bin/koha/acqui/basket.pl?basketno='.$basket->{'basketno'})
193
} else {
191
} else {
194
    # get librarian branch...
192
    # get librarian branch...
(-)a/acqui/histsearch.pl (-2 / +20 lines)
Lines 57-62 use C4::Output; Link Here
57
use C4::Acquisition;
57
use C4::Acquisition;
58
use C4::Dates;
58
use C4::Dates;
59
use C4::Debug;
59
use C4::Debug;
60
use C4::Branch;
61
use C4::Koha;
60
62
61
my $input = new CGI;
63
my $input = new CGI;
62
my $title                   = $input->param( 'title');
64
my $title                   = $input->param( 'title');
Lines 70-75 my $booksellerinvoicenumber = $input->param( 'booksellerinvoicenumber' ); Link Here
70
my $do_search               = $input->param('do_search') || 0;
72
my $do_search               = $input->param('do_search') || 0;
71
my $from_placed_on          = C4::Dates->new($input->param('from'));
73
my $from_placed_on          = C4::Dates->new($input->param('from'));
72
my $to_placed_on            = C4::Dates->new($input->param('to'));
74
my $to_placed_on            = C4::Dates->new($input->param('to'));
75
my $budget                  = $input->param( 'budget' );
76
my $orderstatus             = $input->param( 'orderstatus' );
77
73
if ( not $input->param('from') ) {
78
if ( not $input->param('from') ) {
74
    # FIXME Dirty but we can't sent a Date::Calc to C4::Dates ?
79
    # FIXME Dirty but we can't sent a Date::Calc to C4::Dates ?
75
    # We would use a function like Add_Delta_YM(-1, 0, 0);
80
    # We would use a function like Add_Delta_YM(-1, 0, 0);
Lines 110-130 if ($do_search) { Link Here
110
        basket => $basket,
115
        basket => $basket,
111
        booksellerinvoicenumber => $booksellerinvoicenumber,
116
        booksellerinvoicenumber => $booksellerinvoicenumber,
112
        basketgroupname => $basketgroupname,
117
        basketgroupname => $basketgroupname,
118
        budget => $budget,
119
        orderstatus => $orderstatus,
113
    );
120
    );
114
}
121
}
115
122
116
my $from_date = $from_placed_on ? $from_placed_on->output('syspref') : undef;
123
my $from_date = $from_placed_on ? $from_placed_on->output('syspref') : undef;
117
my $to_date = $to_placed_on ? $to_placed_on->output('syspref') : undef;
124
my $to_date = $to_placed_on ? $to_placed_on->output('syspref') : undef;
118
125
126
my $budgetperiods = C4::Budgets::GetBudgetPeriods;
127
my $bp_loop = $budgetperiods;
128
for my $bp ( @{$budgetperiods} ) {
129
    my $hierarchy = C4::Budgets::GetBudgetHierarchy( $$bp{budget_period_id} );
130
    for my $budget ( @{$hierarchy} ) {
131
        $$budget{budget_display_name} = sprintf("%s", ">" x $$budget{depth} . $$budget{budget_name});
132
    }
133
    $$bp{hierarchy} = $hierarchy;
134
}
135
119
$template->param(
136
$template->param(
120
    suggestions_loop        => $order_loop,
137
    order_loop              => $order_loop,
121
    total_qty               => $total_qty,
138
    total_qty               => $total_qty,
122
    total_qtyreceived       => $total_qtyreceived,
139
    total_qtyreceived       => $total_qtyreceived,
123
    total_price             => sprintf( "%.2f", $total_price ),
140
    total_price             => sprintf( "%.2f", $total_price ),
124
    numresults              => $order_loop ? scalar(@$order_loop) : undef,
141
    numresults              => $order_loop ? scalar(@$order_loop) : undef,
125
    title                   => $title,
142
    title                   => $title,
126
    author                  => $author,
143
    author                  => $author,
127
    isbn		    => $isbn,
144
    isbn                    => $isbn,
128
    ean                     => $ean,
145
    ean                     => $ean,
129
    name                    => $name,
146
    name                    => $name,
130
    basket                  => $basket,
147
    basket                  => $basket,
Lines 132-137 $template->param( Link Here
132
    basketgroupname         => $basketgroupname,
149
    basketgroupname         => $basketgroupname,
133
    from_placed_on          => $from_date,
150
    from_placed_on          => $from_date,
134
    to_placed_on            => $to_date,
151
    to_placed_on            => $to_date,
152
    bp_loop                 => $bp_loop,
135
    debug                   => $debug || $input->param('debug') || 0,
153
    debug                   => $debug || $input->param('debug') || 0,
136
    uc(C4::Context->preference("marcflavour")) => 1
154
    uc(C4::Context->preference("marcflavour")) => 1
137
);
155
);
(-)a/installer/data/mysql/kohastructure.sql (+1 lines)
Lines 2932-2937 CREATE TABLE `aqorders` ( -- information related to the basket line items Link Here
2932
  `claimed_date` date default NULL, -- last date a claim was generated
2932
  `claimed_date` date default NULL, -- last date a claim was generated
2933
  `subscriptionid` int(11) default NULL, -- links this order line to a subscription (subscription.subscriptionid)
2933
  `subscriptionid` int(11) default NULL, -- links this order line to a subscription (subscription.subscriptionid)
2934
  parent_ordernumber int(11) default NULL, -- ordernumber of parent order line, or same as ordernumber if no parent
2934
  parent_ordernumber int(11) default NULL, -- ordernumber of parent order line, or same as ordernumber if no parent
2935
  `orderstatus` tinyint(2) default 0, -- the current status for this line item
2935
  PRIMARY KEY  (`ordernumber`),
2936
  PRIMARY KEY  (`ordernumber`),
2936
  KEY `basketno` (`basketno`),
2937
  KEY `basketno` (`basketno`),
2937
  KEY `biblionumber` (`biblionumber`),
2938
  KEY `biblionumber` (`biblionumber`),
(-)a/installer/data/mysql/updatedatabase.pl (+16 lines)
Lines 7010-7015 CREATE TABLE IF NOT EXISTS borrower_files ( Link Here
7010
    SetVersion($DBversion);
7010
    SetVersion($DBversion);
7011
}
7011
}
7012
7012
7013
7014
7015
7016
7017
$DBversion = "3.13.00.XXX";
7018
if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
7019
    my $return_count;
7020
    $dbh->do("ALTER TABLE aqorders ADD COLUMN orderstatus tinyint(2) DEFAULT 0 AFTER parent_ordernumber");
7021
    $dbh->do("UPDATE aqorders SET orderstatus=1 WHERE basketno IN (SELECT basketno FROM aqbasket WHERE closedate IS NOT NULL)");
7022
    $dbh->do("UPDATE aqorders SET orderstatus=2 WHERE quantity > quantityreceived AND quantityreceived > 0");
7023
    $dbh->do("UPDATE aqorders SET orderstatus=3 WHERE quantity=quantityreceived");
7024
    $dbh->do("UPDATE aqorders SET orderstatus=4 WHERE datecancellationprinted IS NOT NULL");
7025
    print "Upgrade to $DBversion done (Add category ORDRSTATUS values in authorised_values table)\n";
7026
    SetVersion($DBversion);
7027
}
7028
7013
=head1 FUNCTIONS
7029
=head1 FUNCTIONS
7014
7030
7015
=head2 TableExists($table)
7031
=head2 TableExists($table)
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/histsearch.tt (-28 / +74 lines)
Lines 1-6 Link Here
1
[% USE KohaDates %]
1
[% USE KohaDates %]
2
[% INCLUDE 'doc-head-open.inc' %]
2
[% INCLUDE 'doc-head-open.inc' %]
3
<title>Koha &rsaquo; Acquisitions &rsaquo; [% IF ( suggestions_loop ) %]Orders search &rsaquo; Search results[% ELSE %]Order search[% END %]</title>
3
<title>Koha &rsaquo; Acquisitions &rsaquo; [% IF ( order_loop ) %]Orders search &rsaquo; Search results[% ELSE %]Order search[% END %]</title>
4
<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
4
<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
5
[% INCLUDE 'doc-head-close.inc' %]
5
[% INCLUDE 'doc-head-close.inc' %]
6
[% INCLUDE 'calendar.inc' %]
6
[% INCLUDE 'calendar.inc' %]
Lines 24-30 Link Here
24
[% INCLUDE 'header.inc' %]
24
[% INCLUDE 'header.inc' %]
25
[% INCLUDE 'acquisitions-search.inc' %]
25
[% INCLUDE 'acquisitions-search.inc' %]
26
26
27
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> &rsaquo; [% IF ( suggestions_loop ) %]<a href="/cgi-bin/koha/acqui/histsearch.pl">Orders search</a> &rsaquo; Search results[% ELSE %]Order search[% END %]</div>
27
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> &rsaquo; [% IF ( order_loop ) %]<a href="/cgi-bin/koha/acqui/histsearch.pl">Orders search</a> &rsaquo; Search results[% ELSE %]Order search[% END %]</div>
28
28
29
<div id="doc3" class="yui-t2">
29
<div id="doc3" class="yui-t2">
30
   
30
   
Lines 32-38 Link Here
32
	<div id="yui-main">
32
	<div id="yui-main">
33
	<div class="yui-b">
33
	<div class="yui-b">
34
	
34
	
35
		[% UNLESS ( suggestions_loop ) %]<form action="/cgi-bin/koha/acqui/histsearch.pl" method="post">
35
[% UNLESS ( order_loop ) %]<form action="/cgi-bin/koha/acqui/histsearch.pl" method="post">
36
<fieldset class="rows">
36
<fieldset class="rows">
37
	<legend>Search Orders</legend>
37
	<legend>Search Orders</legend>
38
		<ol>
38
		<ol>
Lines 49-54 Link Here
49
            <label for="basketgroupname">Basket group:</label>
49
            <label for="basketgroupname">Basket group:</label>
50
            <input type="text" name="basketgroupname" id="basketgroupname" value="[% basketgroupname %]" />
50
            <input type="text" name="basketgroupname" id="basketgroupname" value="[% basketgroupname %]" />
51
        </li>
51
        </li>
52
53
        <li>
54
            <label for="orderstatus">Order Status: </label>
55
            <select name="orderstatus" id="orderstatus">
56
                <option value=""></option>
57
                <option value="0">New</option>
58
                <option value="1">Ordered</option>
59
                <option value="2">Partial</option>
60
                <option value="3">Complete</option>
61
                <option value="4">Deleted</option>
62
            </select>
63
        </li>
64
65
        <li>
66
            <label for="fund">Fund: </label>
67
            <select name="budget" id="fund">
68
                <option value="">All funds</option>
69
                [% FOREACH bp_loo IN bp_loop %]
70
                    <optgroup label="[% bp_loo.budget_period_description %]">
71
                    [% FOREACH h_loo IN bp_loo.hierarchy %]
72
                        <option type="text" value="[% h_loo.budget_id %]" branchcode="[% h_loo.budget_branchcode %]">
73
                            [% h_loo.budget_display_name %]
74
                        </option>
75
                    [% END %]
76
                    </optgroup>
77
                [% END %]
78
            </select>
79
        </li>
80
52
		<li><label for="from">From: </label> 
81
		<li><label for="from">From: </label> 
53
        <input type="text" size="10" id="from" name="from" value="[% from_placed_on %]" class="datepickerfrom" />
82
        <input type="text" size="10" id="from" name="from" value="[% from_placed_on %]" class="datepickerfrom" />
54
				<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
83
				<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
Lines 62-72 Link Here
62
    <input type="hidden" name="do_search" value="1" />
91
    <input type="hidden" name="do_search" value="1" />
63
	<fieldset class="action"><input type="submit" value="Search" /></fieldset>
92
	<fieldset class="action"><input type="submit" value="Search" /></fieldset>
64
	</form>[% END %]
93
	</form>[% END %]
65
    [% IF ( suggestions_loop ) %]<h1>Search results</h1>
94
    [% IF ( order_loop ) %]<h1>Search results</h1>
66
	<div id="acqui_histsearch">
95
	<div id="acqui_histsearch">
67
        <table id="histsearcht">
96
        <table id="histsearcht">
68
            <thead>
97
            <thead>
69
			<tr>
98
			<tr>
99
                <th>Order line</th>
70
				<th>Basket</th>
100
				<th>Basket</th>
71
				<th>Basket group</th>
101
				<th>Basket group</th>
72
                <th>Invoice number</th>
102
                <th>Invoice number</th>
Lines 75-115 Link Here
75
				<th>Vendor</th>
105
				<th>Vendor</th>
76
				<th>Placed on</th>
106
				<th>Placed on</th>
77
				<th>Received on</th>
107
				<th>Received on</th>
78
				<th>Quantity ordered</th>
108
                <th>Status</th>
109
                <th>Quantity received</th>
110
                <th>Pending order</th>
79
				<th>Unit cost</th>
111
				<th>Unit cost</th>
112
                <th>Fund</th>
80
			</tr>
113
			</tr>
81
            </thead>
114
            </thead>
82
            <tbody>
115
            <tbody>
83
			[% FOREACH suggestions_loo IN suggestions_loop %]
116
            [% FOREACH order IN order_loop %]
84
				<tr>
117
                <tr>
85
                    <td>[% suggestions_loo.basketname %] (<a href="basket.pl?basketno=[% suggestions_loo.basketno %]">[% suggestions_loo.basketno %]</a>)</td>
118
                    <td>[% order.parent_ordernumber %]</td>
119
                    <td>[% order.basketname %] (<a href="basket.pl?basketno=[% order.basketno %]">[% order.basketno %]</a>)</td>
86
                    <td>
120
                    <td>
87
                        [% IF ( suggestions_loo.basketgroupid ) %]
121
                        [% IF ( order.basketgroupid ) %]
88
                            [% suggestions_loo.groupname %] (<a href="basketgroup.pl?booksellerid=[% suggestions_loo.id %]">[% suggestions_loo.basketgroupid %]</a>)
122
                            [% order.groupname %] (<a href="basketgroup.pl?booksellerid=[% order.id %]">[% order.basketgroupid %]</a>)
89
                        [% ELSE %]
123
                        [% ELSE %]
90
                            &nbsp;
124
                            &nbsp;
91
                        [% END %]
125
                        [% END %]
92
                    </td>
126
                    </td>
93
                    <td>[% IF  suggestions_loo.invoicenumber  %]
127
                    <td>[% IF ( order.invoicenumber ) %]
94
                        <a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% suggestions_loo.invoiceid %]">[% suggestions_loo.invoicenumber %]</a>
128
                            <a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% order.invoiceid %]">[% order.invoicenumber %]</a>
95
					    [% ELSE %]
129
                        [% ELSE %]
96
					        &nbsp;
130
                            &nbsp;
97
					    [% END %]
131
                        [% END %]
98
					</td>
132
                    </td>
99
                    <td>[% suggestions_loo.ordernumber %]</td>
133
                    <td>[% order.ordernumber %]</td>
100
					<td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% suggestions_loo.biblionumber %]">[% suggestions_loo.title |html %]</a>
134
                    <td>
101
                        <br />[% suggestions_loo.author %] <br /> [% suggestions_loo.isbn %]</td>
135
                        <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% order.biblionumber %]">[% order.title |html %]</a>
102
					<td><a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% suggestions_loo.id %]">[% suggestions_loo.name %]</a></td>
136
                        <br />[% order.author %] <br /> [% order.isbn %]
103
					<td>[% suggestions_loo.creationdate | $KohaDates %]</td>
137
                    </td>
138
                    <td><a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% order.id %]">[% order.name %]</a></td>
139
                    <td>[% order.creationdate | $KohaDates %]</td>
140
                    <td>
141
                        [% IF order.datereceived %]
142
                            [% order.datereceived | $KohaDates %]
143
                        [% END %]
144
                    </td>
104
                    <td>
145
                    <td>
105
                        [% IF suggestions_loo.datereceived %]
146
                        [% SWITCH order.orderstatus %]
106
                            [% suggestions_loo.datereceived | $KohaDates %]
147
                            [% CASE '0' %]New
148
                            [% CASE '1' %]Ordered
149
                            [% CASE '2' %]Partial
150
                            [% CASE '3' %]Complete
151
                            [% CASE '4' %]Deleted
107
                        [% END %]
152
                        [% END %]
108
                    </td>
153
                    </td>
109
					<td>[% suggestions_loo.quantity %]</td>
154
                    <td>[% order.quantityreceived %]</td>
110
					<td>[% suggestions_loo.ecost %]</td>
155
                    <td>[% order.quantity %]</td>
111
				</tr>
156
                    <td>[% order.ecost %]</td>
112
			[% END %]
157
                    <td>[% order.budget_name %]</td>
158
                </tr>
159
            [% END %]
113
            </tbody>
160
            </tbody>
114
		</table>
161
		</table>
115
	</div>[% ELSE %][% END %]
162
	</div>[% ELSE %][% END %]
116
- 

Return to bug 5336