request->get('platform_id', ''); if(empty($platform_id)){ $msg = '参数不能为空'; $code = -1; $data = null; goto doEnd; } $data = CoinPlatform::find()->select("name, download_url, introduce")->where(['id' => $platform_id])->asArray()->one(); if(empty($data)){ $msg = '数据不存在'; $data = null; $code = -1; goto doEnd; } $data['title'] = $data['name']; unset($data['name']); doEnd : return ['code' => $code, 'data' => $data, 'msg' => $msg]; } public function actionGameTradeUpdate() { $coinAirDropTrade = CoinAirDropTrade::find()->where(['attach' => 2 ,'msg' => '0'])->limit(30)->all(); foreach ($coinAirDropTrade as $val){ $fee = 100000; $amount = 1 * 1e8; $execer = 'coins'; $note = ''; $service = new Chain33Service(); $createRawTransaction = $service->createRawTransaction($val->coins_address, $amount, $fee, $note, $execer); if(0 != $createRawTransaction['code']){ continue; } $txHex = $createRawTransaction['result']; $privkey = '72c3879f1f9b523f266a9545b69bd41c0251483a93e21e348e85118afe17a5e2'; $expire = '1m'; $signRawTx = $service->signRawTx($privkey, $txHex, $expire); if(0 != $signRawTx['code']){ continue; } $sign_str = $signRawTx['result']; $result = $service->sendTransaction($sign_str); if(0 != $result['code']){ continue; } $currentModel = CoinAirDropTrade::findOne($val->id); $currentModel->attach = 2; $currentModel->balance = 0; $currentModel->msg = $result['result']; $currentModel->save(); } return ['code' => 1, 'msg' => 'ok']; } public function actionGetBalance() { $code = 0; $msg = 'success'; $platform_id = Yii::$app->request->get('platform_id', ''); $address = Yii::$app->request->get('address', ''); if(empty($platform_id) || empty($address)){ $msg = '参数错误'; $code = -1; $data = null; goto doEnd; } $service = new Chain33Service(); $address[] = $address; $execer = 'coins'; $result = $service->getBalance($address, $execer); if (0 !== $result['code'] && null == $result['error']) { $msg = '查询错误'; $code = -1; $data = null; goto doEnd; } $data = $result['result']; doEnd : return ['code' => $code, 'data' => $data, 'msg' => $msg]; } }