edb_update_log.go 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. package data_manage
  2. import (
  3. "eta_gn/eta_task/global"
  4. "eta_gn/eta_task/utils"
  5. "time"
  6. )
  7. type EdbUpdateLog struct {
  8. Id int64 `gorm:"column:id;primaryKey" json:"id"` // `json:"id" orm:"column(id);pk"`
  9. OpDbName string `json:"op_db_name"` // 库名
  10. OpTableName string `json:"op_table_name"` // 表名
  11. OpType string `json:"op_type"` // 变更类型
  12. OldData string `json:"old_data"` // 历史数据
  13. NewData string `json:"new_data"` // 新数据
  14. IsHandle int `json:"is_handle"` // 是否处理,0:未处理,1:已处理;默认:0
  15. ModifyTime time.Time `json:"modify_time"`
  16. CreateTime time.Time `json:"create_time"`
  17. }
  18. // GetEdbUpdateLogMaxId
  19. // @Description: 获取最大的数据id
  20. // @author: Roc
  21. // @datetime 2024-03-07 18:38:23
  22. // @param condition string
  23. // @param pars []interface{}
  24. // @return maxId int
  25. // @return err error
  26. func GetEdbUpdateLogMaxId() (maxId int64, err error) {
  27. //o := orm.NewOrmUsingDB("data")
  28. sql := ` SELECT id FROM edb_update_log WHERE 1=1 ORDER BY id desc limit 1 `
  29. //err = o.Raw(sql).QueryRow(&maxId)
  30. err = global.DmSQL["data"].Raw(sql).Scan(&maxId).Error
  31. return
  32. }
  33. // GetEdbUpdateLogMaxHandleId
  34. // @Description: 获取已经操作了的最大的数据id
  35. // @author: Roc
  36. // @datetime 2024-03-08 17:53:29
  37. // @return maxId int64
  38. // @return err error
  39. func GetEdbUpdateLogMaxHandleId() (maxId int64, err error) {
  40. //o := orm.NewOrmUsingDB("data")
  41. sql := ` SELECT id FROM edb_update_log WHERE 1=1 AND is_handle = 1 ORDER BY id desc limit 1 `
  42. //err = o.Raw(sql).QueryRow(&maxId)
  43. err = global.DmSQL["data"].Raw(sql).Scan(&maxId).Error
  44. return
  45. }
  46. // GetEdbUpdateLogByCondition
  47. // @Description: 获取指标更新列表
  48. // @author: Roc
  49. // @datetime 2024-03-07 18:36:44
  50. // @param condition string
  51. // @param pars []interface{}
  52. // @return item []*EdbUpdateLog
  53. // @return err error
  54. func GetEdbUpdateLogByCondition(condition string, pars []interface{}) (item []*EdbUpdateLog, err error) {
  55. //o := orm.NewOrmUsingDB("data")
  56. sql := ` SELECT * FROM edb_update_log WHERE 1=1 `
  57. if condition != "" {
  58. sql += condition
  59. }
  60. sql += ` ORDER BY id ASC limit 500 `
  61. //_, err = o.Raw(sql, pars).QueryRows(&item)
  62. err = global.DmSQL["data"].Raw(sql, pars...).Find(&item).Error
  63. return
  64. }
  65. // HandleUpdateLogByIds
  66. // @Description: 批量处理指标更新记录
  67. // @author: Roc
  68. // @datetime 2024-03-08 17:30:52
  69. // @param idList []int
  70. // @return err error
  71. func HandleUpdateLogByIds(idList []int64, modifyTime string) (err error) {
  72. num := len(idList)
  73. if num <= 0 {
  74. return
  75. }
  76. //o := orm.NewOrmUsingDB("data")
  77. sql := ` UPDATE edb_update_log set is_handle=1 ,modify_time = ? WHERE id in (` + utils.GetOrmInReplace(num) + `) `
  78. //_, err = o.Raw(sql, modifyTime, idList).Exec()
  79. err = global.DmSQL["data"].Exec(sql, modifyTime, idList).Error
  80. return
  81. }
  82. type EdbInfoItem struct {
  83. CalculateFormula string `json:"calculate_formula"`
  84. Calendar string `json:"calendar"`
  85. ChartImage string `json:"chart_image"`
  86. ClassifyId int `json:"classify_id"`
  87. CreateTime string `json:"create_time"`
  88. DataDateType string `json:"data_date_type"`
  89. DataUpdateTime string `json:"data_update_time"`
  90. EdbCode string `json:"edb_code"`
  91. EdbInfoId int `json:"edb_info_id"`
  92. EdbInfoType int `json:"edb_info_type"`
  93. EdbName string `json:"edb_name"`
  94. EdbNameEn string `json:"edb_name_en"`
  95. EdbNameSource string `json:"edb_name_source"`
  96. EdbType int `json:"edb_type"`
  97. EmptyType int `json:"empty_type"`
  98. EndDate string `json:"end_date"`
  99. EndValue float64 `json:"end_value"`
  100. ErDataUpdateDate string `json:"er_data_update_date"`
  101. Extra string `json:"extra"`
  102. Frequency string `json:"frequency"`
  103. IndicatorCode string `json:"indicator_code"`
  104. IsUpdate int `json:"is_update"`
  105. LatestDate string `json:"latest_date"`
  106. LatestValue float64 `json:"latest_value"`
  107. ManualSave int `json:"manual_save"`
  108. MaxEmptyType int `json:"max_empty_type"`
  109. MaxValue float64 `json:"max_value"`
  110. MinValue float64 `json:"min_value"`
  111. ModifyTime string `json:"modify_time"`
  112. MoveFrequency string `json:"move_frequency"`
  113. MoveType int `json:"move_type"`
  114. NoUpdate int `json:"no_update"`
  115. ServerUrl string `json:"server_url"`
  116. Sort int `json:"sort"`
  117. Source int `json:"source"`
  118. SourceIndexName string `json:"source_index_name"`
  119. SourceName string `json:"source_name"`
  120. StartDate string `json:"start_date"`
  121. StockCode string `json:"stock_code"`
  122. SubSource int `json:"sub_source"`
  123. SubSourceName string `json:"sub_source_name"`
  124. SysUserId int `json:"sys_user_id"`
  125. SysUserRealName string `json:"sys_user_real_name"`
  126. TerminalCode string `json:"terminal_code"`
  127. UniqueCode string `json:"unique_code"`
  128. Unit string `json:"unit"`
  129. UnitEn string `json:"unit_en"`
  130. }
  131. type EdbData struct {
  132. EdbDataId int32 `gorm:"column:edb_data_id;primaryKey" json:"edb_data_id"` // `orm:"column(edb_data_id);pk" json:"edb_data_id"`
  133. EdbInfoId int32 `json:"edb_info_id"` // 指标id
  134. EdbCode string `json:"edb_code"` // 指标编码
  135. //DataTime time.Time `json:"data_time"` // 数据日期
  136. DataTime string `json:"data_time"` // 数据日期
  137. Value float64 `json:"value"` // 数据值
  138. //CreateTime time.Time `json:"create_time"` // 创建时间
  139. //ModifyTime time.Time `json:"modify_time"` // 修改时间
  140. CreateTime string `json:"create_time"` // 创建时间
  141. ModifyTime string `json:"modify_time"` // 修改时间
  142. DataTimestamp int64 `json:"data_timestamp"` // 数据日期时间戳
  143. }