diff --git a/webapp/services/callback/InAppPurchase.php b/webapp/services/callback/InAppPurchase.php index f7179854..28176ce3 100644 --- a/webapp/services/callback/InAppPurchase.php +++ b/webapp/services/callback/InAppPurchase.php @@ -7,6 +7,7 @@ require_once("mt/Item.php"); require_once("models/ShopBuyRecord.php"); require_once("models/InAppOrder.php"); +require_once("models/InAppRecord.php"); require_once("services/LogService.php"); require_once("ShopAddItemService.php"); @@ -18,6 +19,7 @@ use mt\Item; use models\ShopBuyRecord; use models\InAppOrder; +use models\InAppRecord; use services\LogService; @@ -123,11 +125,14 @@ class InAppPurchase { $itemId = $goodsMeta['item_id']; $itemNum = $goodsMeta['item_num']; if ($itemId == V_ITEM_DIAMOND) { + InAppRecord::addAmount($orderDb['price']); $event = [ 'name' => LogService::RECHARGE_DIAMOND, 'val' => $itemNum ]; LogService::productDiamondCallback(['account_id' => $orderDb['account_id']], $event); + $addItemService = new ShopAddItemService(); + $addItemService->addItemByAccountId($orderDb['account_id'], $itemId, $itemNum); } else { myself()->_addLogEx($orderDb['account_id'], 'InAppPurchase', 'error_goods_item_id', array( diff --git a/webapp/services/callback/ShopAddItemService.php b/webapp/services/callback/ShopAddItemService.php index 8b421de7..7cfb2410 100644 --- a/webapp/services/callback/ShopAddItemService.php +++ b/webapp/services/callback/ShopAddItemService.php @@ -31,6 +31,13 @@ class ShopAddItemService } public function addItem($address,$itemId,$itemNum){ + $accountId = $this->getAccountId($address); + if ($accountId) { + $this->addItemByAccountId($accountId); + } + } + + public function addItemByAccountId($accountId,$itemId,$itemNum){ if ($itemNum < 1){ return; } @@ -38,8 +45,7 @@ class ShopAddItemService if (!$itemMeta){ return; } - $accountId = $this->getAccountId($address); - $conn = myself()->_getMysql($address); + $conn = myself()->_getMysql($accountId); if ($this->_isVirtualItem($itemId)) { $this->_addVirtualItem($conn,$accountId,$itemId, $itemNum); }else{ @@ -67,9 +73,6 @@ class ShopAddItemService } } } - - - } public function decItem($address, $itemId, $itemNum) @@ -314,4 +317,4 @@ class ShopAddItemService ); } -} \ No newline at end of file +}