Fix approvals counting (#7757)
* fix approvals counting * fix tests * fmt
This commit is contained in:
		
							parent
							
								
									28c5ae27d6
								
							
						
					
					
						commit
						c832f0eef7
					
				
					 2 changed files with 9 additions and 6 deletions
				
			
		| 
						 | 
				
			
			@ -760,11 +760,14 @@ func IsUserInTeams(userID int64, teamIDs []int64) (bool, error) {
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
// UsersInTeamsCount counts the number of users which are in userIDs and teamIDs
 | 
			
		||||
func UsersInTeamsCount(userIDs []int64, teamIDs []int64) (count int64, err error) {
 | 
			
		||||
	if count, err = x.In("uid", userIDs).In("team_id", teamIDs).Count(new(TeamUser)); err != nil {
 | 
			
		||||
func UsersInTeamsCount(userIDs []int64, teamIDs []int64) (int64, error) {
 | 
			
		||||
	var ids []int64
 | 
			
		||||
	if err := x.In("uid", userIDs).In("team_id", teamIDs).
 | 
			
		||||
		Table("team_user").
 | 
			
		||||
		Cols("uid").GroupBy("uid").Find(&ids); err != nil {
 | 
			
		||||
		return 0, err
 | 
			
		||||
	}
 | 
			
		||||
	return
 | 
			
		||||
	return int64(len(ids)), nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ___________                  __________
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -370,7 +370,7 @@ func TestUsersInTeamsCount(t *testing.T) {
 | 
			
		|||
		assert.Equal(t, expected, count)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	test([]int64{2}, []int64{1, 2, 3, 4}, 2)
 | 
			
		||||
	test([]int64{1, 2, 3, 4, 5}, []int64{2, 5}, 2)
 | 
			
		||||
	test([]int64{1, 2, 3, 4, 5}, []int64{2, 3, 5}, 3)
 | 
			
		||||
	test([]int64{2}, []int64{1, 2, 3, 4}, 1)          // only userid 2
 | 
			
		||||
	test([]int64{1, 2, 3, 4, 5}, []int64{2, 5}, 2)    // userid 2,4
 | 
			
		||||
	test([]int64{1, 2, 3, 4, 5}, []int64{2, 3, 5}, 3) // userid 2,4,5
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue