trade_classify.go 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package trade_analysis
  2. import (
  3. "eta_gn/eta_api/global"
  4. "time"
  5. )
  6. type BaseFromTradeClassify struct {
  7. Id uint64 `orm:"column(id);pk" gorm:"primaryKey" `
  8. ClassifyName string //分类名称
  9. ClassifyType string //分类名称下的类型
  10. Exchange string //交易所
  11. LatestDate time.Time //数据最近的日期
  12. CreateTime time.Time //插入时间
  13. ModifyTime time.Time //修改时间
  14. }
  15. func GetAllBaseFromTradeClassify() (list []*BaseFromTradeClassify, err error) {
  16. sql := `SELECT * FROM base_from_trade_classify `
  17. err = global.DmSQL["data"].Raw(sql).Find(&list).Error
  18. return
  19. }
  20. func GetTradeTopLastDataTime(exchange string, classifyName, classifyType string) (item *BaseFromTradeClassify, err error) {
  21. sql := `SELECT * FROM base_from_trade_classify WHERE exchange = ? AND classify_name=? `
  22. pars := make([]interface{}, 0)
  23. pars = append(pars, exchange)
  24. if exchange == "zhengzhou" {
  25. pars = append(pars, classifyType)
  26. } else {
  27. pars = append(pars, classifyName)
  28. sql += ` AND classify_type=? `
  29. pars = append(pars, classifyType)
  30. }
  31. sql += ` ORDER BY latest_date desc`
  32. err = global.DmSQL["data"].Raw(sql, pars...).First(&item).Error
  33. return
  34. }
  35. func GetClassifyTypeByClassifyName(exchange, classifyName string) (item *TradeClassifyName, err error) {
  36. sql := `SELECT classify_name, classify_type FROM base_from_trade_classify WHERE exchange = ? AND classify_name=? `
  37. err = global.DmSQL["data"].Raw(sql, exchange, classifyName).First(&item).Error
  38. return
  39. }