chart_info.go 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package data_manage
  2. import (
  3. "eta/eta_task/utils"
  4. "github.com/beego/beego/v2/client/orm"
  5. "time"
  6. )
  7. type ChartInfo struct {
  8. ChartInfoId int `orm:"column(chart_info_id);pk"`
  9. ChartName string `description:"来源名称"`
  10. ChartClassifyId int `description:"图表分类id"`
  11. SysUserId int
  12. SysUserRealName string
  13. UniqueCode string `description:"图表唯一编码"`
  14. CreateTime time.Time
  15. ModifyTime time.Time
  16. DateType int `description:"日期类型:1:00年至今,2:10年至今,3:15年至今,4:年初至今,5:自定义时间"`
  17. StartDate string `description:"自定义开始日期"`
  18. EndDate string `description:"自定义结束日期"`
  19. IsSetName int `description:"设置名称"`
  20. EdbInfoIds string `description:"指标id"`
  21. ChartType int `description:"生成样式:1:曲线图,2:季节性图"`
  22. Calendar string `description:"公历/农历"`
  23. SeasonStartDate string `description:"季节性图开始日期"`
  24. SeasonEndDate string `description:"季节性图开始日期"`
  25. ChartImage string `description:"图表图片"`
  26. Sort int `description:"排序字段,数字越小越排前面"`
  27. EdbEndDate string `description:"指标最后更新日期"`
  28. Source int `description:"1:ETA图库;2:商品价格曲线"`
  29. }
  30. func GetAllChartInfo() (list []*ChartInfo, err error) {
  31. o := orm.NewOrm()
  32. sql := ` SELECT * FROM chart_info `
  33. _, err = o.Raw(sql).QueryRows(&list)
  34. return
  35. }
  36. func GetChartInfoEdbEndDate() (list []*ChartInfo, err error) {
  37. o := orm.NewOrm()
  38. sql := ` SELECT a.*,max(c.end_date) AS edb_end_date FROM chart_info AS a
  39. INNER JOIN chart_edb_mapping AS b ON a.chart_info_id=b.chart_info_id
  40. INNER JOIN edb_info AS c ON b.edb_info_id=c.edb_info_id
  41. GROUP BY a.chart_info_id `
  42. _, err = o.Raw(sql).QueryRows(&list)
  43. return
  44. }
  45. func ModifyChartInfoEdbEndDate(chartInfoId int, edbEndDate string) (err error) {
  46. o := orm.NewOrm()
  47. sql := ` UPDATE chart_info SET edb_end_date=? WHERE chart_info_id=? `
  48. _, err = o.Raw(sql, edbEndDate, chartInfoId).Exec()
  49. return
  50. }
  51. // 根据chart_info_id数组获取图表信息
  52. func GetChartInfoByChartInfoIds(chartInfoIds []int) (list []*ChartInfo, err error) {
  53. o := orm.NewOrmUsingDB("data")
  54. sql := ` SELECT * FROM chart_info WHERE chart_info_id IN (` + utils.GetOrmInReplace(len(chartInfoIds)) + `) `
  55. _, err = o.Raw(sql, chartInfoIds).QueryRows(&list)
  56. return
  57. }