diff --git a/webapp/controller/HeroSkinController.class.php b/webapp/controller/HeroSkinController.class.php index f1a62e07..eb167302 100644 --- a/webapp/controller/HeroSkinController.class.php +++ b/webapp/controller/HeroSkinController.class.php @@ -116,6 +116,8 @@ class HeroSkinController extends BaseAuthedController { public function synSkin(){ $skinId = trim(getReqVal('skin_id', 0)); + $itemId = getReqVal('item_id',0); + $itemNum = getReqVal('item_num',0); $itemMeta = \mt\Item::get($skinId); if ($itemMeta['type'] != \mt\Item::HERO_SKIN_TYPE){ $this->_rspErr(1, 'skin_id error'); @@ -127,10 +129,15 @@ class HeroSkinController extends BaseAuthedController { return; } $needItem = explode(':',$dressMeta['needItem']); + if ($itemId !=$needItem[0] || $itemNum < $needItem[1]){ + $this->_rspErr(1, "item number enough "); + return; + } + $number = floor($itemNum / $needItem[1]); $costItems = array( array( 'item_id' => $needItem[0], - 'item_num' => $needItem[1] + 'item_num' => $needItem[1] * $number ), ); $lackItem = null; @@ -141,7 +148,9 @@ class HeroSkinController extends BaseAuthedController { $this->_decItems($costItems); $propertyChgService = new services\PropertyChgService(); $propertyChgService->addBagChg(); - HeroSkin::addSkin($itemMeta); + for ($i=0; $i<$number; $i++){ + HeroSkin::addSkin($itemMeta); + } $lastIdx = SqlHelper::getLastInsertId( myself()->_getSelfMysql()); $skinDb = HeroSkin::find($lastIdx); $propertyChgService->addHeroSkinChg(); @@ -151,7 +160,10 @@ class HeroSkinController extends BaseAuthedController { 'SUB_KEY' => 'heroSkin_synthesis', 'cost_fragment' => $costItems, 'result' => 1, - 'outcome_skin' => $skinDb, + 'outcome_skin' => array( + 'item_id' => $skinId, + 'item_num' => $number + ), ); LogService::burialPointEvent($event); $this->_rspData(array( diff --git a/webapp/models/Recharge.php b/webapp/models/Recharge.php new file mode 100644 index 00000000..51ba0017 --- /dev/null +++ b/webapp/models/Recharge.php @@ -0,0 +1,40 @@ +_getNowTime(), + myself()->_getAddress() + ); + SqlHelper::insert + (myself()->_getSelfMysql(), + 't_recharge_order', + array( + 'order_id' => $orderId, + 'account_id' => myself()->_getAccountId(), + 'account_address' => myself()->_getAddress(), + 'currency_address' => '0xfd42bfb03212da7e1a4608a44d7658641d99cf34', + 'currency_name' => 'TestToken', + 'status' => 0, + 'item_id' => $goodsId, + 'item_num' => 1, + 'price' => 1, + 'createtime' => myself()->_getNowTime(), + 'modifytime' => myself()->_getNowTime(), + ) + ); + return $orderId; + } + +}