MM-43929: Ignore archived team memberships in GraphQL (#20130)

https://mattermost.atlassian.net/browse/MM-43929

```release-note
NONE
```
Этот коммит содержится в:
Agniva De Sarker
2022-05-04 19:43:02 +05:30
коммит произвёл GitHub
родитель 89fac9d485
Коммит 3c83187c5b
18 изменённых файлов: 59 добавлений и 34 удалений

Просмотреть файл

@@ -737,7 +737,7 @@ type AppIface interface {
GetTeamMember(teamID, userID string) (*model.TeamMember, *model.AppError)
GetTeamMembers(teamID string, offset int, limit int, teamMembersGetOptions *model.TeamMembersGetOptions) ([]*model.TeamMember, *model.AppError)
GetTeamMembersByIds(teamID string, userIDs []string, restrictions *model.ViewUsersRestrictions) ([]*model.TeamMember, *model.AppError)
GetTeamMembersForUser(userID string) ([]*model.TeamMember, *model.AppError)
GetTeamMembersForUser(userID string, includeDeleted bool) ([]*model.TeamMember, *model.AppError)
GetTeamMembersForUserWithPagination(userID string, page, perPage int) ([]*model.TeamMember, *model.AppError)
GetTeamPoliciesForUser(userID string, offset, limit int) (*model.RetentionPolicyForTeamList, *model.AppError)
GetTeamStats(teamID string, restrictions *model.ViewUsersRestrictions) (*model.TeamStats, *model.AppError)

Просмотреть файл

@@ -737,7 +737,7 @@ func (a *App) importUserTeams(user *model.User, data *[]UserTeamImportData) *mod
isGuestByTeamId := map[string]bool{}
isUserByTeamId := map[string]bool{}
isAdminByTeamId := map[string]bool{}
existingMemberships, nErr := a.Srv().Store.Team().GetTeamsForUser(context.Background(), user.Id)
existingMemberships, nErr := a.Srv().Store.Team().GetTeamsForUser(context.Background(), user.Id, true)
if nErr != nil {
return model.NewAppError("importUserTeams", "app.team.get_members.app_error", nil, nErr.Error(), http.StatusInternalServerError)
}

Просмотреть файл

@@ -1717,7 +1717,7 @@ func TestImportUserTeams(t *testing.T) {
} else {
require.Nil(t, err)
}
teamMembers, nErr := th.App.Srv().Store.Team().GetTeamsForUser(context.Background(), user.Id)
teamMembers, nErr := th.App.Srv().Store.Team().GetTeamsForUser(context.Background(), user.Id, true)
require.NoError(t, nErr)
require.Len(t, teamMembers, tc.expectedUserTeams)
if tc.expectedUserTeams == 1 {

Просмотреть файл

@@ -9200,7 +9200,7 @@ func (a *OpenTracingAppLayer) GetTeamMembersByIds(teamID string, userIDs []strin
return resultVar0, resultVar1
}
func (a *OpenTracingAppLayer) GetTeamMembersForUser(userID string) ([]*model.TeamMember, *model.AppError) {
func (a *OpenTracingAppLayer) GetTeamMembersForUser(userID string, includeDeleted bool) ([]*model.TeamMember, *model.AppError) {
origCtx := a.ctx
span, newCtx := tracing.StartSpanWithParentByContext(a.ctx, "app.GetTeamMembersForUser")
@@ -9212,7 +9212,7 @@ func (a *OpenTracingAppLayer) GetTeamMembersForUser(userID string) ([]*model.Tea
}()
defer span.Finish()
resultVar0, resultVar1 := a.app.GetTeamMembersForUser(userID)
resultVar0, resultVar1 := a.app.GetTeamMembersForUser(userID, includeDeleted)
if resultVar1 != nil {
span.LogFields(spanlog.Error(resultVar1))

Просмотреть файл

@@ -893,8 +893,8 @@ func (a *App) GetTeamMember(teamID, userID string) (*model.TeamMember, *model.Ap
return teamMember, nil
}
func (a *App) GetTeamMembersForUser(userID string) ([]*model.TeamMember, *model.AppError) {
teamMembers, err := a.Srv().Store.Team().GetTeamsForUser(context.Background(), userID)
func (a *App) GetTeamMembersForUser(userID string, includeDeleted bool) ([]*model.TeamMember, *model.AppError) {
teamMembers, err := a.Srv().Store.Team().GetTeamsForUser(context.Background(), userID, includeDeleted)
if err != nil {
return nil, model.NewAppError("GetTeamMembersForUser", "app.team.get_members.app_error", nil, err.Error(), http.StatusInternalServerError)
}

Просмотреть файл

@@ -2136,7 +2136,7 @@ func (a *App) PromoteGuestToUser(c *request.Context, user *model.User, requestor
}
}
teamMembers, err := a.GetTeamMembersForUser(user.Id)
teamMembers, err := a.GetTeamMembersForUser(user.Id, true)
if err != nil {
mlog.Warn("Failed to get team members for user on promote guest to user", mlog.Err(err))
}
@@ -2180,7 +2180,7 @@ func (a *App) DemoteUserToGuest(user *model.User) *model.AppError {
mlog.Warn("Unable to update user sessions", mlog.String("user_id", demotedUser.Id), mlog.Err(uErr))
}
teamMembers, err := a.GetTeamMembersForUser(user.Id)
teamMembers, err := a.GetTeamMembersForUser(user.Id, true)
if err != nil {
mlog.Warn("Failed to get team members for users on demote user to guest", mlog.Err(err))
}