Example #1
0
 public static function getsaleandnosendall($sku, $storeId = 1)
 {
     //获取虚拟/待发货库存(除超大订单进来的待发货)
     self::initDB();
     $totalnums = 0;
     $combineskus = GoodsModel::getCombineBySku($sku);
     //var_dump($combineskus);
     $skus = empty($combineskus) ? array() : array_keys($combineskus);
     array_push($skus, $sku);
     //var_dump($skus); echo "<br>";
     $skus_str = implode("','", $skus);
     $skus_str = "'" . $skus_str . "'";
     //echo "<pre>";
     //$skus = GoodsModel::getCombineANDSKU($sku); //$combineskus
     //var_dump($skus); echo "<br>";
     //exit;
     //return 0;
     $menuList = StatusMenuModel::getStatusMenuList("*", " where dStatus = 1 and groupId = 0 and is_delete=0 and storeId= {$storeId} ");
     //var_dump($menuList); exit;
     $dStatusCodes = array();
     foreach ($menuList as $value) {
         if ($value['statusCode']) {
             $dStatusCodes[] = $value['statusCode'];
         }
     }
     $tendaytime = time() - 10 * 24 * 60 * 60;
     //待发货二级状态已经暂不寄超过十天时间
     $ordersql = 'SELECT b.sku, b.amount FROM om_unshipped_order AS a JOIN om_unshipped_order_detail AS b ON a.id = b.omOrderId where a.orderStatus in (' . join(',', $dStatusCodes) . ') and a.is_delete=0 and a.storeId= ' . $storeId . ' AND b.sku in (' . $skus_str . ') and b.is_delete=0 and b.storeId= ' . $storeId;
     $query = self::$dbConn->query($ordersql);
     $skunums = self::$dbConn->fetch_array_all($query);
     foreach ($skunums as $sku_info) {
         $realtimes = get_realtime($sku_info["sku"]);
         $totalnums += $sku_info["amount"] * $realtimes;
     }
     $ordersql = 'SELECT b.sku, b.amount FROM om_unshipped_order AS a JOIN om_unshipped_order_detail AS b ON a.id = b.omOrderId where a.orderStatus = ' . C('STATESENDTEMP') . ' and a.paymentTime > ' . $tendaytime . ' and a.is_delete=0 and a.storeId= ' . $storeId . ' AND b.sku in (' . $skus_str . ') and b.is_delete=0 and b.storeId= ' . $storeId;
     $query = self::$dbConn->query($ordersql);
     $skunums = self::$dbConn->fetch_array_all($query);
     foreach ($skunums as $sku_info) {
         $realtimes = get_realtime($sku_info["sku"]);
         $totalnums += $sku_info["amount"] * $realtimes;
     }
     /*$ordersql 	 =  'SELECT a.id FROM om_unshipped_order AS a where a.orderStatus in ('.join(',', $dStatusCodes).') and a.is_delete=0 and a.storeId= '.$storeId;
     		$ordersql    .= ' UNION ';
     		$ordersql    .= 'SELECT a.id FROM om_unshipped_order AS a where a.orderStatus = '.C('STATESENDTEMP').' and a.paymentTime > '.$tendaytime.' and a.is_delete=0 and a.storeId= '.$storeId;
     		//echo $ordersql; echo "<br>"; exit;
     		$query	     =	self::$dbConn->query($ordersql);	
     		$orders      =	self::$dbConn->fetch_array_all($query);*/
     //var_dump($orders); exit;
     //return 10;
     /*foreach($orders as $value){
     			//foreach($skus as $_sku => $_num){
     				$detailsql 	 =  'SELECT b.sku, b.amount FROM om_unshipped_order_detail AS b where b.omOrderId = '.$value['id'].' AND b.sku in ('.$skus_str.') and b.is_delete=0 and b.storeId= '.$storeId;
     				echo $detailsql; echo "<br>";
     				exit;
     				$query	     =	self::$dbConn->query($detailsql);
     				$detail      =	self::$dbConn->fetch_array_all($query);
     				if(empty($detail)){
     					continue;
     				}
     				//var_dump($detail);
     				foreach($detail as $val){
     					//$_sku    = $val['sku'];
     					$amount = intval($val['amount']);
     					$totalnums += ($amount*$_num);
     				}
     			//}
     		}*/
     //var_dump($totalnums);
     //新的待发货计算没有数据,并且缺货配货记录,等待配货的信息@2013-11-10
     return json_encode($totalnums);
 }
Example #2
0
function get_waiting_sale($sku)
{
    global $dbcon;
    $totalnums = 0;
    $combineskus = get_combinesku($sku);
    $skus = empty($combineskus) ? array() : array_keys($combineskus);
    array_push($skus, $sku);
    $skus_str = implode("','", $skus);
    $skus_str = "'" . $skus_str . "'";
    $sql = "SELECT b.ebay_amount ,b.sku\n\t\t\t\t\tFROM ebay_order AS a \n\t\t\t\t\tLEFT JOIN ebay_orderdetail AS b ON a.ebay_ordersn = b.ebay_ordersn \n\t\t\t\t\tWHERE a.ebay_status  IN (705,706,707,710)\n\t\t\t\t\tAND b.sku in ({$skus_str})\n\t\t\t\t\tAND a.ebay_combine!='1'\n\t\t\t\t\t";
    $sql = $dbcon->execute($sql);
    $skunums = $dbcon->getResultArray($sql);
    foreach ($skunums as $sku_info) {
        $realtimes = get_realtime($sku_info["sku"]);
        $totalnums += $sku_info["ebay_amount"] * $realtimes;
    }
    return $totalnums;
}