mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 16:01:32 +01:00 
			
		
		
		
	Small optimization for getTeamIDs (#919)
* small optimization for getTeamIDs * rename getOrgTeamIDs to getUserTeamIDs and remove orderby
This commit is contained in:
		
							parent
							
								
									1ec6b1a258
								
							
						
					
					
						commit
						55ae78208e
					
				| @ -30,6 +30,7 @@ import ( | ||||
| 
 | ||||
| // Engine represents a xorm engine or session. | ||||
| type Engine interface { | ||||
| 	Table(tableNameOrBean interface{}) *xorm.Session | ||||
| 	Count(interface{}) (int64, error) | ||||
| 	Decr(column string, arg ...interface{}) *xorm.Session | ||||
| 	Delete(interface{}) (int64, error) | ||||
|  | ||||
| @ -563,18 +563,20 @@ func (org *User) getUserTeams(e Engine, userID int64, cols ...string) ([]*Team, | ||||
| 		Find(&teams) | ||||
| } | ||||
| 
 | ||||
| func (org *User) getUserTeamIDs(e Engine, userID int64) ([]int64, error) { | ||||
| 	teamIDs := make([]int64, 0, org.NumTeams) | ||||
| 	return teamIDs, e. | ||||
| 		Table("team"). | ||||
| 		Cols("team.id"). | ||||
| 		Where("`team_user`.org_id = ?", org.ID). | ||||
| 		Join("INNER", "team_user", "`team_user`.team_id = team.id"). | ||||
| 		And("`team_user`.uid = ?", userID). | ||||
| 		Find(&teamIDs) | ||||
| } | ||||
| 
 | ||||
| // GetUserTeamIDs returns of all team IDs of the organization that user is member of. | ||||
| func (org *User) GetUserTeamIDs(userID int64) ([]int64, error) { | ||||
| 	teams, err := org.getUserTeams(x, userID, "team.id") | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("getUserTeams [%d]: %v", userID, err) | ||||
| 	} | ||||
| 
 | ||||
| 	teamIDs := make([]int64, len(teams)) | ||||
| 	for i := range teams { | ||||
| 		teamIDs[i] = teams[i].ID | ||||
| 	} | ||||
| 	return teamIDs, nil | ||||
| 	return org.getUserTeamIDs(x, userID) | ||||
| } | ||||
| 
 | ||||
| // GetUserTeams returns all teams that belong to user, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user