diff --git a/webapp/controller/ShopController.class.php b/webapp/controller/ShopController.class.php index 09392380..22699789 100644 --- a/webapp/controller/ShopController.class.php +++ b/webapp/controller/ShopController.class.php @@ -79,6 +79,10 @@ class ShopController extends BaseAuthedController { myself()->_rspErr(1, 'no right to purchase'); return; } + if ($goodsNum < 1) { + myself()->_rspErr(1, 'goods_num paramater error'); + return; + } if ($goodsNum > $goodsMeta['max_amount']) { myself()->_rspErr(1, "goods_num parameter error, max_amount: {$goodsMeta['max_amount']}"); return; @@ -120,8 +124,10 @@ class ShopController extends BaseAuthedController { } $costItemId = myself()->getCostItemIdByTokenType($tokenType); $costItems = array( - 'item_id' => $costItemId, - 'item_num' => $goodsNum * $price + array( + 'item_id' => $costItemId, + 'item_num' => $goodsNum * $price + ) ); $lackItem = null; if (!myself()->_hasEnoughItems($costItems, $lackItem)) { @@ -134,7 +140,7 @@ class ShopController extends BaseAuthedController { $this->internalAddItem($awardService, $propertyChgService, $itemMeta, - $goodsMeta['goods_num'] + $goodsMeta['item_num'] ); } $propertyChgService->addUserChg(); @@ -375,8 +381,10 @@ class ShopController extends BaseAuthedController { { myself()->_addItems( array( - 'item_id' => $itemMeta['id'], - 'item_num' => $count + array( + 'item_id' => $itemMeta['id'], + 'item_num' => $count + ) ), $awardService, $propertyChgService);