base_from_trade_ine.go 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package data_manage
  2. import (
  3. sql2 "database/sql"
  4. "eta/eta_task/global"
  5. "eta/eta_task/utils"
  6. "time"
  7. )
  8. type BaseFromTradeIneIndex struct {
  9. BaseFromTradeIneIndexId int `gorm:"column:base_from_trade_ine_index_id;primaryKey;autoIncrement"`
  10. Rank int
  11. DealShortName string
  12. DealName string
  13. DealCode string
  14. DealValue int
  15. DealChange int
  16. BuyShortName string
  17. BuyName string
  18. BuyCode string
  19. BuyValue int
  20. BuyChange int
  21. SoldShortName string
  22. SoldName string
  23. SoldCode string
  24. SoldValue int
  25. SoldChange int
  26. Frequency string
  27. ClassifyName string
  28. ClassifyType string
  29. CreateTime time.Time
  30. ModifyTime time.Time
  31. DataTime string
  32. }
  33. func AddBaseFromTradeIneIndex(item *BaseFromTradeIneIndex) (lastId int64, err error) {
  34. err = global.DbMap[utils.DbNameIndex].Create(item).Error
  35. return
  36. }
  37. func GetBaseFromTradeIneIndexAll(dateStr string) (list []*BaseFromTradeIneIndex, err error) {
  38. o := global.DbMap[utils.DbNameIndex]
  39. sql := `SELECT * FROM base_from_trade_ine_index where data_time>=?`
  40. err = o.Raw(sql, dateStr).Find(&list).Error
  41. return
  42. }
  43. func ModifyBaseFromTradeIneIndex(dealValue, buyValue, soldValue int, dataId int) (err error) {
  44. o := global.DbMap[utils.DbNameIndex]
  45. sql := `UPDATE base_from_trade_ine_index SET deal_value=?,buy_value=?,sold_value=?,modify_time=NOW() WHERE base_from_trade_ine_index_id=? `
  46. err = o.Exec(sql, dealValue, buyValue, soldValue, dataId).Error
  47. return
  48. }
  49. type IneIndexResp struct {
  50. Ret int
  51. Msg string
  52. ErrMsg string
  53. ErrCode string
  54. Data []*BaseFromTradeIneIndex
  55. }
  56. func GetBaseFromTradeIneIndexMaxDate() (maxDate time.Time, err error) {
  57. o := global.DbMap[utils.DbNameIndex]
  58. sql := ` SELECT max(a.data_time)as max_date FROM base_from_trade_ine_index as a `
  59. var timeNull sql2.NullTime
  60. err = o.Raw(sql).Scan(&timeNull).Error
  61. if err != nil {
  62. return
  63. }
  64. if timeNull.Valid {
  65. maxDate = timeNull.Time
  66. }
  67. return
  68. }