edb_data_coal.go 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package data_manage
  2. import (
  3. "eta/eta_api/global"
  4. "eta/eta_api/utils"
  5. "fmt"
  6. "time"
  7. )
  8. type CoalData struct {
  9. InputValue string `orm:"column(DATA_VALUE)" description:"日期"`
  10. DataTime string `orm:"column(DATA_DATE)" description:"值"`
  11. }
  12. type BaseFromCoalDataSimple struct {
  13. //Id int `orm:"column(base_from_trade_coal_index_id);pk"`
  14. Id int `gorm:"column:base_from_trade_coal_index_id;primaryKey"`
  15. DealCode string
  16. BuyCode string
  17. SoldCode string
  18. DataTime string
  19. DealValue string
  20. BuyValue string
  21. SoldValue string
  22. }
  23. type BaseInfoFromCoal struct {
  24. IndexName string
  25. Frequency string
  26. Unit string
  27. }
  28. type BaseFromTradeCoalIndex struct {
  29. //BaseFromTradeCoalIndexId int `orm:"column(base_from_trade_coal_index_id);pk"`
  30. BaseFromTradeCoalIndexId int `gorm:"column:base_from_trade_coal_index_id;primaryKey"`
  31. Rank int
  32. DealShortName string
  33. DealName string
  34. DealCode string
  35. DealValue string
  36. DealChange int
  37. BuyShortName string
  38. BuyName string
  39. BuyCode string
  40. BuyValue string
  41. BuyChange int
  42. SoldShortName string
  43. SoldName string
  44. SoldCode string
  45. SoldValue string
  46. SoldChange int
  47. Frequency string
  48. ClassifyName string
  49. ClassifyType string
  50. CreateTime time.Time
  51. ModifyTime time.Time
  52. DataTime string
  53. }
  54. func GetEdbDataCoalMaxOrMinDate(edbCode string) (minDate, maxDate string, err error) {
  55. //o := orm.NewOrmUsingDB("data")
  56. sql := ` SELECT MIN(data_time) AS minDate,MAX(data_time) AS maxDate FROM edb_data_coal WHERE edb_code=? `
  57. //err = o.Raw(sql, edbCode).QueryRow(&minDate, &maxDate)
  58. var maxAndMinDate MaxAndMinDate
  59. err = global.DbMap[utils.DbNameIndex].Raw(sql, edbCode).First(&maxAndMinDate).Error
  60. if err != nil {
  61. return
  62. }
  63. minDate = maxAndMinDate.MinDate.Format(utils.FormatDate)
  64. maxDate = maxAndMinDate.MaxDate.Format(utils.FormatDate)
  65. return
  66. }
  67. // GetBaseInfoFromCoalByIndexCode 获取指标信息
  68. func GetBaseInfoFromCoalByIndexCode(indexCode, suffix string) (list []*BaseInfoFromCoal, err error) {
  69. //o := orm.NewOrmUsingDB("data")
  70. sql := `SELECT * FROM base_from_coalmine_%s WHERE index_code=? `
  71. sql = fmt.Sprintf(sql, suffix)
  72. //_, err = o.Raw(sql, indexCode).QueryRows(&list)
  73. err = global.DbMap[utils.DbNameIndex].Raw(sql, indexCode).Find(&list).Error
  74. return
  75. }