chart_info.go 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. package data_manage
  2. import (
  3. "eta_gn/eta_task/global"
  4. "eta_gn/eta_task/utils"
  5. "time"
  6. )
  7. type ChartInfo struct {
  8. ChartInfoId int `gorm:"column:chart_info_id;primaryKey"` // `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 time.Time `description:"指标最后更新日期"`
  28. Source int `description:"1:ETA图库;2:商品价格曲线"`
  29. ExtraConfig string `description:"图表额外配置,json数据"`
  30. }
  31. func GetAllChartInfo() (list []*ChartInfo, err error) {
  32. sql := ` SELECT * FROM chart_info `
  33. err = global.DEFAULT_DmSQL.Raw(sql).Find(&list).Error
  34. return
  35. }
  36. // ChartInfoEdbEndDate
  37. // @Description: 图表指标最后更新日期
  38. type ChartInfoEdbEndDate struct {
  39. ChartInfoId int `orm:"column(chart_info_id);pk"`
  40. EdbEndDate time.Time `description:"指标最后更新日期"`
  41. }
  42. func GetChartInfoEdbEndDate() (list []*ChartInfoEdbEndDate, err error) {
  43. sql := `SELECT a.chart_info_id, a.date_type_num,max(c.end_date) AS edb_end_date FROM chart_info AS a
  44. INNER JOIN chart_edb_mapping AS b ON a.chart_info_id=b.chart_info_id
  45. INNER JOIN edb_info AS c ON b.edb_info_id=c.edb_info_id
  46. GROUP BY a.chart_info_id, a.date_type_num`
  47. err = global.DEFAULT_DmSQL.Raw(sql).Find(&list).Error
  48. return
  49. }
  50. func ModifyChartInfoEdbEndDate(chartInfoId int, edbEndDate string) (err error) {
  51. sql := ` UPDATE chart_info SET edb_end_date=? WHERE chart_info_id=? `
  52. err = global.DEFAULT_DmSQL.Exec(sql, edbEndDate, chartInfoId).Error
  53. return
  54. }
  55. // 根据chart_info_id数组获取图表信息
  56. func GetChartInfoByChartInfoIds(chartInfoIds []int) (list []*ChartInfo, err error) {
  57. sql := ` SELECT * FROM chart_info WHERE chart_info_id IN (` + utils.GetOrmInReplace(len(chartInfoIds)) + `) `
  58. err = global.DmSQL["data"].Raw(sql, chartInfoIds).Find(&list).Error
  59. return
  60. }