admin_team.go 1.3 KB

1234567891011121314151617181920212223
  1. package request
  2. // AdminTeam 直接将用户添加到团队的 Members 中
  3. // db.Model(&team).Update("Members", gorm.Expr("ARRAY_APPEND(members, ?)", userID))
  4. // 假设 teamID 为团队的 ID
  5. // var team Team
  6. // if err := db.Preload("Members").First(&team, teamID).Error; err != nil {
  7. // // 处理团队不存在的情况
  8. // }
  9. type AdminTeam struct {
  10. ID int64 `gorm:"primary_key;not_null;auto_increment;" json:"id"`
  11. Name string `json:"name"` // 团队名称
  12. Description string `json:"description"` // 团队描述
  13. LeaderID int64 `json:"leader_id"` // 团队领导的用户 ID
  14. CreatedBy string `json:"created_by"` // 创建团队的用户
  15. CreateTime int64 `json:"create_time"` // 团队创建时间
  16. Leader AdminUser `gorm:"foreignkey:LeaderID" json:"leader"`
  17. Members []AdminUser `gorm:"many2many:admin_team_member;" json:"members"`
  18. Roles []AdminRole `gorm:"many2many:admin_team_role;" json:"roles"`
  19. Permissions []AdminPermission `gorm:"many2many:admin_team_permission;" json:"permissions"`
  20. Website string `json:"website"` // 团队网站
  21. MaxMembers int `json:"max_members"` // 团队最大成员数
  22. }