<?php namespace app\model; /** * * // 美股列表 * @property int id * @property string stock_name * @property string stock_code * @property string status * @property int tape * @property string info * @property string create_time * @property string update_time * @property float forced_closure * @property float keep_decimal * @property float up_limit * @property float down_limit */ class StockListModel extends BaseModel { // 美股列表 数据表 protected $name = 'stock_list'; protected $pk = 'id'; const TAPE_NYSE = '1'; const TAPE_NYSE_ARCA = '2'; const TAPE_NASDAQ = '3'; public static $tapeList = [ self::TAPE_NYSE => 'NYSE', self::TAPE_NYSE_ARCA => 'NYSEARCA', self::TAPE_NASDAQ => 'NASDAQ', ]; public static function getMarketList($data): array { $where='status=1'; if(!empty($data['trade_name'])){ $where.=" and (trade_name like '".strtoupper($data['trade_name'])."%' or stock_code like '".strtoupper($data['trade_name'])."%')"; } if($data['page']<1){ $data['page']=1; } if($data['page_size']<1){ $data['page_size']=10; } $count=self::where($where)->count(); $list = self::where($where)->field('trade_name as name,stock_code as code')->page($data['page'],$data['page_size'])->select(); if(empty($list)){ return []; } return [ 'total'=>$count, 'list'=>$list->toArray(), ]; } public static function existMarket($trade_name):bool { $id=self::where('stock_code',$trade_name)->value('id'); return $id >0; } }