/** * Refresh Stock Booking for unpaid prepayment orders of selected SP * @return Array */ function zadeRefreshPrepaymentBooking() { use_class('stock_booking'); use_class('products_minierp'); $booking = new stock_booking(ZALANDO_PREPAYMENT_BOOKING_ID); $class_pm = new products_minierp(); //CLEAR BOOKING ITEMS $booking->removeItem('*'); $spid_list = '8, 10'; //GET ZADE PREPAYMENT ORDERS THAT STILL NOT YET PAID $q = "SELECT joi.products_id, joi.products_articles_id, joi.order_quantity" . " FROM jng_sp_orders jo" . " INNER JOIN jng_sp_orders_items joi" . " ON joi.jng_sp_orders_id = jo.jng_sp_orders_id AND joi.status = 1" . " WHERE jo.jng_sp_id IN ({$spid_list})" . " AND jo.payment_method = '" . PAYMENT_METHOD_PREPAYMENT . "'" . " AND jo.payment_status = 0"; $dbq = tep_db_query($q); $items_added = array(); while ($r = tep_db_fetch_array($dbq)) { $pid = $r['products_id']; $aid = $r['products_articles_id']; $quantity = $r['order_quantity']; $ps = $class_pm->stockRetrieveDetail(WAREHOUSE_ID_PRODUCTS_HAMBURG, $pid, $aid); $products_stock_id = $ps['products_stock_id']; if ($products_stock_id > 0) { $booking->addItem($products_stock_id, $quantity); $items_added[$products_stock_id] = $quantity; } else { //WHAT SHOULD WE DO WHEN ARTICLES NOT EXIST ON DEPOT : // - CREATE MDO ? // - SEND EMAIL TO KEY ACCOUNT ? } } return $items_added; }