chart_theme.go 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. package chart_theme
  2. import (
  3. "errors"
  4. "eta/eta_api/global"
  5. "eta/eta_api/utils"
  6. "github.com/beego/beego/v2/client/orm"
  7. "time"
  8. )
  9. // ChartTheme
  10. // @Description: 图表主题表
  11. type ChartTheme struct {
  12. ChartThemeId int `description:"图表主题类型ID" orm:"column(chart_theme_id);pk" gorm:"primaryKey" `
  13. ChartThemeName string `description:"图表主题名称"`
  14. ChartThemeTypeId int `description:"图表主题类型ID"`
  15. ChartImage string `description:"缩略图"`
  16. Config string `description:"配置"`
  17. IsDelete int `description:"是否删除,0:未删除;1:已删除"`
  18. SysUserId int `description:"操作人"`
  19. SysUserRealName string `description:"操作人的真实名称"`
  20. IsSystemTheme int `description:"是否是系统主题,0:不是;1:是"`
  21. ModifyTime time.Time `description:"修改时间"`
  22. CreateTime time.Time `description:"创建时间"`
  23. }
  24. // GetChartThemeId
  25. // @Description: 根据id获取主题
  26. // @author: Roc
  27. // @datetime 2023-12-14 16:05:36
  28. // @param chartThemeId int
  29. // @return item *ChartTheme
  30. // @return err error
  31. func GetChartThemeId(chartThemeId int) (item *ChartTheme, err error) {
  32. sql := `SELECT * FROM chart_theme where chart_theme_id = ? AND is_delete = 0`
  33. err = global.DbMap[utils.DbNameIndex].Raw(sql, chartThemeId).First(&item).Error
  34. return
  35. }
  36. // Add
  37. // @Description: 添加
  38. // @author: Roc
  39. // @receiver m
  40. // @datetime 2023-12-14 16:11:10
  41. // @param cols []string
  42. // @return err error
  43. func (m *ChartTheme) Add() (err error) {
  44. if m.ChartThemeId > 0 {
  45. err = errors.New("该配置已存在")
  46. return
  47. }
  48. err = global.DbMap[utils.DbNameIndex].Create(m).Error
  49. return
  50. }
  51. // Update
  52. // @Description: 更新
  53. // @author: Roc
  54. // @receiver m
  55. // @datetime 2023-12-14 16:11:10
  56. // @param cols []string
  57. // @return err error
  58. func (m *ChartTheme) Update(cols []string) (err error) {
  59. err = global.DbMap[utils.DbNameIndex].Select(cols).Updates(m).Error
  60. return
  61. }
  62. // GetChartThemeListByTypeId
  63. // @Description: 根据图表类型获取关联的图表主题列表
  64. // @author: Roc
  65. // @datetime 2023-12-13 17:39:48
  66. // @return list []*ChartTheme
  67. // @return err error
  68. func GetChartThemeListByTypeId(chartThemeTypeId int) (list []*ChartTheme, err error) {
  69. o := orm.NewOrmUsingDB("data")
  70. sql := `SELECT * FROM chart_theme WHERE chart_theme_type_id = ? AND is_delete=0 ORDER BY chart_theme_id ASC `
  71. _, err = o.Raw(sql, chartThemeTypeId).QueryRows(&list)
  72. return
  73. }
  74. // GetAllChartThemeList
  75. // @Description: 获取所有图表主题列表
  76. // @author: Roc
  77. // @datetime 2023-12-13 17:39:48
  78. // @return list []*ChartTheme
  79. // @return err error
  80. func GetAllChartThemeList() (list []*ChartTheme, err error) {
  81. o := orm.NewOrmUsingDB("data")
  82. sql := `SELECT * FROM chart_theme WHERE is_delete=0 ORDER BY chart_theme_id ASC `
  83. _, err = o.Raw(sql).QueryRows(&list)
  84. return
  85. }
  86. // ChartThemeItem
  87. // @Description: 图表主题配置
  88. type ChartThemeItem struct {
  89. ChartThemeId int `description:"图表主题类型ID" orm:"column(chart_theme_id);pk"`
  90. ChartThemeName string `description:"图表主题名称"`
  91. ChartThemeTypeId int `description:"图表主题类型ID"`
  92. Config string `description:"配置"`
  93. ChartImage string `description:"缩略图"`
  94. //IsDelete int `description:"是否删除,0:未删除;1:已删除"`
  95. IsSystemTheme int `description:"是否是系统主题,0:不是;1:是"`
  96. SysUserId int `description:"操作人"`
  97. SysUserRealName string `description:"操作人的真实名称"`
  98. ModifyTime time.Time `description:"修改时间"`
  99. CreateTime time.Time `description:"创建时间"`
  100. DefaultChartThemeId int `description:"默认使用的图表主题ID"`
  101. }
  102. // GetChartThemeItemList
  103. // @Description: 根据图表类型id获取配置列表
  104. // @author: Roc
  105. // @datetime 2023-12-14 14:26:35
  106. // @param chartThemeTypeId int
  107. // @return list []*ChartThemeConfig
  108. // @return err error
  109. func GetChartThemeItemList(chartThemeTypeId int) (list []*ChartThemeItem, err error) {
  110. sql := `SELECT a.*,b.default_chart_theme_id FROM chart_theme a
  111. JOIN chart_theme_type b on a.chart_theme_type_id =b.chart_theme_type_id
  112. WHERE a.chart_theme_type_id = ? AND a.is_delete=0 ORDER BY a.chart_theme_id ASC `
  113. err = global.DbMap[utils.DbNameIndex].Raw(sql, chartThemeTypeId).Find(&list).Error
  114. return
  115. }
  116. // GetSystemChartTheme
  117. // @Description: 根据图表类型id获取系统配置
  118. // @author: Roc
  119. // @datetime 2023-12-14 14:26:35
  120. // @param chartThemeTypeId int
  121. // @return item *ChartTheme
  122. // @return err error
  123. func GetSystemChartTheme(chartThemeTypeId int) (item *ChartTheme, err error) {
  124. sql := `SELECT a.* FROM chart_theme a
  125. WHERE a.chart_theme_type_id = ? AND a.is_system_theme=1 ORDER BY a.chart_theme_id ASC `
  126. err = global.DbMap[utils.DbNameIndex].Raw(sql, chartThemeTypeId).First(&item).Error
  127. return
  128. }