bi_dashboard.go 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. package bi_dashboard
  2. import (
  3. "eta_gn/eta_api/global"
  4. "time"
  5. )
  6. type BiDashboard struct {
  7. BiDashboardId int `gorm:"primaryKey;autoIncrement;column:bi_dashboard_id"` // bi看板id
  8. BiDashboardClassifyId int `gorm:"column:bi_dashboard_classify_id" ` // 看板分类id
  9. BiDashboardName string `gorm:"column:bi_dashboard_name;size:255"` // 看板名称
  10. SysAdminId int `gorm:"column:sys_admin_id" ` // 创建人ID
  11. SysAdminName string `gorm:"column:sys_admin_name;size:128" ` // 创建人姓名
  12. Sort int `gorm:"column:sort" ` // 排序字段
  13. CreateTime time.Time `gorm:"column:create_time" ` // 创建时间
  14. ModifyTime time.Time `gorm:"column:modify_time"` // 更新时间
  15. State int `gorm:"column:state"` // 状态
  16. }
  17. // tableName
  18. func (m *BiDashboard) TableName() string {
  19. return "bi_dashboard"
  20. }
  21. func (m *BiDashboard) Update(cols []string) (err error) {
  22. err = global.DEFAULT_DmSQL.Model(m).Select(cols).Updates(m).Error
  23. return
  24. }
  25. // AddBiDashboard 新增看板
  26. func AddBiDashboard(item *BiDashboard) (lastId int64, err error) {
  27. err = global.DEFAULT_DmSQL.Create(item).Error
  28. lastId = int64(item.BiDashboardId)
  29. return
  30. }
  31. // GetShareDashboard 获取公开分享的看板
  32. func GetShareDashboard() (items []*BiDashboard, err error) {
  33. //o := orm.NewOrmUsingDB("rddp")
  34. sql := `SELECT * FROM bi_dashboard WHERE 1=1 AND state = 6 `
  35. sql += `ORDER BY create_time DESC`
  36. //sql += `ORDER BY create_time DESC LIMIT ?,?`
  37. //_, err = o.Raw(sql).QueryRows(&items)
  38. err = global.DEFAULT_DmSQL.Raw(sql).Find(&items).Error
  39. return
  40. }
  41. func GetBiDashboardList(condition string, pars []interface{}) (items []*BiDashboard, err error) {
  42. sql := `SELECT * FROM bi_dashboard WHERE 1=1 `
  43. if condition != "" {
  44. sql += condition
  45. }
  46. //
  47. sql += `ORDER BY modify_time DESC `
  48. //sql += `ORDER BY create_time DESC LIMIT ?,?`
  49. //_, err = o.Raw(sql, pars...).QueryRows(&items)
  50. err = global.DEFAULT_DmSQL.Raw(sql, pars...).Find(&items).Error
  51. return
  52. }
  53. // GetDashboardById 获取看板
  54. func GetDashboardById(id int) (item *BiDashboard, err error) {
  55. //o := orm.NewOrmUsingDB("rddp")
  56. sql := `SELECT * FROM bi_dashboard WHERE bi_dashboard_id = ? limit 1`
  57. //sql += `ORDER BY create_time DESC LIMIT ?,?`
  58. //_, err = o.Raw(sql).QueryRows(&items)
  59. err = global.DEFAULT_DmSQL.Raw(sql, id).First(&item).Error
  60. return
  61. }
  62. // del
  63. func DelDashboard(id int) (err error) {
  64. return global.DEFAULT_DmSQL.Delete(&BiDashboard{BiDashboardId: id}).Error
  65. }
  66. // DashboardDetailResp 详情响应体
  67. type DashboardDetailResp struct {
  68. *BiDashboard
  69. List []*BiDashboardDetail
  70. }
  71. type AddDashboardReq struct {
  72. List []*AddDashboardListReq
  73. BiDashboardName string `description:"看板名称"`
  74. }
  75. type AddDashboardListReq struct {
  76. Type int
  77. UniqueCode string
  78. Sort int
  79. }
  80. type EditDashboardReq struct {
  81. List []*AddDashboardListReq
  82. BiDashboardId int `description:"看板id"`
  83. BiDashboardName string `description:"看板名称"`
  84. }
  85. // update
  86. func EditDashboard(item *BiDashboard) (err error) {
  87. return global.DEFAULT_DmSQL.Model(item).Updates(item).Error
  88. }
  89. type DelDashboardReq struct {
  90. BiDashboardId int `description:"看板id"`
  91. }
  92. func GetDashboradByIds(dashboradIds []int) (list []*BiDashboard, err error) {
  93. //_, err = orm.NewOrmUsingDB("rddp").
  94. // QueryTable("ppt_v2").
  95. // Filter("ppt_id__in", pptIds).
  96. // All(&list)
  97. err = global.DEFAULT_DmSQL.Table("bi_dashboard").Where("bi_dashboard_id IN ?", dashboradIds).Find(&list).Error
  98. return
  99. }
  100. // GetAllGrantList 获取已经有权限的看板列表
  101. func GetAllGrantList(sysUserId int) (list []*BiDashboard, err error) {
  102. sql := `SELECT a.* FROM bi_dashboard a JOIN bi_dashboard_grant b on a.bi_dashboard_id=b.bi_dashboard_id
  103. WHERE b.grant_admin_id=?`
  104. err = global.DEFAULT_DmSQL.Raw(sql, sysUserId, sysUserId).Find(&list).Error
  105. return
  106. }