|
|
|
@ -9,6 +9,7 @@ use app\model\StockGBXListModel; |
|
|
|
use app\model\StockHkdListModel; |
|
|
|
use app\model\StockIdnListModel; |
|
|
|
use app\model\StockInListModel; |
|
|
|
use app\model\StockJpListModel; |
|
|
|
use app\model\StockListModel; |
|
|
|
use app\model\StockMarketModel; |
|
|
|
use app\model\StockMysListModel; |
|
|
|
@ -23,11 +24,11 @@ class StockMarketService extends AdminBaseService |
|
|
|
try { |
|
|
|
$list = StockMarketModel::order('stock_market_type', 'asc')->select(); |
|
|
|
$rows = []; |
|
|
|
if(!$list->isEmpty()){ |
|
|
|
if (!$list->isEmpty()) { |
|
|
|
$rows = $list->toArray(); |
|
|
|
} |
|
|
|
|
|
|
|
return $this->toData('0','SUCCESS', [ |
|
|
|
return $this->toData('0', 'SUCCESS', [ |
|
|
|
'total' => count($rows), |
|
|
|
'list' => $rows, |
|
|
|
'extent' => [ |
|
|
|
@ -35,7 +36,7 @@ class StockMarketService extends AdminBaseService |
|
|
|
'trade_day_type' => StockMarketModel::TRADE_DAY_TYPE, |
|
|
|
] |
|
|
|
]); |
|
|
|
}catch (\Exception $exception){ |
|
|
|
} catch (\Exception $exception) { |
|
|
|
return $this->toData('1', '系统繁忙', [$exception->getMessage()]); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -49,13 +50,13 @@ class StockMarketService extends AdminBaseService |
|
|
|
$tradeDayTypeArr = StockMarketModel::TRADE_DAY_TYPE; |
|
|
|
$stockMarketTypeKeys = array_keys($stockMarketTypeArr); |
|
|
|
$tradeDayTypeKeys = array_keys($tradeDayTypeArr); |
|
|
|
if(empty($param['stock_market_type']) || !in_array($param['stock_market_type'], $stockMarketTypeKeys)){ |
|
|
|
if (empty($param['stock_market_type']) || !in_array($param['stock_market_type'], $stockMarketTypeKeys)) { |
|
|
|
return $this->toData('1', '股票市场类型无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
// 判断是否已经存在 |
|
|
|
$stockM = StockMarketModel::where('stock_market_type', $param['stock_market_type'])->find(); |
|
|
|
if($stockM){ |
|
|
|
if ($stockM) { |
|
|
|
return $this->toData('1', '股票市场类型已经存在', []); |
|
|
|
} |
|
|
|
|
|
|
|
@ -64,73 +65,73 @@ class StockMarketService extends AdminBaseService |
|
|
|
$pmOpenTime = '00:00'; |
|
|
|
$pmCloseTime = '00:00'; |
|
|
|
$num = 0; |
|
|
|
if(isset($param['am_open_time']) && is_string($param['am_open_time'])){ |
|
|
|
if (isset($param['am_open_time']) && is_string($param['am_open_time'])) { |
|
|
|
$amOpenTimestamp = strtotime($param['am_open_time']); |
|
|
|
if($amOpenTimestamp !== false && date('H:i', $amOpenTimestamp) === $param['am_open_time']){ |
|
|
|
if ($amOpenTimestamp !== false && date('H:i', $amOpenTimestamp) === $param['am_open_time']) { |
|
|
|
$amOpenTime = $param['am_open_time']; |
|
|
|
$num++; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(isset($param['am_close_time']) && is_string($param['am_close_time'])){ |
|
|
|
if (isset($param['am_close_time']) && is_string($param['am_close_time'])) { |
|
|
|
$amCloseTimestamp = strtotime($param['am_close_time']); |
|
|
|
if($amCloseTimestamp !== false && date('H:i', $amCloseTimestamp) === $param['am_close_time']){ |
|
|
|
if ($amCloseTimestamp !== false && date('H:i', $amCloseTimestamp) === $param['am_close_time']) { |
|
|
|
$amCloseTime = $param['am_close_time']; |
|
|
|
$num++; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(isset($param['pm_open_time']) && is_string($param['pm_open_time'])){ |
|
|
|
if (isset($param['pm_open_time']) && is_string($param['pm_open_time'])) { |
|
|
|
$pmOpenTimestamp = strtotime($param['pm_open_time']); |
|
|
|
if($pmOpenTimestamp !== false && date('H:i', $pmOpenTimestamp) === $param['pm_open_time']){ |
|
|
|
if ($pmOpenTimestamp !== false && date('H:i', $pmOpenTimestamp) === $param['pm_open_time']) { |
|
|
|
$pmOpenTime = $param['pm_open_time']; |
|
|
|
$num++; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(isset($param['pm_close_time']) && is_string($param['pm_close_time'])){ |
|
|
|
if (isset($param['pm_close_time']) && is_string($param['pm_close_time'])) { |
|
|
|
$pmCloseTimestamp = strtotime($param['pm_close_time']); |
|
|
|
if($pmCloseTimestamp !== false && date('H:i', $pmCloseTimestamp) === $param['pm_close_time']){ |
|
|
|
if ($pmCloseTimestamp !== false && date('H:i', $pmCloseTimestamp) === $param['pm_close_time']) { |
|
|
|
$pmCloseTime = $param['pm_close_time']; |
|
|
|
$num++; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if(empty($param['status']) || !in_array($param['status'], [StockMarketModel::STATUS_NO, StockMarketModel::STATUS_OFF])){ |
|
|
|
if (empty($param['status']) || !in_array($param['status'], [StockMarketModel::STATUS_NO, StockMarketModel::STATUS_OFF])) { |
|
|
|
return $this->toData('1', '状态类型无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
// 如果是开启状态 必须设置开盘时间 |
|
|
|
if($param['status'] == StockMarketModel::STATUS_NO && $num < 4){ |
|
|
|
if ($param['status'] == StockMarketModel::STATUS_NO && $num < 4) { |
|
|
|
return $this->toData('1', '需要设置开盘时间', []); |
|
|
|
} |
|
|
|
|
|
|
|
// 货币单位 |
|
|
|
if(empty($param['unit']) || !is_string($param['unit']) || strlen($param['unit']) > 10){ |
|
|
|
if (empty($param['unit']) || !is_string($param['unit']) || strlen($param['unit']) > 10) { |
|
|
|
return $this->toData('1', '货币单位无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
// 货币符号 |
|
|
|
if(empty($param['symbol']) || !is_string($param['symbol']) || strlen($param['symbol']) > 10){ |
|
|
|
if (empty($param['symbol']) || !is_string($param['symbol']) || strlen($param['symbol']) > 10) { |
|
|
|
return $this->toData('1', '货币符号无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
// 兑换汇率 |
|
|
|
if(empty($param['rate']) || !is_numeric($param['rate']) || strlen($param['rate']) > 200){ |
|
|
|
if (empty($param['rate']) || !is_numeric($param['rate']) || strlen($param['rate']) > 200) { |
|
|
|
return $this->toData('1', '兑换汇率无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
// 如果是开启状态必须设置 交易日限制 如果是关闭状态 |
|
|
|
if($param['status'] == StockMarketModel::STATUS_NO){ |
|
|
|
if(empty($param['trade_day_type']) || !in_array($param['trade_day_type'], $tradeDayTypeKeys)){ |
|
|
|
if ($param['status'] == StockMarketModel::STATUS_NO) { |
|
|
|
if (empty($param['trade_day_type']) || !in_array($param['trade_day_type'], $tradeDayTypeKeys)) { |
|
|
|
return $this->toData('1', '交易日限制无效', []); |
|
|
|
} |
|
|
|
$tradeDayType = $param['trade_day_type']; |
|
|
|
}else{ |
|
|
|
if(empty($param['trade_day_type']) || !in_array($param['trade_day_type'], $tradeDayTypeKeys)){ |
|
|
|
} else { |
|
|
|
if (empty($param['trade_day_type']) || !in_array($param['trade_day_type'], $tradeDayTypeKeys)) { |
|
|
|
$tradeDayType = 0; |
|
|
|
} else{ |
|
|
|
} else { |
|
|
|
$tradeDayType = $param['trade_day_type']; |
|
|
|
} |
|
|
|
} |
|
|
|
@ -140,17 +141,17 @@ class StockMarketService extends AdminBaseService |
|
|
|
$stockMin = 0; |
|
|
|
$leverMin = 1; |
|
|
|
$leverMax = 1; |
|
|
|
if(!empty($param['lever_status']) && is_numeric($param['lever_status']) && $param['lever_status'] == StockMarketModel::LEVER_STATUS_ON){ |
|
|
|
if (!empty($param['lever_status']) && is_numeric($param['lever_status']) && $param['lever_status'] == StockMarketModel::LEVER_STATUS_ON) { |
|
|
|
$leverStatus = $param['lever_status']; |
|
|
|
if(empty($param['stock_min']) || !is_numeric($param['stock_min']) || $param['stock_min'] <=0){ |
|
|
|
if (empty($param['stock_min']) || !is_numeric($param['stock_min']) || $param['stock_min'] <= 0) { |
|
|
|
return $this->toData('1', '杠杆最小使用股数无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
if(empty($param['lever_min']) || !is_numeric($param['lever_min']) || $param['lever_min'] <=0){ |
|
|
|
if (empty($param['lever_min']) || !is_numeric($param['lever_min']) || $param['lever_min'] <= 0) { |
|
|
|
return $this->toData('1', '最小杠杆无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
if(empty($param['lever_max']) || !is_numeric($param['lever_max']) || $param['lever_max'] <=0 || $param['lever_max'] < $param['lever_min']){ |
|
|
|
if (empty($param['lever_max']) || !is_numeric($param['lever_max']) || $param['lever_max'] <= 0 || $param['lever_max'] < $param['lever_min']) { |
|
|
|
return $this->toData('1', '最大杠杆无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
@ -183,21 +184,21 @@ class StockMarketService extends AdminBaseService |
|
|
|
$stockMarket->save(); |
|
|
|
|
|
|
|
// 缓存 |
|
|
|
$list_key="STOCK_MARKET:LIST:" .$stockMarket->stock_market_type; |
|
|
|
$list_key = "STOCK_MARKET:LIST:" . $stockMarket->stock_market_type; |
|
|
|
$redis = $this->getRedis(); |
|
|
|
$redis->del($list_key); |
|
|
|
$redis->hMset($list_key, [ |
|
|
|
'id'=>$stockMarket->id, |
|
|
|
'stock_market_type'=>$stockMarket->stock_market_type, |
|
|
|
'trade_day_type'=>$stockMarket->trade_day_type, |
|
|
|
'unit'=>$stockMarket->unit, |
|
|
|
'rate'=>$stockMarket->rate, |
|
|
|
'symbol'=>$stockMarket->symbol, |
|
|
|
'status'=>$stockMarket->status, |
|
|
|
'am_open_time'=>$stockMarket->am_open_time, |
|
|
|
'am_close_time'=>$stockMarket->am_close_time, |
|
|
|
'pm_open_time'=>$stockMarket->pm_open_time, |
|
|
|
'pm_close_time'=>$stockMarket->pm_close_time, |
|
|
|
'id' => $stockMarket->id, |
|
|
|
'stock_market_type' => $stockMarket->stock_market_type, |
|
|
|
'trade_day_type' => $stockMarket->trade_day_type, |
|
|
|
'unit' => $stockMarket->unit, |
|
|
|
'rate' => $stockMarket->rate, |
|
|
|
'symbol' => $stockMarket->symbol, |
|
|
|
'status' => $stockMarket->status, |
|
|
|
'am_open_time' => $stockMarket->am_open_time, |
|
|
|
'am_close_time' => $stockMarket->am_close_time, |
|
|
|
'pm_open_time' => $stockMarket->pm_open_time, |
|
|
|
'pm_close_time' => $stockMarket->pm_close_time, |
|
|
|
|
|
|
|
'lever_status' => $leverStatus, |
|
|
|
'stock_min' => $stockMin, |
|
|
|
@ -206,21 +207,21 @@ class StockMarketService extends AdminBaseService |
|
|
|
|
|
|
|
]); |
|
|
|
|
|
|
|
return $this->toData('0','SUCCESS'); |
|
|
|
}catch (\Exception $exception){ |
|
|
|
return $this->toData('1', '系统繁忙', [$exception->getMessage(),$exception->getLine()]); |
|
|
|
return $this->toData('0', 'SUCCESS'); |
|
|
|
} catch (\Exception $exception) { |
|
|
|
return $this->toData('1', '系统繁忙', [$exception->getMessage(), $exception->getLine()]); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public function edit($param) |
|
|
|
{ |
|
|
|
try { |
|
|
|
if(empty($param['id']) || !is_numeric($param['id'])){ |
|
|
|
if (empty($param['id']) || !is_numeric($param['id'])) { |
|
|
|
return $this->toData('1', '主键无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
$stockMarket = StockMarketModel::where('id', $param['id'])->find(); |
|
|
|
if(empty($stockMarket)){ |
|
|
|
if (empty($stockMarket)) { |
|
|
|
return $this->toData('1', '主键无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
@ -229,7 +230,7 @@ class StockMarketService extends AdminBaseService |
|
|
|
|
|
|
|
|
|
|
|
// 状态 |
|
|
|
if(empty($param['status']) || !in_array($param['status'], [StockMarketModel::STATUS_NO, StockMarketModel::STATUS_OFF])){ |
|
|
|
if (empty($param['status']) || !in_array($param['status'], [StockMarketModel::STATUS_NO, StockMarketModel::STATUS_OFF])) { |
|
|
|
return $this->toData('1', '状态类型无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
@ -238,74 +239,74 @@ class StockMarketService extends AdminBaseService |
|
|
|
$pmOpenTime = '00:00'; |
|
|
|
$pmCloseTime = '00:00'; |
|
|
|
$num = 0; |
|
|
|
if(isset($param['am_open_time']) && is_string($param['am_open_time'])){ |
|
|
|
if (isset($param['am_open_time']) && is_string($param['am_open_time'])) { |
|
|
|
$amOpenTimestamp = strtotime($param['am_open_time']); |
|
|
|
if($amOpenTimestamp !== false && date('H:i', $amOpenTimestamp) === $param['am_open_time']){ |
|
|
|
if ($amOpenTimestamp !== false && date('H:i', $amOpenTimestamp) === $param['am_open_time']) { |
|
|
|
$amOpenTime = $param['am_open_time']; |
|
|
|
$num++; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(isset($param['am_close_time']) && is_string($param['am_close_time'])){ |
|
|
|
if (isset($param['am_close_time']) && is_string($param['am_close_time'])) { |
|
|
|
$amCloseTimestamp = strtotime($param['am_close_time']); |
|
|
|
if($amCloseTimestamp !== false && date('H:i', $amCloseTimestamp) === $param['am_close_time']){ |
|
|
|
if ($amCloseTimestamp !== false && date('H:i', $amCloseTimestamp) === $param['am_close_time']) { |
|
|
|
$amCloseTime = $param['am_close_time']; |
|
|
|
$num++; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(isset($param['pm_open_time']) && is_string($param['pm_open_time'])){ |
|
|
|
if (isset($param['pm_open_time']) && is_string($param['pm_open_time'])) { |
|
|
|
$pmOpenTimestamp = strtotime($param['pm_open_time']); |
|
|
|
if($pmOpenTimestamp !== false && date('H:i', $pmOpenTimestamp) === $param['pm_open_time']){ |
|
|
|
if ($pmOpenTimestamp !== false && date('H:i', $pmOpenTimestamp) === $param['pm_open_time']) { |
|
|
|
$pmOpenTime = $param['pm_open_time']; |
|
|
|
$num++; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(isset($param['pm_close_time']) && is_string($param['pm_close_time'])){ |
|
|
|
if (isset($param['pm_close_time']) && is_string($param['pm_close_time'])) { |
|
|
|
$pmCloseTimestamp = strtotime($param['pm_close_time']); |
|
|
|
if($pmCloseTimestamp !== false && date('H:i', $pmCloseTimestamp) === $param['pm_close_time']){ |
|
|
|
if ($pmCloseTimestamp !== false && date('H:i', $pmCloseTimestamp) === $param['pm_close_time']) { |
|
|
|
$pmCloseTime = $param['pm_close_time']; |
|
|
|
$num++; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 如果是开启状态 必须设置开盘时间 |
|
|
|
if($param['status'] == StockMarketModel::STATUS_NO && $num < 4){ |
|
|
|
if ($param['status'] == StockMarketModel::STATUS_NO && $num < 4) { |
|
|
|
return $this->toData('1', '需要设置开盘时间', []); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 货币单位 |
|
|
|
if(empty($param['unit']) || !is_string($param['unit']) || strlen($param['unit']) > 10){ |
|
|
|
if (empty($param['unit']) || !is_string($param['unit']) || strlen($param['unit']) > 10) { |
|
|
|
return $this->toData('1', '货币单位无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
// 货币符号 |
|
|
|
if(empty($param['symbol']) || !is_string($param['symbol']) || strlen($param['symbol']) > 10){ |
|
|
|
if (empty($param['symbol']) || !is_string($param['symbol']) || strlen($param['symbol']) > 10) { |
|
|
|
return $this->toData('1', '货币符号无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
// 兑换汇率 |
|
|
|
if(empty($param['rate']) || !is_numeric($param['rate']) || strlen($param['rate']) > 200){ |
|
|
|
if (empty($param['rate']) || !is_numeric($param['rate']) || strlen($param['rate']) > 200) { |
|
|
|
return $this->toData('1', '兑换汇率无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
$tradeDayType = $stockMarket->trade_day_type; |
|
|
|
|
|
|
|
// 只有在没有设置过的情况下可以设置 设置之后不能修改 |
|
|
|
if($tradeDayType == 0){ |
|
|
|
if($param['status'] == StockMarketModel::STATUS_NO){ |
|
|
|
if ($tradeDayType == 0) { |
|
|
|
if ($param['status'] == StockMarketModel::STATUS_NO) { |
|
|
|
// 如果是开启状态 必须设置 |
|
|
|
if(empty($param['trade_day_type']) || !in_array($param['trade_day_type'], $tradeDayTypeKeys)){ |
|
|
|
if (empty($param['trade_day_type']) || !in_array($param['trade_day_type'], $tradeDayTypeKeys)) { |
|
|
|
return $this->toData('1', '交易日限制无效', []); |
|
|
|
} |
|
|
|
$tradeDayType = $param['trade_day_type']; |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
// 关闭状态 可以不设置 |
|
|
|
if(!empty($param['trade_day_type']) && in_array($param['trade_day_type'], $tradeDayTypeKeys)){ |
|
|
|
if (!empty($param['trade_day_type']) && in_array($param['trade_day_type'], $tradeDayTypeKeys)) { |
|
|
|
$tradeDayType = $param['trade_day_type']; |
|
|
|
} else{ |
|
|
|
} else { |
|
|
|
$tradeDayType = 0; |
|
|
|
} |
|
|
|
} |
|
|
|
@ -316,22 +317,19 @@ class StockMarketService extends AdminBaseService |
|
|
|
$stockMin = 0; |
|
|
|
$leverMin = 1; |
|
|
|
$leverMax = 1; |
|
|
|
if(!empty($param['lever_status']) && is_numeric($param['lever_status']) && $param['lever_status'] == StockMarketModel::LEVER_STATUS_ON){ |
|
|
|
if (!empty($param['lever_status']) && is_numeric($param['lever_status']) && $param['lever_status'] == StockMarketModel::LEVER_STATUS_ON) { |
|
|
|
$leverStatus = $param['lever_status']; |
|
|
|
if(empty($param['stock_min']) || !is_numeric($param['stock_min']) || $param['stock_min'] <=0){ |
|
|
|
if (empty($param['stock_min']) || !is_numeric($param['stock_min']) || $param['stock_min'] <= 0) { |
|
|
|
return $this->toData('1', '杠杆最小使用股数无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
if(empty($param['lever_min']) || !is_numeric($param['lever_min']) || $param['lever_min'] <=0){ |
|
|
|
if (empty($param['lever_min']) || !is_numeric($param['lever_min']) || $param['lever_min'] <= 0) { |
|
|
|
return $this->toData('1', '最小杠杆无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
if(empty($param['lever_max']) || !is_numeric($param['lever_max']) || $param['lever_max'] <=0 || $param['lever_max'] < $param['lever_min']){ |
|
|
|
if (empty($param['lever_max']) || !is_numeric($param['lever_max']) || $param['lever_max'] <= 0 || $param['lever_max'] < $param['lever_min']) { |
|
|
|
return $this->toData('1', '最大杠杆无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
$stockMin = $param['stock_min']; |
|
|
|
$leverMin = ceil($param['lever_min']); |
|
|
|
@ -358,31 +356,31 @@ class StockMarketService extends AdminBaseService |
|
|
|
$stockMarket->save(); |
|
|
|
|
|
|
|
// 缓存 |
|
|
|
$list_key="STOCK_MARKET:LIST:" .$stockMarket->stock_market_type; |
|
|
|
$list_key = "STOCK_MARKET:LIST:" . $stockMarket->stock_market_type; |
|
|
|
$redis = $this->getRedis(); |
|
|
|
$redis->del($list_key); |
|
|
|
$redis->hMset($list_key, [ |
|
|
|
'id'=>$stockMarket->id, |
|
|
|
'stock_market_type'=>$stockMarket->stock_market_type, |
|
|
|
'trade_day_type'=>$stockMarket->trade_day_type, |
|
|
|
'status'=>$stockMarket->status, |
|
|
|
'symbol'=>$stockMarket->symbol, |
|
|
|
'unit'=>$stockMarket->unit, |
|
|
|
'rate'=>$stockMarket->rate, |
|
|
|
'am_open_time'=>$stockMarket->am_open_time, |
|
|
|
'am_close_time'=>$stockMarket->am_close_time, |
|
|
|
'pm_open_time'=>$stockMarket->pm_open_time, |
|
|
|
'pm_close_time'=>$stockMarket->pm_close_time, |
|
|
|
'id' => $stockMarket->id, |
|
|
|
'stock_market_type' => $stockMarket->stock_market_type, |
|
|
|
'trade_day_type' => $stockMarket->trade_day_type, |
|
|
|
'status' => $stockMarket->status, |
|
|
|
'symbol' => $stockMarket->symbol, |
|
|
|
'unit' => $stockMarket->unit, |
|
|
|
'rate' => $stockMarket->rate, |
|
|
|
'am_open_time' => $stockMarket->am_open_time, |
|
|
|
'am_close_time' => $stockMarket->am_close_time, |
|
|
|
'pm_open_time' => $stockMarket->pm_open_time, |
|
|
|
'pm_close_time' => $stockMarket->pm_close_time, |
|
|
|
|
|
|
|
'lever_status' => $leverStatus, |
|
|
|
'stock_min' => $stockMin, |
|
|
|
'lever_min' => $leverMin, |
|
|
|
'lever_max' => $leverMax, |
|
|
|
]); |
|
|
|
$arr=$redis->hGetAll($list_key); |
|
|
|
$arr = $redis->hGetAll($list_key); |
|
|
|
|
|
|
|
return $this->toData('0','SUCCESS',$arr); |
|
|
|
}catch (\Exception $exception){ |
|
|
|
return $this->toData('0', 'SUCCESS', $arr); |
|
|
|
} catch (\Exception $exception) { |
|
|
|
return $this->toData('1', '系统繁忙', [$exception->getMessage()]); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -393,25 +391,24 @@ class StockMarketService extends AdminBaseService |
|
|
|
{ |
|
|
|
try { |
|
|
|
$marketTypeList = StockMarketModel::STOCK_MARKET_TYPE; |
|
|
|
if(empty($param['market_type']) || !in_array($param['market_type'], array_keys($marketTypeList))){ |
|
|
|
if (empty($param['market_type']) || !in_array($param['market_type'], array_keys($marketTypeList))) { |
|
|
|
return $this->toData('1', '股票市场无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
$where = []; |
|
|
|
if(empty($param['page']) || !is_numeric($param['page']) || ceil($param['page']) != $param['page'] || $param['page'] <= 0){ |
|
|
|
if (empty($param['page']) || !is_numeric($param['page']) || ceil($param['page']) != $param['page'] || $param['page'] <= 0) { |
|
|
|
return $this->toData('1', '分页参数无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
if(empty($param['limit']) || !is_numeric($param['limit']) || ceil($param['limit']) != $param['limit'] || $param['limit'] <= 0){ |
|
|
|
if (empty($param['limit']) || !is_numeric($param['limit']) || ceil($param['limit']) != $param['limit'] || $param['limit'] <= 0) { |
|
|
|
return $this->toData('1', '分页参数无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
if(!empty($param['stock_code']) && is_string($param['stock_code'])){ |
|
|
|
$where[] = ['stock_code', 'like', '%'.$param['stock_code']]; |
|
|
|
if (!empty($param['stock_code']) && is_string($param['stock_code'])) { |
|
|
|
$where[] = ['stock_code', 'like', '%' . $param['stock_code']]; |
|
|
|
} |
|
|
|
|
|
|
|
switch ($param['market_type']) |
|
|
|
{ |
|
|
|
switch ($param['market_type']) { |
|
|
|
// 美股 |
|
|
|
case StockMarketModel::STOCK_MARKET_USA: |
|
|
|
$stockList = StockListModel::where($where)->page($param['page'], $param['limit'])->select(); |
|
|
|
@ -449,20 +446,24 @@ class StockMarketService extends AdminBaseService |
|
|
|
$stockList = StockEurListModel::where($where)->page($param['page'], $param['limit'])->select(); |
|
|
|
$total = StockEurListModel::where($where)->count(); |
|
|
|
break; |
|
|
|
case StockMarketModel::STOCK_MARKET_JP: |
|
|
|
$stockList = StockJpListModel::where($where)->page($param['page'], $param['limit'])->select(); |
|
|
|
$total = StockJpListModel::where($where)->count(); |
|
|
|
break; |
|
|
|
default: |
|
|
|
return $this->toData('1', '股票市场无效', []); |
|
|
|
} |
|
|
|
|
|
|
|
$rows = []; |
|
|
|
if(!$stockList->isEmpty()){ |
|
|
|
if (!$stockList->isEmpty()) { |
|
|
|
$rows = $stockList->toArray(); |
|
|
|
} |
|
|
|
|
|
|
|
return $this->toData('0','SUCCESS', ['total' => $total, 'list' => $rows, 'extent' => [ |
|
|
|
return $this->toData('0', 'SUCCESS', ['total' => $total, 'list' => $rows, 'extent' => [ |
|
|
|
'stock_market_type_list' => StockMarketModel::STOCK_MARKET_TYPE, |
|
|
|
'trade_day_type' => StockMarketModel::TRADE_DAY_TYPE, |
|
|
|
]]); |
|
|
|
}catch (\Exception $exception){ |
|
|
|
} catch (\Exception $exception) { |
|
|
|
return $this->toData('1', '系统繁忙', [$exception->getMessage()]); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -471,17 +472,16 @@ class StockMarketService extends AdminBaseService |
|
|
|
public function searchStockById($param) |
|
|
|
{ |
|
|
|
$marketTypeList = StockMarketModel::STOCK_MARKET_TYPE; |
|
|
|
if(empty($param['market_type']) || !in_array($param['market_type'], array_keys($marketTypeList))){ |
|
|
|
if (empty($param['market_type']) || !in_array($param['market_type'], array_keys($marketTypeList))) { |
|
|
|
return []; |
|
|
|
} |
|
|
|
|
|
|
|
if(empty($param['stock_id']) || !is_numeric($param['stock_id'])){ |
|
|
|
if (empty($param['stock_id']) || !is_numeric($param['stock_id'])) { |
|
|
|
return []; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
switch ($param['market_type']) |
|
|
|
{ |
|
|
|
switch ($param['market_type']) { |
|
|
|
// 美股 |
|
|
|
case StockMarketModel::STOCK_MARKET_USA: |
|
|
|
$stock = StockListModel::where('id', $param['stock_id'])->find(); |
|
|
|
@ -514,7 +514,7 @@ class StockMarketService extends AdminBaseService |
|
|
|
return []; |
|
|
|
} |
|
|
|
|
|
|
|
if(empty($stock)){ |
|
|
|
if (empty($stock)) { |
|
|
|
return []; |
|
|
|
} |
|
|
|
return $stock->toArray(); |
|
|
|
|