Commit 8e2bb30c authored by shajiaiming's avatar shajiaiming

fix

parent 5a9c02a0
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
* Date: 2018/12/29 * Date: 2018/12/29
* Time: 16:26 * Time: 16:26
*/ */
namespace api\controllers; namespace api\controllers;
use api\base\BaseController; use api\base\BaseController;
...@@ -33,23 +34,23 @@ class ServiceController extends BaseController ...@@ -33,23 +34,23 @@ class ServiceController extends BaseController
public function actionCoinTickers() public function actionCoinTickers()
{ {
$request = Yii::$app->request; $request = Yii::$app->request;
$coinItems = $request->post('names'); $coinItems = $request->post('names');
if(!$coinItems){ if (!$coinItems) {
return ['code' => 1,'data' => [],'msg' => '币种不能为空']; return ['code' => 1, 'data' => [], 'msg' => '币种不能为空'];
} }
if(!is_array($coinItems)){ if (!is_array($coinItems)) {
$coinItems = [$coinItems]; $coinItems = [$coinItems];
} }
$tol_coins = ['ETC']; $tol_coins = ['ETC'];
$tickerData = []; $tickerData = [];
if($coinItems){ if ($coinItems) {
foreach($coinItems as $item){ foreach ($coinItems as $item) {
$item = strtoupper($item); $item = strtoupper($item);
if(in_array($item,$tol_coins)){ if (in_array($item, $tol_coins)) {
$exchange = ExchangeFactory::createExchange('HuoBi'); $exchange = ExchangeFactory::createExchange('HuoBi');
if ($exchange->symbolExists($item)) { if ($exchange->symbolExists($item)) {
$quotation = $exchange->getTicker($item); $quotation = $exchange->getTicker($item);
if($quotation){ if ($quotation) {
//格式化行情数据 //格式化行情数据
foreach ($quotation as $key => $value) { foreach ($quotation as $key => $value) {
$quotation[$key] = (float)sprintf("%0.4f", (double)$value); $quotation[$key] = (float)sprintf("%0.4f", (double)$value);
...@@ -58,30 +59,34 @@ class ServiceController extends BaseController ...@@ -58,30 +59,34 @@ class ServiceController extends BaseController
$quotation['rmb'] = (float)sprintf("%0.4f", $rate * $quotation['last']); $quotation['rmb'] = (float)sprintf("%0.4f", $rate * $quotation['last']);
} }
} }
}else{ } else {
$quotation = ExchangeBusiness::getquatation($item); $quotation = ExchangeBusiness::getquatation($item);
} }
if (!$quotation) { if (!$quotation) {
//使用Coin服务 //使用Coin服务
try { try {
$coinServer = CoinFactory::createCoin($item, '', ''); $coinServer = CoinFactory::createCoin($item, '', '');
$tickerData[$item]['rmb'] = $coinServer->getPrice(); $tickerData[$item]['rmb'] = $coinServer->getPrice();
$tickerData[$item]['last'] = $coinServer->getDollar(); $tickerData[$item]['last'] = $coinServer->getDollar();
$tickerData[$item]['low'] = $coinServer->getLow(); $tickerData[$item]['low'] = $coinServer->getLow();
$tickerData[$item]['high'] = $coinServer->getHigh(); $tickerData[$item]['high'] = $coinServer->getHigh();
$tickerData[$item]['open'] = $coinServer->getDollar();
$tickerData[$item]['usd'] = $coinServer->getDollar();
$coinServer->__destruct(); $coinServer->__destruct();
} catch (\Exception $exception) { } catch (\Exception $exception) {
$tickerData[$item]['rmb'] = 0; $tickerData[$item]['rmb'] = 0;
$tickerData[$item]['last'] = 0; $tickerData[$item]['last'] = 0;
$tickerData[$item]['low'] = 0; $tickerData[$item]['low'] = 0;
$tickerData[$item]['high'] = 0; $tickerData[$item]['high'] = 0;
$tickerData[$item]['open'] = 0;
$tickerData[$item]['usd'] = 0;
\Yii::error($exception->getMessage()); \Yii::error($exception->getMessage());
} }
}else{ } else {
$tickerData[$item] = $quotation; $tickerData[$item] = $quotation;
} }
} }
return ['code' => 0,'data' => $tickerData,'msg' => '行情获取成功']; return ['code' => 0, 'data' => $tickerData, 'msg' => '行情获取成功'];
} }
} }
...@@ -94,13 +99,13 @@ class ServiceController extends BaseController ...@@ -94,13 +99,13 @@ class ServiceController extends BaseController
$platform_id = Yii::$app->request->get('platform_id', 6); $platform_id = Yii::$app->request->get('platform_id', 6);
$type = Yii::$app->request->get('type', 1); $type = Yii::$app->request->get('type', 1);
$coin_recommendItems = $this->coinRecommendList($platform_id, $type); $coin_recommendItems = $this->coinRecommendList($platform_id, $type);
$fields =['id', 'sid', 'icon', 'name', 'nickname','chain','platform']; $fields = ['id', 'sid', 'icon', 'name', 'nickname', 'chain', 'platform'];
$rows = Coin::getSelectList(1, 999, $fields,[['in','id',$coin_recommendItems]]); $rows = Coin::getSelectList(1, 999, $fields, [['in', 'id', $coin_recommendItems]]);
foreach ($rows['data'] as $key => &$value) { foreach ($rows['data'] as $key => &$value) {
$nickname = json_decode($value['nickname'], true); $nickname = json_decode($value['nickname'], true);
$value['nickname'] = $nickname[$this->lang]; $value['nickname'] = $nickname[$this->lang];
} }
return ['code' => 0,'data' => $rows,'msg' => '币种列表获取成功']; return ['code' => 0, 'data' => $rows, 'msg' => '币种列表获取成功'];
} }
/** /**
...@@ -109,9 +114,9 @@ class ServiceController extends BaseController ...@@ -109,9 +114,9 @@ class ServiceController extends BaseController
*/ */
private function coinRecommendList($platform_id, $type = 1) private function coinRecommendList($platform_id, $type = 1)
{ {
$recommend_list = CoinRecommend::find()->select('cid')->where(['platform_id' => $platform_id ,'type' => $type])->all(); $recommend_list = CoinRecommend::find()->select('cid')->where(['platform_id' => $platform_id, 'type' => $type])->all();
if($recommend_list){ if ($recommend_list) {
$coin_ids = array_column($recommend_list,'cid'); $coin_ids = array_column($recommend_list, 'cid');
return $coin_ids; return $coin_ids;
} }
return []; return [];
...@@ -124,15 +129,15 @@ class ServiceController extends BaseController ...@@ -124,15 +129,15 @@ class ServiceController extends BaseController
public function actionFee() public function actionFee()
{ {
$request = Yii::$app->request; $request = Yii::$app->request;
$coin = $request->post('name'); $coin = $request->post('name');
if(!$coin){ if (!$coin) {
return ['code' => 1,'data' => [],'msg' => '币种不能为空']; return ['code' => 1, 'data' => [], 'msg' => '币种不能为空'];
} }
$fee = MinerFee::find()->where(['platform' => $coin,'type' => 2])->select('id,platform,type,fee,create_at,update_at')->asArray()->one(); $fee = MinerFee::find()->where(['platform' => $coin, 'type' => 2])->select('id,platform,type,fee,create_at,update_at')->asArray()->one();
if(!$fee){ if (!$fee) {
return ['code' => 1,'data' => [],'msg' => '旷工费未设置']; return ['code' => 1, 'data' => [], 'msg' => '旷工费未设置'];
} }
return ['code' => 0,'data' => $fee,'msg' => '旷工费获取成功']; return ['code' => 0, 'data' => $fee, 'msg' => '旷工费获取成功'];
} }
/** /**
...@@ -141,8 +146,8 @@ class ServiceController extends BaseController ...@@ -141,8 +146,8 @@ class ServiceController extends BaseController
*/ */
private function getRate() private function getRate()
{ {
$exchange = ExchangeFactory::createExchange("Bty"); $exchange = ExchangeFactory::createExchange("Bty");
$rate = $exchange->getTicker("BTY", "USDT"); $rate = $exchange->getTicker("BTY", "USDT");
return (float)$rate['rmb'] / $rate['last']; return (float)$rate['rmb'] / $rate['last'];
} }
...@@ -153,12 +158,12 @@ class ServiceController extends BaseController ...@@ -153,12 +158,12 @@ class ServiceController extends BaseController
public function actionChain() public function actionChain()
{ {
$request = Yii::$app->request; $request = Yii::$app->request;
$currency = $request->post('currency',''); $currency = $request->post('currency', '');
$coin = Coin::find()->where(['name' => $currency])->select('name,nickname,chain')->asArray()->one(); $coin = Coin::find()->where(['name' => $currency])->select('name,nickname,chain')->asArray()->one();
if($coin){ if ($coin) {
return ['code' => 0,'data' => $coin]; return ['code' => 0, 'data' => $coin];
} }
return ['code' => -1,'msg' => '币种不存在']; return ['code' => -1, 'msg' => '币种不存在'];
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment