43 lines
1.6 KiB
Go
43 lines
1.6 KiB
Go
package models
|
||
|
||
import (
|
||
"time"
|
||
|
||
"gorm.io/gorm"
|
||
)
|
||
|
||
// LastDaily 股票日线数据
|
||
type LastDaily struct {
|
||
ID uint `gorm:"primarykey;autoIncrement" json:"id"`
|
||
TsCode string `gorm:"type:varchar(20);not null;index:idx_ts_code;comment:股票代码" json:"ts_code"`
|
||
TradeDate time.Time `gorm:"type:date;not null;index:idx_trade_date;comment:交易日期" json:"trade_date"`
|
||
Open float64 `gorm:"type:decimal(10,4);comment:开盘价" json:"open"`
|
||
High float64 `gorm:"type:decimal(10,4);comment:最高价" json:"high"`
|
||
Low float64 `gorm:"type:decimal(10,4);comment:最低价" json:"low"`
|
||
Close float64 `gorm:"type:decimal(10,4);comment:收盘价" json:"close"`
|
||
PreClose float64 `gorm:"type:decimal(10,4);comment:昨收价(除权价)" json:"pre_close"`
|
||
Change float64 `gorm:"type:decimal(10,4);comment:涨跌额" json:"change"`
|
||
PctChg float64 `gorm:"type:decimal(10,6);comment:涨跌幅(%)" json:"pct_chg"`
|
||
Vol float64 `gorm:"type:decimal(15,2);comment:成交量(手)" json:"vol"`
|
||
Amount float64 `gorm:"type:decimal(20,2);comment:成交额(千元)" json:"amount"`
|
||
}
|
||
|
||
|
||
func init() {
|
||
database.AppendMigrate(&LastDaily{})
|
||
}
|
||
|
||
// TableName 指定表名
|
||
func (LastDaily) TableName() string {
|
||
return "last_daily"
|
||
}
|
||
|
||
// Indexes 定义复合索引(可选,也可以在migration中创建)
|
||
func (LastDaily) Indexes() []gorm.Index {
|
||
return []gorm.Index{
|
||
&gorm.IndexModel{
|
||
Name: "idx_ts_code_trade_date",
|
||
Fields: []string{"ts_code", "trade_date"},
|
||
},
|
||
}
|
||
} |