package trade_analysis import ( "github.com/beego/beego/v2/client/orm" "time" ) // BaseFromTradeClassify 交易所分类表 type BaseFromTradeClassify struct { Id uint64 `orm:"column(id);pk"` ClassifyName string //分类名称 ClassifyType string //分类名称下的类型 Exchange string //交易所 LatestDate time.Time //数据最近的日期 CreateTime time.Time //插入时间 ModifyTime time.Time //修改时间 } // GetAllBaseFromTradeClassify 获取所有的交易所分类列表 func GetAllBaseFromTradeClassify() (list []*BaseFromTradeClassify, err error) { sql := `SELECT * FROM base_from_trade_classify ` o := orm.NewOrmUsingDB("data") _, err = o.Raw(sql).QueryRows(&list) return } func GetTradeTopLastDataTime(exchange string, classifyName, classifyType string) (item *BaseFromTradeClassify, err error) { sql := `SELECT * FROM base_from_trade_classify WHERE exchange = ? AND classify_name=? ` pars := make([]interface{}, 0) pars = append(pars, exchange) if exchange == "zhengzhou" { pars = append(pars, classifyType) } else { pars = append(pars, classifyName) sql += ` AND classify_type=? ` pars = append(pars, classifyType) } sql += ` ORDER BY latest_date desc` o := orm.NewOrmUsingDB("data") err = o.Raw(sql, pars...).QueryRow(&item) return } // GetClassifyTypeByClassifyName 根据分类名称获取分类类型 func GetClassifyTypeByClassifyName(exchange, classifyName string) (item *TradeClassifyName, err error) { sql := `SELECT classify_name, classify_type FROM base_from_trade_classify WHERE exchange = ? AND classify_name=? ` o := orm.NewOrmUsingDB("data") err = o.Raw(sql, exchange, classifyName).QueryRow(&item) return }