com_trade_data.go 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package data_manage
  2. import (
  3. "eta/eta_api/global"
  4. "eta/eta_api/utils"
  5. "github.com/rdlucklib/rdluck_tools/paging"
  6. "time"
  7. )
  8. // ComTradeData 联合国商品贸易数据表
  9. type ComTradeData struct {
  10. ComTradeDataId int `orm:"column(com_trade_data_id);pk" gorm:"primaryKey"`
  11. ComTradeId int `description:"指标id"`
  12. IndexCode string `description:"联合国商品贸易编码"`
  13. Flow string `description:"贸易流向:X(Export:出口);M(Import:进口)"`
  14. ReporterCode int `description:"出口国id"`
  15. ReporterName string `description:"出口国名称"`
  16. PartnerCode int `description:"进口国id"`
  17. PartnerName string `description:"进口国名称"`
  18. Partner2Code int `description:"第二进口国id"`
  19. Partner2Name string `description:"第二进口国名称"`
  20. DateType int `description:"日期类型,1:年度,2:月度"`
  21. DataTime string `description:"数据日期"`
  22. IndexTradeCode string `description:"离岸价编码"`
  23. TradeValue float64 `description:"离岸价(美元)"`
  24. IndexNetWeightCode string `description:"净重编码"`
  25. NetWeightValue float64 `description:"净重/公斤"`
  26. ModifyTime time.Time `description:"最新更新时间"`
  27. CreateTime time.Time `description:"创建时间"`
  28. }
  29. // ComTradeDataListItem 联合国商品贸易数据列表数据
  30. type ComTradeDataListItem struct {
  31. ComTradeDataId int `orm:"column(com_trade_data_id);pk" gorm:"primaryKey"`
  32. ComTradeId int `description:"指标id"`
  33. IndexCode string `description:"联合国商品贸易编码"`
  34. IndexNameCn string `description:"联合国商品贸易名称(中文)"`
  35. Flow string `description:"贸易流向:X(Export:出口);M(Import:进口)"`
  36. ReporterCode int `description:"出口国id"`
  37. ReporterName string `description:"出口国名称"`
  38. PartnerCode int `description:"进口国id"`
  39. PartnerName string `description:"进口国名称"`
  40. Partner2Code int `description:"第二进口国id"`
  41. Partner2Name string `description:"第二进口国名称"`
  42. DateType int `description:"日期类型,1:年度,2:月度"`
  43. DataTime time.Time `description:"数据日期" json:"-"`
  44. Date string `description:"数据年月份"`
  45. IndexTradeCode string `description:"离岸价编码"`
  46. TradeValue float64 `description:"离岸价(美元)"`
  47. IndexNetWeightCode string `description:"净重编码"`
  48. NetWeightValue float64 `description:"净重/公斤"`
  49. ModifyTime time.Time `description:"最新更新时间"`
  50. CreateTime time.Time `description:"创建时间"`
  51. }
  52. // ComTradeDataListResp 联合国商品贸易列表数据返回
  53. type ComTradeDataListResp struct {
  54. Paging *paging.PagingItem
  55. List []*ComTradeDataListItem
  56. LastUpdateTime string
  57. }
  58. // GetComTradeListCount 获取指标数据汇总数
  59. func GetComTradeListCount(condition string, pars []interface{}) (count int, err error) {
  60. o := global.DbMap[utils.DbNameIndex]
  61. sql := `SELECT COUNT(1) AS count FROM com_trade_data WHERE 1=1 `
  62. if condition != "" {
  63. sql += condition
  64. }
  65. err = o.Raw(sql, pars...).Scan(&count).Error
  66. return
  67. }
  68. // GetComTradeList 获取指标数据列表
  69. func GetComTradeList(condition string, pars []interface{}, startSize, pageSize int, orderBy string) (list []*ComTradeDataListItem, err error) {
  70. o := global.DbMap[utils.DbNameIndex]
  71. sql := `SELECT * FROM com_trade_data WHERE 1=1 `
  72. if condition != "" {
  73. sql += condition
  74. }
  75. sql += ` ORDER BY ` + orderBy
  76. sql += ` limit ?,? `
  77. pars = append(pars, startSize, pageSize)
  78. err = o.Raw(sql, pars...).Find(&list).Error
  79. return
  80. }