From da0bcbc3760d2a3b2b4134647482de52671af85b Mon Sep 17 00:00:00 2001 From: hujiabin Date: Thu, 10 Nov 2022 15:09:13 +0800 Subject: [PATCH] 1 --- .../controller/BlockChainController.class.php | 48 ++++++++++++++----- 1 file changed, 35 insertions(+), 13 deletions(-) diff --git a/webapp/controller/BlockChainController.class.php b/webapp/controller/BlockChainController.class.php index df2d16f4..47bf14fc 100644 --- a/webapp/controller/BlockChainController.class.php +++ b/webapp/controller/BlockChainController.class.php @@ -173,10 +173,10 @@ class BlockChainController extends BaseAuthedController { 'item_id' => V_ITEM_GOLD, 'item_num' => \services\FormulaService::Hero_Advanced_CEG_Expend($nft1['quality']+1) ), -// array( -// 'item_id' => V_ITEM_DIAMOND, -// 'item_num' => \services\FormulaService::Hero_Advanced_CEC_Expend($nft1['quality']+1) -// ) + array( + 'item_id' => V_ITEM_DIAMOND, + 'item_num' => \services\FormulaService::Hero_Advanced_CEC_Expend($nft1['quality']+1) + ) ); $lackItem = null; if (!$this->_hasEnoughItems($costItems, $lackItem)) { @@ -227,10 +227,10 @@ class BlockChainController extends BaseAuthedController { 'item_id' => V_ITEM_GOLD, 'item_num' => \services\FormulaService::Weapon_Advanced_CEG_Expend($nft1['quality']+1) ), -// array( -// 'item_id' => V_ITEM_DIAMOND, -// 'item_num' => \services\FormulaService::Weapon_Advanced_CEC_Expend($nft1['quality']+1) -// ) + array( + 'item_id' => V_ITEM_DIAMOND, + 'item_num' => \services\FormulaService::Weapon_Advanced_CEC_Expend($nft1['quality']+1) + ) ); $lackItem = null; @@ -238,7 +238,12 @@ class BlockChainController extends BaseAuthedController { $this->_rspErr(3, $this->_getLackItemErrMsg($lackItem)); return; } - $this->_decItems($costItems); + $decFeeCb = function ($transId) use ($costItems){ + myself()->_decItems($costItems); + foreach ($costItems as $costItem){ + TransactionPrefee::add($transId,$costItem); + } + }; } $this->internalBcCall( @@ -258,7 +263,8 @@ class BlockChainController extends BaseAuthedController { 'tokenType' => Nft::EQUIP_TYPE, 'itemUniId' => $nft1['gun_uniid'], 'itemId' => $nft1['gun_id'] - ) + ), + $decFeeCb ); } break; @@ -418,7 +424,13 @@ class BlockChainController extends BaseAuthedController { $this->_rspErr(3, $this->_getLackItemErrMsg($lackItem)); return; } - $this->_decItems($costItems); + $decFeeCb = function ($transId) use ($costItems){ + myself()->_decItems($costItems); + foreach ($costItems as $costItem){ + TransactionPrefee::add($transId,$costItem); + } + }; +// $this->_decItems($costItems); } if ($tokenType == Nft::EQUIP_TYPE){ $costItems = array( @@ -432,7 +444,13 @@ class BlockChainController extends BaseAuthedController { $this->_rspErr(3, $this->_getLackItemErrMsg($lackItem)); return; } - $this->_decItems($costItems); + $decFeeCb = function ($transId) use ($costItems){ + myself()->_decItems($costItems); + foreach ($costItems as $costItem){ + TransactionPrefee::add($transId,$costItem); + } + }; +// $this->_decItems($costItems); } } @@ -471,6 +489,7 @@ class BlockChainController extends BaseAuthedController { 0, $itemId ); + $decFeeCb($transId); myself()->_rspData(array( 'trans_id' => $transId, 'params' => $rspObj['params'] @@ -819,6 +838,8 @@ class BlockChainController extends BaseAuthedController { } private function internalBcCall($params, $transParams, $cb = null) { + $propertyChgService = new services\PropertyChgService(); + $propertyChgService->addUserChg(); $url = self::getWeb3ServiceUrl(); $response = ''; if (!phpcommon\HttpClient::get @@ -846,7 +867,8 @@ class BlockChainController extends BaseAuthedController { } myself()->_rspData(array( 'trans_id' => $transId, - 'params' => $rspObj['params'] + 'params' => $rspObj['params'], + 'property_chg' => $propertyChgService->toDto(), )); } else { myself()->_rspErr(500, 'server internal error');