use_class('logger'); $logger = new logger('cron', 'set-leadtime-start-date'); use_class('jng_sp_orders'); $class_jo = new jng_sp_orders(); $conf_open_orders = load_config('open-orders'); $shipping_window_release_buffer = $conf_open_orders['shipwin-rel-buffer']; $payment_method_vorkasse = strtoupper(trim(PAYMENT_METHOD_BANK_TRANSFER)); $payment_method_prepayment = strtoupper(trim(PAYMENT_METHOD_PREPAYMENT)); $q = "SELECT joi.*, DATE_ADD(jo.order_date, INTERVAL {$shipping_window_release_buffer} DAY) leadtime_start_date"; $q .= " FROM jng_sp_orders jo"; $q .= " INNER JOIN jng_sp_orders_items joi ON joi.jng_sp_orders_id = jo.jng_sp_orders_id"; $q .= " WHERE " . $class_jo->filterQueryForShippingWindow($shipping_window_release_buffer); $q .= " AND joi.status = 1 AND joi.stock_status = '0'"; $q .= " AND UPPER(jo.payment_method) NOT IN ('{$payment_method_vorkasse}', '{$payment_method_prepayment}')"; $res = tep_db_query($q); $leadtime_start_date = date('Y-m-d H:i:s'); $n_updated = 0; while ($r = tep_db_fetch_array($res)) { $oiid = $r['jng_sp_orders_items_id']; $leadtime_start_date = $r['leadtime_start_date']; //activate reset lsd in case there changes of config value "shipwin-rel-buffer" $item_updated = $class_jo->leadtimeSetStart($leadtime_start_date, $r, '', true); if ($item_updated > 0) { $logger->write("SP-{$oiid} set with leadtime start date = {$leadtime_start_date}"); $n_updated++; } } echo "{$n_updated} order item are updated with leadtime start date\n"; $logger->write("{$n_updated} order item are updated with leadtime start date"); $logger->close(); echo 'DONE!';
$oi['delivery_time'] = $i->DELIVERY_TIME; $oi['delivery_replacement_time'] = 'null'; $oi['text'] = 'null'; $oi['price_received'] = !isset($i->TRANSFER_PRICE) || $i->TRANSFER_PRICE == 0 || $i->TRANSFER_PRICE == $i->ITEM_PRICE ? getPurchasePrice($i->ITEM_PRICE, $jng_sp_id) : $i->TRANSFER_PRICE; $oi['price'] = $i->ITEM_PRICE; $oi['order_item_count'] = $n_item; $oi['order_item_total'] = $n_items; foreach ($oi as $k => $v) { $oi[$k] = utf8_decode($v); } $oi_id = $class_jo->addItem($orders_id, $oi); logThis(" = ORDER ITEM ID {$oi_id} created"); $items_ids[] = $oi_id; $items_created++; } $class_jo->leadtimeSetStart($leadtime_start_date, '', $orders_id); } else { //FAILED TO CREATE NEW ORDER $existing_order = $class_jo->retrieveDetail(null, $o['order_id']); $orders_id = $existing_order['jng_sp_orders_id']; if ($orders_id > 0) { //ORDER ALREADY EXIST logThis(" = Existing order found {$orders_id}"); $items = $class_jo->retrieveItems($orders_id); foreach ($items as $i) { $items_ids[] = $i['jng_sp_orders_items_id']; } if ($is_approved) { //SET AS PAID FOR PREPAYMENT ORDER THAT CONFIRMED PAID BY TB logThis(" = Update prepayment status as paid"); if ($existing_order['payment_status'] == 0) {
$ids = tep_db_prepare_input($_GET['id']); } if (in_array('SPNP', $types)) { //SP NON-PREPAYMENT $q = "SELECT joi.* FROM jng_sp_orders jo \r\n INNER JOIN jng_sp_orders_items joi ON joi.jng_sp_orders_id = jo.jng_sp_orders_id \r\n WHERE jo.order_date > '2013-11-01' " . ($reset_lsd ? '' : "AND IFNULL(joi.leadtime_start_date,'') = ''") . "\r\n AND UPPER(TRIM(jo.payment_method)) NOT IN ('" . strtoupper(PAYMENT_METHOD_BANK_TRANSFER) . "','" . strtoupper(PAYMENT_METHOD_PREPAYMENT) . "')"; if ($ids != '') { $q .= " AND joi.jng_sp_orders_items_id IN ({$ids})"; } $res = tep_db_query($q); while ($r = tep_db_fetch_array($res)) { $oiid = $r['jng_sp_orders_items_id']; $dbq = tep_db_query("SELECT * FROM jng_sp_orders_items_status_history WHERE jng_sp_orders_items_id = {$oiid} AND status = 1 ORDER BY status_date ASC LIMIT 1"); $r_his = tep_db_fetch_array($dbq); if (isset($r_his['status_date'])) { $leadtime_start_date = $r_his['status_date']; $n_updated = $class_jo->leadtimeSetStart($leadtime_start_date, $r, '', $reset_lsd); if ($n_updated > 0) { echo "SP-{$oiid} ~ {$leadtime_start_date}<br/>"; } } } } if (in_array('SPP', $types)) { //SP PREPAYMENT use_class('payone_invoice'); $q = "SELECT jo.* FROM jng_sp_orders jo \r\n INNER JOIN jng_sp_orders_items joi ON joi.jng_sp_orders_id = jo.jng_sp_orders_id \r\n WHERE jo.order_date > '2013-11-01' " . ($reset_lsd ? '' : " AND IFNULL(joi.leadtime_start_date,'') = ''") . "\r\n AND jo.payment_status = 1 \r\n AND UPPER(TRIM(jo.payment_method)) IN ('" . strtoupper(PAYMENT_METHOD_BANK_TRANSFER) . "','" . strtoupper(PAYMENT_METHOD_PREPAYMENT) . "') \r\n AND jo.jng_sp_id != 8"; if ($ids != '') { $q .= " AND joi.jng_sp_orders_items_id IN ({$ids})"; } $res = tep_db_query($q); while ($r = tep_db_fetch_array($res)) {