Commit e03bbbc0 authored by shajiaming's avatar shajiaming

Merge branch 'feature/optimize' into develop

parents 99dea189 f507a8ca
......@@ -39,47 +39,38 @@ class MarketController extends BaseController
$currency = Yii::$app->request->post('currency', '');
$base_currency = Yii::$app->request->post('base_currency', '');
$exchange = Yii::$app->request->post("exchange", 'Zhaobi');
$base_exchange = Yii::$app->request->post("base_exchange", 'Zhaobi');
if (false == $currency || false == $base_currency) {
$msg = 'invalid symbol';
$code = -1;
$this->msg = 'invalid symbol';
$this->code = -1;
goto doEnd;
}
$exchange = ExchangeFactory::createExchange($exchange);
$quotation = $exchange->getTicker($currency);
$quotation = [
'low' => (float)sprintf("%0.4f", $quotation['low'] / 100),
'high' => (float)sprintf("%0.4f", $quotation['high'] / 100),
'last' => (float)sprintf("%0.4f", $quotation['last'] / 100),
'rmb' => (float)sprintf("%0.2f", $quotation['last'] / 100),
$currency_ticker = $exchange->getTicker($currency, 'USDT');
$base_currency_ticker = $exchange->getTicker($base_currency, 'USDT');
if (empty($currency_ticker) || empty($base_currency_ticker)) {
$this->code = -1;
$this->msg = '此交易所暂不支持所选币种!';
goto doEnd;
}
$currency_quotation = [
'low' => (float)sprintf("%0.4f", $currency_ticker['low']),
'high' => (float)sprintf("%0.4f", $currency_ticker['high']),
'last' => (float)sprintf("%0.4f", $currency_ticker['last']),
'rmb' => (float)sprintf("%0.2f", $currency_ticker['last']),
];
echo json_encode($quotation);exit;
$base_exchange = ExchangeFactory::createExchange($base_exchange);
$base_quotation = $base_exchange->getTicker($base_currency);
$base_quotation = [
'low' => (float)sprintf("%0.4f", $base_quotation['low'] / 100),
'high' => (float)sprintf("%0.4f", $base_quotation['high'] / 100),
'last' => (float)sprintf("%0.4f", $base_quotation['last'] / 100),
'rmb' => (float)sprintf("%0.2f", $base_quotation['last'] / 100),
$base_currency_quotation = [
'low' => (float)sprintf("%0.4f", $base_currency_ticker['low']),
'high' => (float)sprintf("%0.4f", $base_currency_ticker['high']),
'last' => (float)sprintf("%0.4f", $base_currency_ticker['last']),
'rmb' => (float)sprintf("%0.2f", $base_currency_ticker['last']),
];
$this->data = (float)sprintf("%0.4f",$currency_quotation['last'] / $base_currency_quotation['last']);
$builder = ExchangeBuilderFactory::create('Zhaobi');
$result = $builder->getDetail(strtoupper($currency), strtoupper($base_currency));
if (-1 == $result['code']) {
$msg = 'invalid symbol';
$code = -1;
goto doEnd;
}
$code = 0;
$msg = 'ok';
$ticker = $result['ticker'];
doEnd :
return ['code' => $code, 'msg' => $msg, 'tick' => $ticker ?? []];
return ['code' => $this->code, 'msg' => $this->msg, 'data' => $this->data];
}
}
\ No newline at end of file
......@@ -36,7 +36,7 @@ class WalletChainController extends BaseController
$size = Yii::$app->request->get('size', 10);
$query = WalletChain::find()
->select('id, token, platform, status')
->select('id, token, platform, create_time, status')
->where(['wallet_address' => $wallet_address])
->orderBy('id');
......
......@@ -8,7 +8,7 @@ class Bilaxy extends Exchange implements ExchangeInterface
{
protected $supported_symbol = 'supported_symbol_bilaxy';
protected $quotation_prefix = 'quotation_bilaxy_';
protected $base_url = 'https://api.bilaxy.com/v1/tickers';
protected $base_url = 'https://newapi.bilaxy.com/';
public function symbolExists($tag = 'BVA', $aim = "USDT")
......@@ -38,7 +38,15 @@ class Bilaxy extends Exchange implements ExchangeInterface
*/
public function setSupportedSymbol()
{
$this->redis->sadd($this->supported_symbol, 'BVA_USDT');
$curl = new Curl();
$api = $this->base_url . '/v1/ticker/24hr';
$content = $curl->get($api, false);//json
if (is_array($content)) {
foreach ($content as $key => $item) {
$this->redis->sadd($this->supported_symbol, strtoupper($key));
}
}
}
/**
......@@ -49,14 +57,13 @@ class Bilaxy extends Exchange implements ExchangeInterface
public function setQuotation()
{
$curl = new Curl();
$content = $curl->get($this->base_url, false);
if (is_array($content) && isset($content['data'])) {
$data = $content['data'];
$key = $this->quotation_prefix . 'BVA_USDT';
foreach ($data as $item) {
if ( 260 == $item['symbol']) {
$this->redis->hmset($key, 'low', $item['low'], 'high', $item['high'], 'last', $item['last']);
$this->redis->sadd($this->supported_symbol, 'KPC8_USDT');
$api = $this->base_url . '/v1/ticker/24hr';
$content = $curl->get($api, false);
if (is_array($content)) {
foreach ($content as $key => $item) {
$this->redis->hmset($this->quotation_prefix . strtoupper($key), 'low', $item['low'], 'high', $item['height'], 'last', $item['close']);
if (!$this->redis->sismember($this->supported_symbol, strtoupper($key))){
$this->redis->sadd($this->supported_symbol, strtoupper($key));
}
}
}
......
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