Commit 7bb31ae7 authored by shajiaiming's avatar shajiaiming

行情列表加入是否已添加自选

parent 339e6ff5
...@@ -37,6 +37,8 @@ class TickerController extends BaseController ...@@ -37,6 +37,8 @@ class TickerController extends BaseController
public function actionIndex() public function actionIndex()
{ {
$request = Yii::$app->request;
$device_code = $request->get('device_code', '');
$exchange = Yii::$app->request->get('exchange', 'zhaobi'); $exchange = Yii::$app->request->get('exchange', 'zhaobi');
$exchange_arr = ['huobi', 'binance', 'okex', 'zhaobi']; $exchange_arr = ['huobi', 'binance', 'okex', 'zhaobi'];
...@@ -50,6 +52,16 @@ class TickerController extends BaseController ...@@ -50,6 +52,16 @@ class TickerController extends BaseController
$result = $builder->getTicker(); $result = $builder->getTicker();
$code = $result['code']; $code = $result['code'];
$data = $result['ticker']; $data = $result['ticker'];
if (false != $device_code && Yii::$app->redis_app->exists($device_code . '_' . $exchange)) {
foreach ($data as &$val) {
if (Yii::$app->redis_app->sismember($device_code . '_' . $exchange, $val['symbol'])) {
$val['optional'] = true;
} else {
$val['optional'] = false;
}
}
}
$msg = 'success'; $msg = 'success';
doEnd : doEnd :
...@@ -73,6 +85,12 @@ class TickerController extends BaseController ...@@ -73,6 +85,12 @@ class TickerController extends BaseController
goto doEnd; goto doEnd;
} }
$is_exist = Yii::$app->redis_app->sismember($device_code . '_' . $platform, $symbol);
if (true == $is_exist) {
$msg = '数据已存在!';
goto doEnd;
}
$model = CoinOptional::find()->where(['device_code' => $device_code, 'symbol' => $symbol])->one(); $model = CoinOptional::find()->where(['device_code' => $device_code, 'symbol' => $symbol])->one();
if ($model) { if ($model) {
$msg = '数据已存在!'; $msg = '数据已存在!';
...@@ -84,6 +102,7 @@ class TickerController extends BaseController ...@@ -84,6 +102,7 @@ class TickerController extends BaseController
if ($model->load(Yii::$app->request->post(), '') && $model->save()) { if ($model->load(Yii::$app->request->post(), '') && $model->save()) {
$msg = 'success'; $msg = 'success';
$code = 0; $code = 0;
Yii::$app->redis_app->sadd($device_code . '_' . $platform, $symbol);
} else { } else {
$msg = current($model->firstErrors); $msg = current($model->firstErrors);
} }
...@@ -100,13 +119,14 @@ class TickerController extends BaseController ...@@ -100,13 +119,14 @@ class TickerController extends BaseController
$data = $temp = []; $data = $temp = [];
$model = CoinOptional::find()->select('symbol, platform')->where(['device_code' => $device_code])->asArray()->all(); $model = CoinOptional::find()->select('symbol, platform')->where(['device_code' => $device_code])->asArray()->all();
foreach ($model as $val) { foreach ($model as $val) {
if('huobi' == $val['platform']) { if ('huobi' == $val['platform']) {
$exchange = 'HuoBi'; $exchange = 'HuoBi';
} else if ('binance' == $val['platform']) { } else if ('binance' == $val['platform']) {
$exchange = 'Binance'; $exchange = 'Binance';
} else if ('zhaobi' == $val['platform']) { } else if ('zhaobi' == $val['platform']) {
$exchange = 'Zhaobi'; $exchange = 'Zhaobi';
} else {} } else {
}
$symbol = explode('/', $val['symbol']); $symbol = explode('/', $val['symbol']);
$tag_first = $symbol[0]; $tag_first = $symbol[0];
...@@ -145,12 +165,13 @@ class TickerController extends BaseController ...@@ -145,12 +165,13 @@ class TickerController extends BaseController
} }
$symbol = $request->post('symbol', ''); $symbol = $request->post('symbol', '');
$platform = $request->post('platform', '');
$device_code = $request->post('device_code', ''); $device_code = $request->post('device_code', '');
if (empty($symbol) || empty($device_code)) { if (empty($symbol) || empty($device_code) || empty($platform)) {
$msg = '请求参数错误!'; $msg = '请求参数错误!';
goto doEnd; goto doEnd;
} }
$model = CoinOptional::find()->where(['device_code' => $device_code, 'symbol' => $symbol])->one(); $model = CoinOptional::find()->where(['symbol' => $symbol, 'platform' => $platform, 'device_code' => $device_code])->one();
if (empty($model)) { if (empty($model)) {
$msg = '数据不存在!'; $msg = '数据不存在!';
goto doEnd; goto doEnd;
...@@ -162,7 +183,7 @@ class TickerController extends BaseController ...@@ -162,7 +183,7 @@ class TickerController extends BaseController
} }
$code = 0; $code = 0;
$msg = 'success'; $msg = 'success';
Yii::$app->redis_app->srem($device_code . '_' . $platform, $symbol);
doEnd : doEnd :
return ['code' => $code, 'msg' => $msg, 'data' => $data]; return ['code' => $code, 'msg' => $msg, 'data' => $data];
} }
......
...@@ -28,6 +28,8 @@ class BinanceBuilder extends FactoryService ...@@ -28,6 +28,8 @@ class BinanceBuilder extends FactoryService
if (2 == count($explode_arr) && empty($explode_arr[1])) { if (2 == count($explode_arr) && empty($explode_arr[1])) {
$temp = []; $temp = [];
$temp['symbol'] = $explode_arr[0] . '/' . $coin; $temp['symbol'] = $explode_arr[0] . '/' . $coin;
$temp['currency'] = strtoupper($explode_arr[0]);
$temp['base_currency'] = strtoupper($coin);
$temp['close'] = (float)sprintf("%0.4f", $val['lastPrice']); $temp['close'] = (float)sprintf("%0.4f", $val['lastPrice']);
$temp['close_rmb'] = (float)sprintf("%0.4f", $val['lastPrice'] * $this->basic_price[$coin]); $temp['close_rmb'] = (float)sprintf("%0.4f", $val['lastPrice'] * $this->basic_price[$coin]);
$temp['change'] = (float)sprintf("%0.4f", $val['priceChangePercent']); $temp['change'] = (float)sprintf("%0.4f", $val['priceChangePercent']);
......
...@@ -28,6 +28,8 @@ class HuobiBuilder extends FactoryService ...@@ -28,6 +28,8 @@ class HuobiBuilder extends FactoryService
if (2 == count($explode_arr) && empty($explode_arr[1])) { if (2 == count($explode_arr) && empty($explode_arr[1])) {
$temp = []; $temp = [];
$temp['symbol'] = strtoupper($explode_arr[0]) . '/' . $coin; $temp['symbol'] = strtoupper($explode_arr[0]) . '/' . $coin;
$temp['currency'] = strtoupper($explode_arr[0]);
$temp['base_currency'] = strtoupper($coin);
$temp['close'] = (float)sprintf("%0.4f", $val['close']); $temp['close'] = (float)sprintf("%0.4f", $val['close']);
$temp['close_rmb'] = (float)sprintf("%0.4f", $val['close'] * $this->basic_price[$coin]); $temp['close_rmb'] = (float)sprintf("%0.4f", $val['close'] * $this->basic_price[$coin]);
$temp['change'] = (float)sprintf("%0.4f", ($val['close'] - $val['open']) / $val['open'] * 100); $temp['change'] = (float)sprintf("%0.4f", ($val['close'] - $val['open']) / $val['open'] * 100);
......
...@@ -32,6 +32,8 @@ class ZhaobiBuilder extends FactoryService ...@@ -32,6 +32,8 @@ class ZhaobiBuilder extends FactoryService
if (2 == count($explode_arr) && empty($explode_arr[1])) { if (2 == count($explode_arr) && empty($explode_arr[1])) {
$temp = []; $temp = [];
$temp['symbol'] = strtoupper($explode_arr[0]) . '/' . $coin; $temp['symbol'] = strtoupper($explode_arr[0]) . '/' . $coin;
$temp['currency'] = strtoupper($explode_arr[0]);
$temp['base_currency'] = strtoupper($coin);
$temp['close'] = (float)sprintf("%0.4f", $val['last']); $temp['close'] = (float)sprintf("%0.4f", $val['last']);
$temp['close_rmb'] = (float)sprintf("%0.4f", $val['lastrmb']); $temp['close_rmb'] = (float)sprintf("%0.4f", $val['lastrmb']);
$temp['change'] = (float)sprintf("%0.4f", ($val['last'] - $val['open']) / $val['open'] * 100); $temp['change'] = (float)sprintf("%0.4f", ($val['last'] - $val['open']) / $val['open'] * 100);
......
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