Chore: Remove bus from team (#44218)
* Remove bus from team * Fix api team test * Remove bus from team members
This commit is contained in:
@@ -11,19 +11,29 @@ import (
|
||||
"github.com/grafana/grafana/pkg/models"
|
||||
)
|
||||
|
||||
func init() {
|
||||
bus.AddHandler("sql", UpdateTeam)
|
||||
bus.AddHandler("sql", DeleteTeam)
|
||||
bus.AddHandler("sql", SearchTeams)
|
||||
bus.AddHandler("sql", GetTeamById)
|
||||
func (ss *SQLStore) addTeamQueryAndCommandHandlers() {
|
||||
bus.AddHandler("sql", ss.UpdateTeam)
|
||||
bus.AddHandler("sql", ss.DeleteTeam)
|
||||
bus.AddHandler("sql", ss.SearchTeams)
|
||||
bus.AddHandler("sql", ss.GetTeamById)
|
||||
bus.AddHandler("sql", GetTeamsByUser)
|
||||
|
||||
bus.AddHandler("sql", UpdateTeamMember)
|
||||
bus.AddHandler("sql", RemoveTeamMember)
|
||||
bus.AddHandler("sql", GetTeamMembers)
|
||||
bus.AddHandler("sql", ss.UpdateTeamMember)
|
||||
bus.AddHandler("sql", ss.RemoveTeamMember)
|
||||
bus.AddHandler("sql", ss.GetTeamMembers)
|
||||
bus.AddHandler("sql", IsAdminOfTeams)
|
||||
}
|
||||
|
||||
type TeamStore interface {
|
||||
UpdateTeam(ctx context.Context, cmd *models.UpdateTeamCommand) error
|
||||
DeleteTeam(ctx context.Context, cmd *models.DeleteTeamCommand) error
|
||||
SearchTeams(ctx context.Context, query *models.SearchTeamsQuery) error
|
||||
GetTeamById(ctx context.Context, query *models.GetTeamByIdQuery) error
|
||||
UpdateTeamMember(ctx context.Context, cmd *models.UpdateTeamMemberCommand) error
|
||||
RemoveTeamMember(ctx context.Context, cmd *models.RemoveTeamMemberCommand) error
|
||||
GetTeamMembers(ctx context.Context, cmd *models.GetTeamMembersQuery) error
|
||||
}
|
||||
|
||||
func getFilteredUsers(signedInUser *models.SignedInUser, hiddenUsers map[string]struct{}) []string {
|
||||
filteredUsers := make([]string, 0, len(hiddenUsers))
|
||||
if signedInUser == nil || signedInUser.IsGrafanaAdmin {
|
||||
@@ -95,7 +105,7 @@ func (ss *SQLStore) CreateTeam(name, email string, orgID int64) (models.Team, er
|
||||
return team, err
|
||||
}
|
||||
|
||||
func UpdateTeam(ctx context.Context, cmd *models.UpdateTeamCommand) error {
|
||||
func (ss *SQLStore) UpdateTeam(ctx context.Context, cmd *models.UpdateTeamCommand) error {
|
||||
return inTransaction(func(sess *DBSession) error {
|
||||
if isNameTaken, err := isTeamNameTaken(cmd.OrgId, cmd.Name, cmd.Id, sess); err != nil {
|
||||
return err
|
||||
@@ -126,7 +136,7 @@ func UpdateTeam(ctx context.Context, cmd *models.UpdateTeamCommand) error {
|
||||
}
|
||||
|
||||
// DeleteTeam will delete a team, its member and any permissions connected to the team
|
||||
func DeleteTeam(ctx context.Context, cmd *models.DeleteTeamCommand) error {
|
||||
func (ss *SQLStore) DeleteTeam(ctx context.Context, cmd *models.DeleteTeamCommand) error {
|
||||
return inTransaction(func(sess *DBSession) error {
|
||||
if _, err := teamExists(cmd.OrgId, cmd.Id, sess); err != nil {
|
||||
return err
|
||||
@@ -172,7 +182,7 @@ func isTeamNameTaken(orgId int64, name string, existingId int64, sess *DBSession
|
||||
return false, nil
|
||||
}
|
||||
|
||||
func SearchTeams(ctx context.Context, query *models.SearchTeamsQuery) error {
|
||||
func (ss *SQLStore) SearchTeams(ctx context.Context, query *models.SearchTeamsQuery) error {
|
||||
query.Result = models.SearchTeamQueryResult{
|
||||
Teams: make([]*models.TeamDTO, 0),
|
||||
}
|
||||
@@ -235,7 +245,7 @@ func SearchTeams(ctx context.Context, query *models.SearchTeamsQuery) error {
|
||||
return err
|
||||
}
|
||||
|
||||
func GetTeamById(ctx context.Context, query *models.GetTeamByIdQuery) error {
|
||||
func (ss *SQLStore) GetTeamById(ctx context.Context, query *models.GetTeamByIdQuery) error {
|
||||
var sql bytes.Buffer
|
||||
params := make([]interface{}, 0)
|
||||
|
||||
@@ -322,7 +332,7 @@ func getTeamMember(sess *DBSession, orgId int64, teamId int64, userId int64) (mo
|
||||
}
|
||||
|
||||
// UpdateTeamMember updates a team member
|
||||
func UpdateTeamMember(ctx context.Context, cmd *models.UpdateTeamMemberCommand) error {
|
||||
func (ss *SQLStore) UpdateTeamMember(ctx context.Context, cmd *models.UpdateTeamMemberCommand) error {
|
||||
return inTransaction(func(sess *DBSession) error {
|
||||
member, err := getTeamMember(sess, cmd.OrgId, cmd.TeamId, cmd.UserId)
|
||||
if err != nil {
|
||||
@@ -348,7 +358,7 @@ func UpdateTeamMember(ctx context.Context, cmd *models.UpdateTeamMemberCommand)
|
||||
}
|
||||
|
||||
// RemoveTeamMember removes a member from a team
|
||||
func RemoveTeamMember(ctx context.Context, cmd *models.RemoveTeamMemberCommand) error {
|
||||
func (ss *SQLStore) RemoveTeamMember(ctx context.Context, cmd *models.RemoveTeamMemberCommand) error {
|
||||
return inTransaction(func(sess *DBSession) error {
|
||||
if _, err := teamExists(cmd.OrgId, cmd.TeamId, sess); err != nil {
|
||||
return err
|
||||
@@ -399,7 +409,7 @@ func isLastAdmin(sess *DBSession, orgId int64, teamId int64, userId int64) (bool
|
||||
}
|
||||
|
||||
// GetTeamMembers return a list of members for the specified team
|
||||
func GetTeamMembers(ctx context.Context, query *models.GetTeamMembersQuery) error {
|
||||
func (ss *SQLStore) GetTeamMembers(ctx context.Context, query *models.GetTeamMembersQuery) error {
|
||||
query.Result = make([]*models.TeamMemberDTO, 0)
|
||||
sess := x.Table("team_member")
|
||||
sess.Join("INNER", x.Dialect().Quote("user"), fmt.Sprintf("team_member.user_id=%s.id", x.Dialect().Quote("user")))
|
||||
|
||||
Reference in New Issue
Block a user