Bug 8575: Expected items count should not include cancelled orders
authorJulian Maurice <julian.maurice@biblibre.com>
Mon, 6 Aug 2012 12:20:25 +0000 (14:20 +0200)
committerPaul Poulain <paul.poulain@biblibre.com>
Fri, 31 Aug 2012 15:58:43 +0000 (17:58 +0200)
To test:
  1/ create a new basket with 2 orders, one with 1 item, another with 2
     items
  2/ look at booksellers.pl page, you should see that 3 items are
     expected
  3/ cancel the order with 1 item
  4/ refresh booksellers.pl page, it should remains 2 expected items

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Works exactly as designed

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
C4/Acquisition.pm

index 9678ffc..f6f5805 100644 (file)
@@ -565,7 +565,12 @@ sub GetBasketsInfosByBookseller {
         SELECT aqbasket.*,
           SUM(aqorders.quantity) AS total_items,
           COUNT(DISTINCT aqorders.biblionumber) AS total_biblios,
-          SUM(IF(aqorders.datereceived IS NULL, aqorders.quantity, 0)) AS expected_items
+          SUM(
+            IF(aqorders.datereceived IS NULL
+              AND aqorders.datecancellationprinted IS NULL
+            , aqorders.quantity
+            , 0)
+          ) AS expected_items
         FROM aqbasket
           LEFT JOIN aqorders ON aqorders.basketno = aqbasket.basketno
         WHERE booksellerid = ?