Authored by Rock Zhang

再次优化限购商品结算判定接口

@@ -318,9 +318,10 @@ class CartModel @@ -318,9 +318,10 @@ class CartModel
318 * @param string $sku 商品sku,用于限购商品购买 318 * @param string $sku 商品sku,用于限购商品购买
319 * @param stirng $skn 商品skn,用于限购商品购买 319 * @param stirng $skn 商品skn,用于限购商品购买
320 * @param int $buyNumber 购买商品数目,用户限购商品支付 320 * @param int $buyNumber 购买商品数目,用户限购商品支付
  321 + * @param bool $isAjax 是否是异步请求
321 * @return array 接口返回的数据 322 * @return array 接口返回的数据
322 */ 323 */
323 - public static function cartPay($uid, $cartType, $orderInfo, $limitProductCode, $sku, $skn, $buyNumber) 324 + public static function cartPay($uid, $cartType, $orderInfo, $limitProductCode, $sku, $skn, $buyNumber, $isAjax = false)
324 { 325 {
325 $result = array(); 326 $result = array();
326 327
@@ -353,6 +354,10 @@ class CartModel @@ -353,6 +354,10 @@ class CartModel
353 break; 354 break;
354 } 355 }
355 356
  357 + if ($isAjax) { // 如果是异步请求,求直接返回,不进行下面的处理,从而优化性能
  358 + break;
  359 + }
  360 +
356 $payReturn = $pay['data']; 361 $payReturn = $pay['data'];
357 $address = array(); 362 $address = array();
358 $orderCompute = array(); 363 $orderCompute = array();
@@ -302,12 +302,14 @@ class IndexController extends AbstractAction @@ -302,12 +302,14 @@ class IndexController extends AbstractAction
302 302
303 // 购物车商品为空跳转到购物车页面 303 // 购物车商品为空跳转到购物车页面
304 $uid = $this->getUid(true); 304 $uid = $this->getUid(true);
305 - $order = CartModel::cartPay($uid, $cartType, $orderInfo, $limitProductCode, $sku, $skn, $buyNumber); 305 + $isAjax = $this->isAjax();
  306 + $order = CartModel::cartPay($uid, $cartType, $orderInfo, $limitProductCode, $sku, $skn, $buyNumber, $isAjax);
306 if (isset($order['cartUrl'])) { // 普通或者预售商品为空时 307 if (isset($order['cartUrl'])) { // 普通或者预售商品为空时
307 $this->go($order['cartUrl']); 308 $this->go($order['cartUrl']);
308 } 309 }
309 310
310 - if ($this->isAjax()) { // 限购商品支付接口返回为空或错误时(异步请求) 311 + // 限购商品支付接口返回为空或错误时(异步请求)
  312 + if ($isAjax) {
311 $this->echoJson($order); 313 $this->echoJson($order);
312 return; 314 return;
313 } 315 }