bi_dashboard.go 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  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"` // 状态 1:未公开; 4-待审批;5-已驳回;6-已通过
  16. }
  17. func (m *BiDashboard) TableName() string {
  18. return "bi_dashboard"
  19. }
  20. func (m *BiDashboard) Update(cols []string) (err error) {
  21. err = global.DEFAULT_DmSQL.Model(m).Select(cols).Updates(m).Error
  22. return
  23. }
  24. func AddBiDashboard(item *BiDashboard) (lastId int64, err error) {
  25. err = global.DEFAULT_DmSQL.Create(item).Error
  26. lastId = int64(item.BiDashboardId)
  27. return
  28. }
  29. func GetBiDashboardList(condition string, pars []interface{}) (items []*BiDashboard, err error) {
  30. sql := `SELECT * FROM bi_dashboard WHERE 1=1 `
  31. if condition != "" {
  32. sql += condition
  33. }
  34. sql += `ORDER BY modify_time DESC `
  35. err = global.DEFAULT_DmSQL.Raw(sql, pars...).Find(&items).Error
  36. return
  37. }
  38. func GetDashboardById(id int) (item *BiDashboard, err error) {
  39. sql := `SELECT * FROM bi_dashboard WHERE bi_dashboard_id = ? limit 1`
  40. err = global.DEFAULT_DmSQL.Raw(sql, id).First(&item).Error
  41. return
  42. }
  43. func DelDashboard(id int) (err error) {
  44. return global.DEFAULT_DmSQL.Delete(&BiDashboard{BiDashboardId: id}).Error
  45. }
  46. type BiDashboardEditingCache struct {
  47. IsEditing bool `description:"是否有人编辑"`
  48. AdminId int `description:"编辑者ID"`
  49. Editor string `description:"编辑者姓名"`
  50. Tips string `description:"提示信息"`
  51. }
  52. type DashboardDetailResp struct {
  53. *BiDashboard
  54. IsGrant int `description:"是否共享,0:不是,1:是"`
  55. Editor BiDashboardEditingCache `description:"编辑人信息"`
  56. List []*BiDashboardDetail
  57. }
  58. type AddDashboardReq struct {
  59. List []*AddDashboardListReq
  60. BiDashboardName string `description:"看板名称"`
  61. }
  62. type AddDashboardListReq struct {
  63. Type int
  64. UniqueCode string
  65. Sort int
  66. }
  67. type EditDashboardReq struct {
  68. List []*AddDashboardListReq
  69. BiDashboardId int `description:"看板id"`
  70. BiDashboardName string `description:"看板名称"`
  71. }
  72. func EditDashboard(item *BiDashboard) (err error) {
  73. return global.DEFAULT_DmSQL.Model(item).Updates(item).Error
  74. }
  75. type DelDashboardReq struct {
  76. BiDashboardId int `description:"看板id"`
  77. }
  78. func GetAllGrantList(sysUserId int) (list []*BiDashboard, err error) {
  79. sql := `SELECT a.* FROM bi_dashboard a JOIN bi_dashboard_grant b on a.bi_dashboard_id=b.bi_dashboard_id
  80. WHERE b.grant_admin_id=?`
  81. err = global.DEFAULT_DmSQL.Raw(sql, sysUserId).Find(&list).Error
  82. return
  83. }
  84. func SaveDashboard(item *BiDashboard) (err error) {
  85. return global.DEFAULT_DmSQL.Save(item).Error
  86. }
  87. type BiDashboardEditingReq struct {
  88. BiDashboardId int `description:"看板主键ID"`
  89. Status int `description:"标记状态: 1-编辑中; 2-编辑完成"`
  90. }
  91. func GetAllMyShareList(sysUserId int) (list []*BiDashboard, err error) {
  92. sql := `SELECT a.* FROM bi_dashboard a JOIN bi_dashboard_grant b on a.bi_dashboard_id=b.bi_dashboard_id
  93. WHERE a."sys_admin_id" = ? GROUP BY a."bi_dashboard_id" ,"bi_dashboard_classify_id" ,"bi_dashboard_name" ,"sys_admin_id" ,
  94. "sys_admin_name" ,"sort" ,a."create_time" ,a."modify_time" ,"state" `
  95. err = global.DEFAULT_DmSQL.Raw(sql, sysUserId).Find(&list).Error
  96. return
  97. }
  98. func GetDashboardByName(name string) (item *BiDashboard, err error) {
  99. sql := `SELECT * FROM bi_dashboard WHERE bi_dashboard_name = ? limit 1`
  100. err = global.DEFAULT_DmSQL.Raw(sql, name).First(&item).Error
  101. return
  102. }