base_from_trade_index.go 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. package data_manage
  2. import (
  3. "github.com/rdlucklib/rdluck_tools/orm"
  4. "time"
  5. )
  6. type BaseFromTradeShanghaiIndex struct {
  7. BaseFromTradeShangHaiIndexId int `orm:"column(base_from_trade_shanghai_index_id);pk"`
  8. Rank int
  9. DealShortName string
  10. DealName string
  11. DealCode string
  12. DealValue string
  13. DealChange string
  14. BuyShortName string
  15. BuyName string
  16. BuyCode string
  17. BuyValue string
  18. BuyChange string
  19. SoldShortName string
  20. SoldName string
  21. SoldCode string
  22. SoldValue string
  23. SoldChange string
  24. Frequency string
  25. ClassifyName string
  26. ClassifyType string
  27. CreateTime time.Time
  28. ModifyTime time.Time
  29. DataTime string
  30. }
  31. type BaseFromTradeCffexIndex struct {
  32. BaseFromTradeCffexIndexId int `orm:"column(base_from_trade_cffex_index_id);pk"`
  33. Rank int
  34. DealShortName string
  35. DealName string
  36. DealCode string
  37. DealValue string
  38. DealChange string
  39. BuyShortName string
  40. BuyName string
  41. BuyCode string
  42. BuyValue string
  43. BuyChange string
  44. SoldShortName string
  45. SoldName string
  46. SoldCode string
  47. SoldValue string
  48. SoldChange string
  49. Frequency string
  50. ClassifyName string
  51. ClassifyType string
  52. CreateTime time.Time
  53. ModifyTime time.Time
  54. DataTime string
  55. }
  56. type BaseFromTradeIneIndex struct {
  57. BaseFromTradeIneIndexId int `orm:"column(base_from_trade_ine_index_id);pk"`
  58. Rank int
  59. DealShortName string
  60. DealName string
  61. DealCode string
  62. DealValue string
  63. DealChange string
  64. BuyShortName string
  65. BuyName string
  66. BuyCode string
  67. BuyValue string
  68. BuyChange string
  69. SoldShortName string
  70. SoldName string
  71. SoldCode string
  72. SoldValue string
  73. SoldChange string
  74. Frequency string
  75. ClassifyName string
  76. ClassifyType string
  77. CreateTime time.Time
  78. ModifyTime time.Time
  79. DataTime string
  80. }
  81. func GetBaseFromTradeIndexByParam(exchange, date, classifyName, classifyType string) (list []*BaseFromTradeShanghaiIndex, err error) {
  82. o := orm.NewOrm()
  83. o.Using("data")
  84. if classifyName == ""{
  85. sql := "SELECT * FROM base_from_trade_"+exchange+"_index where data_time=?"
  86. _, err = o.Raw(sql, date).QueryRows(&list)
  87. return
  88. }else if classifyType == ""{
  89. sql := "SELECT * FROM base_from_trade_"+exchange+"_index where data_time=? and classify_name=? ORDER BY classify_type,rank"
  90. _, err = o.Raw(sql, date, classifyName).QueryRows(&list)
  91. return
  92. }else {
  93. sql := "SELECT * FROM base_from_trade_"+exchange+"_index where data_time=? and classify_name=? and classify_type=?"
  94. _, err = o.Raw(sql, date, classifyName, classifyType).QueryRows(&list)
  95. return
  96. }
  97. }
  98. func GetExchangeClassify(exchange string) (classifyName []*string, err error) {
  99. o := orm.NewOrm()
  100. o.Using("data")
  101. sql := "SELECT DISTINCT classify_name FROM base_from_trade_"+exchange+"_index ORDER BY CONVERT(classify_name using gbk) DESC"
  102. _, err = o.Raw(sql).QueryRows(&classifyName)
  103. return
  104. }
  105. func GetLatestDate(exchange string) (date []*BaseFromTradeIneIndex, err error) {
  106. o := orm.NewOrm()
  107. o.Using("data")
  108. sql := "SELECT * FROM base_from_trade_"+exchange+"_index ORDER BY data_time desc limit 1"
  109. _, err = o.Raw(sql).QueryRows(&date)
  110. return
  111. }
  112. func GetExchangeClassifyContract(exchange, Classify, dataTime string) (classifyName []*string, err error) {
  113. o := orm.NewOrm()
  114. o.Using("data")
  115. sql := "SELECT DISTINCT classify_type FROM base_from_trade_"+exchange+"_index where classify_name=? and data_time=?"
  116. _, err = o.Raw(sql, Classify, dataTime).QueryRows(&classifyName)
  117. return
  118. }