/** * 获取可用库存及天数 */ public function act_getStockDays() { global $dbconn; $skuArr = isset($_REQUEST['skuArr']) ? json_decode($_REQUEST['skuArr'], TRUE) : ''; if (empty($skuArr)) { self::$errCode = '001'; self::$errMsg = 'skuArr param error'; return array(); } $fields = implode(',', array('sku', 'everyday_sale', 'stock_qty', 'ow_stock', 'salensend')); $where = 'WHERE sku IN (\'' . implode("','", $skuArr) . '\')'; $szdata = SkuStatisticsModel::getInfo($fields, $where); $szskuarr = empty($szdata) ? array() : array_keys($szdata); $fields = implode(',', array('sku', 'everyday_sale', 'virtual_stock')); $where = 'WHERE sku IN (\'' . implode("','", $skuArr) . '\')'; $owdata = SkuStatisticsModel::getOwInfo($fields, $where); $owskuarr = empty($owdata) ? array() : array_keys($owdata); $res = array(); $skuarray = array_unique(array_merge($szskuarr, $owskuarr)); if (!empty($skuarray)) { foreach ($skuarray as $sku) { $sz_stock = $ow_stock = 0; $sz_days = $ow_days = 0; if (!empty($szdata[$sku])) { $sz_stock = $szdata[$sku]['stock_qty'] + $szdata[$sku]['ow_stock'] - $szdata[$sku]['salensend']; $sz_days = $szdata[$sku]['everyday_sale'] == 0 ? 0 : round_num($sz_stock / $szdata[$sku]['everyday_sale'], 2); } if (!empty($owdata[$sku])) { $ow_stock = $owdata[$sku]['virtual_stock']; $ow_days = $owdata[$sku]['everyday_sale'] == 0 ? 0 : round_num($ow_stock / $owdata[$sku]['everyday_sale'], 2); } $res[$sku]['sz_stock'] = $sz_stock; $res[$sku]['sz_days'] = $sz_days; $res[$sku]['ow_stock'] = $ow_stock; $res[$sku]['ow_days'] = $ow_days; } } return $this->_checkReturnData($res, array()); }