base_from_smm.go 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. package data_manage
  2. import (
  3. "rdluck_tools/orm"
  4. "time"
  5. )
  6. type BaseFromSmm struct {
  7. BaseFromSmmId int `orm:"column(base_from_smm_id);pk"`
  8. Aid int
  9. Name string
  10. Interface string
  11. ApiUpdate int
  12. ApiUpdateType string
  13. ApiType int
  14. ApiTypeAll string
  15. Type1 string `orm:"column(type_1)"`
  16. Type2 string `orm:"column(type_2)"`
  17. Type3 string `orm:"column(type_3)"`
  18. ApiStartTime string
  19. ApiUpdateTime string
  20. StartTime string
  21. FinishTime string
  22. AuthModule string
  23. AuthLang string
  24. ApiLabel string
  25. Enable string
  26. EditPerson string
  27. EditTime string
  28. AuthDur int
  29. AuthDurType string
  30. StartDate string
  31. EndDate string
  32. }
  33. func AddBaseFromSmm(item *BaseFromSmm) (lastId int64, err error) {
  34. o := orm.NewOrm()
  35. o.Using("data")
  36. lastId, err = o.Insert(item)
  37. return
  38. }
  39. func GetBaseFromSmmList() (list []*BaseFromSmm, err error) {
  40. o := orm.NewOrm()
  41. o.Using("data")
  42. //sql := `SELECT * FROM base_from_smm WHERE interface='cu_annual_copper_cathode_demand_supply_balance_in_china' `
  43. sql := `SELECT * FROM base_from_smm WHERE end_date IS NOT NULL `
  44. _, err = o.Raw(sql).QueryRows(&list)
  45. return
  46. }
  47. type BaseFromSmmIndex struct {
  48. BaseFromSmmIndexId int `orm:"column(base_from_smm_index_id);pk"`
  49. Interface string
  50. Name string
  51. IndexCode string
  52. IndexName string
  53. Type1 string `orm:"column(type_1)"`
  54. Type2 string `orm:"column(type_2)"`
  55. Type3 string `orm:"column(type_3)"`
  56. Frequency string
  57. Unit string
  58. ApiStartTime string
  59. ApiUpdateTime string
  60. StartTime string
  61. FinishTime string
  62. CreateTime time.Time
  63. ModifyTime time.Time
  64. }
  65. func AddBaseFromSmmIndex(item *BaseFromSmmIndex) (lastId int64, err error) {
  66. o := orm.NewOrm()
  67. o.Using("data")
  68. lastId, err = o.Insert(item)
  69. return
  70. }
  71. func GetBaseFromSmmIndex() (list []*BaseFromSmmIndex, err error) {
  72. o := orm.NewOrm()
  73. o.Using("data")
  74. sql := `SELECT * FROM base_from_smm_index `
  75. _, err = o.Raw(sql).QueryRows(&list)
  76. return
  77. }
  78. type BaseFromSmmData struct {
  79. SmmDataId int `orm:"column(smm_data_id);pk"`
  80. BaseFromSmmIndexId int
  81. IndexCode string
  82. DataTime string
  83. Value string
  84. CreateTime time.Time
  85. ModifyTime time.Time
  86. DataTimestamp int64
  87. }
  88. func AddBaseFromSmmData(item *BaseFromSmmData) (lastId int64, err error) {
  89. o := orm.NewOrm()
  90. o.Using("data")
  91. lastId, err = o.Insert(item)
  92. return
  93. }
  94. func GetBaseFromSmmDataAll(indexCode string) (list []*BaseFromSmmData, err error) {
  95. o := orm.NewOrm()
  96. o.Using("data")
  97. sql := `SELECT * FROM base_from_smm_data WHERE index_code=?`
  98. _, err = o.Raw(sql, indexCode).QueryRows(&list)
  99. return
  100. }
  101. func ModifyBaseFromSmmData(smmDataId int, value string) (err error) {
  102. o := orm.NewOrm()
  103. o.Using("data")
  104. sql := `UPDATE base_from_smm_data SET value=?,modify_time=NOW() WHERE smm_data_id=? `
  105. _, err = o.Raw(sql, value, smmDataId).Exec()
  106. return
  107. }
  108. func GetBaseFromSmmIndexByCode(smmCode string) (list []*BaseFromSmmIndex, err error) {
  109. o := orm.NewOrm()
  110. o.Using("data")
  111. sql := ` SELECT * FROM base_from_smm_index WHERE interface=? `
  112. _, err = o.Raw(sql, smmCode).QueryRows(&list)
  113. return
  114. }
  115. func GetBaseFromSmmMaxOrMinDate(indexCode string) (min_date, max_date string, err error) {
  116. o := orm.NewOrm()
  117. o.Using("data")
  118. sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date FROM base_from_smm_data WHERE index_code=? `
  119. err = o.Raw(sql, indexCode).QueryRow(&min_date, &max_date)
  120. return
  121. }
  122. func ModifyBaseFromSmmSmmType(baseFromSmmId int, smmType string) (err error) {
  123. o := orm.NewOrm()
  124. o.Using("data")
  125. sql := ` UPDATE base_from_smm SET smm_type=? WHERE base_from_smm_id=? `
  126. _, err = o.Raw(sql, smmType, baseFromSmmId).Exec()
  127. return
  128. }
  129. func ModifyBaseFromSmmMinDateAndMaxDate(baseFromSmmIndexId, baseFromSmmId int, minDate, maxDate string) (err error) {
  130. o := orm.NewOrm()
  131. o.Using("data")
  132. sql := ` UPDATE base_from_smm_index SET start_date=?,end_date=?,modify_time=NOW() WHERE base_from_smm_index_id=? `
  133. _, err = o.Raw(sql, minDate, maxDate, baseFromSmmIndexId).Exec()
  134. sql = ` UPDATE base_from_smm SET start_date=?,end_date=?,modify_time=NOW() WHERE base_from_smm_id=? `
  135. _, err = o.Raw(sql, minDate, maxDate, baseFromSmmId).Exec()
  136. return
  137. }
  138. type BaseFromSmmDataSimple struct {
  139. SmmDataId int `orm:"column(smm_data_id);pk"`
  140. BaseFromSmmIndexId int
  141. IndexCode string
  142. DataTime string
  143. Value float64
  144. }
  145. func GetBaseFromSmmDataByCondition(condition string, pars []interface{}) (list []*BaseFromSmmDataSimple, err error) {
  146. o := orm.NewOrm()
  147. o.Using("data")
  148. sql := `SELECT * FROM base_from_smm_data WHERE 1=1 `
  149. if condition!="" {
  150. sql+=condition
  151. }
  152. _, err = o.Raw(sql, pars).QueryRows(&list)
  153. return
  154. }