table_day_k_base.class.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: 王刚涛
  5. * Date: 2020/11/24
  6. * Time: 14:51
  7. */
  8. class Table_day_k_base extends Table {
  9. protected $base = ""; //分表的后缀日期,在进行数据库操作的时候"Table_day_k_".$base
  10. protected $table_name = "day_k_";//表名,不带前缀,前缀在config中定义
  11. protected $table_id = "day_k_id";//指定ID字段名称,必须
  12. protected $table_status = '';//指定状态字段名称,如果有
  13. protected $table_order = '';//指定排序字段名称,如果有
  14. protected $table_fullname = "day_k_";//拼接好后表名 后面拼接日期 day_k_202011
  15. //数据库结构
  16. protected function struct(){
  17. $attr = array();
  18. $attr['id'] = 'day_k_id';
  19. $attr['date'] = 'day_k_date';
  20. $attr['code'] = 'day_k_code';
  21. $attr['open_price'] = 'day_k_open_price';
  22. $attr['close_price'] = 'day_k_close_price';
  23. $attr['hightest_price'] = 'day_k_hightest_price';
  24. $attr['lowest_price'] = 'day_k_lowest_price';
  25. $attr['increase_price'] = 'day_k_increase_price';
  26. $attr['increase_value'] = 'day_k_increase_value';
  27. $attr['turnover'] = 'day_k_turnover';
  28. $attr['amount'] = 'day_k_amount';
  29. $attr['value'] = 'day_k_value';
  30. $attr['open_price_qfq'] = 'day_k_open_price_qfq';
  31. $attr['close_price_qfq'] = 'day_k_close_price_qfq';
  32. $attr['hightest_price_qfq'] = 'day_k_hightest_price_qfq';
  33. $attr['lowest_price_qfq'] = 'day_k_lowest_price_qfq';
  34. $attr['m10'] = 'day_k_m10';
  35. $attr['m20'] = 'day_k_m20';
  36. $attr['m60'] = 'day_k_m60';
  37. $attr['kdj'] = 'day_k_kdj';
  38. $attr['macd'] = 'day_k_macd';
  39. $attr['rsi'] = 'day_k_rsi';
  40. return $attr;
  41. }
  42. /***
  43. * Table_day_k_base constructor.
  44. * 构造函数,动态获取表的后缀年月
  45. * 王刚涛
  46. */
  47. public function __construct($date) {
  48. parent::__construct();
  49. $this->table_name .= $date;//表名不代前缀
  50. $this->table_fullname .= $date;//表名代前缀
  51. //$this ->createBaseTable();
  52. }
  53. /****
  54. *在构造函数中调用该函数,自动创建表
  55. * 王刚涛
  56. */
  57. public function createBaseTable(){
  58. // $mypdo = new MyPdo();//这里框架中的pdo不能用
  59. // $this->pdo=$mypdo;
  60. $sql = " CREATE TABLE IF NOT EXISTS `". $this->table_fullname."` as select * from boniu_day_k_base where 0 ";
  61. // var_dump($sql);
  62. // $this->pdo->execSql($sql);
  63. }
  64. /****
  65. * @param $attr
  66. * @return mixed
  67. * 王刚涛
  68. */
  69. public function add($attr){
  70. $param = array (
  71. 'day_k_date' => array('number', strtotime($attr['date'])),
  72. 'day_k_code' => array('number', $attr['code']),
  73. 'day_k_open_price' => array('number', $attr['open_price']),
  74. 'day_k_hightest_price' => array('number', $attr['hightest_price']),
  75. 'day_k_lowest_price' => array('number', $attr['lowest_price']),
  76. 'day_k_amount' => array('number', $attr['amount']),
  77. 'day_k_value' => array('number', $attr['value']),
  78. );
  79. // var_dump($this->pdo);
  80. // var_dump($this);
  81. // $mypdo = new MyPdo();//这里框架中的pdo不能用
  82. // $this->pdo=$mypdo;
  83. $msg=$this->pdo->sqlinsert($this->table_fullname, $param);
  84. return $msg;
  85. }
  86. //获取列表(分页)
  87. //$count、$page和$pagesize都为0时,返回全部结果(适用于无需分页的情况)
  88. //
  89. //@param $filter array -- 过滤条件,格式见Table::filterToWhere
  90. //@param $count -- 0:返回列表 1:返回结果数量
  91. //@param $page -- 当前第几页
  92. //@param $pagesize -- 每页数量
  93. public function getList($filter = array(), $count = 0, $page = 0, $pagesize = 0)
  94. {
  95. }
  96. }
  97. ?>