У меня есть пользователь-администратор со следующими пятью ролями [ROLE_ADMIN, ROLESWITCHUSER, ROLE_DOCTOR, ROLE_USER]
и некоторые обычные пользователи только с одной ролью, т. е. ROLE_USER, теперь мой вопрос состоит в том, как я могу получить только обычных пользователей из моей таблицы secuser, которые я пробовал с некоторыми итерациями
def roleId=SecRole.findByAuthority("ROLE_USER")
userInstance = SecUserSecRole.findAllBySecRole(roleId).secUser
здесь я получил userInstance со всеми пользователями вместе с adminuser, теперь я попытался исключить adminuser из своего userInstance и сохранил его в selectUserMap, но иногда получаю результат, а иногда и выдаю его всем пользователям. Я думаю, что функция sort () не сортирует роли userinstansce, пожалуйста, помогите мне
for(int i=0;i<userInstance.size();i++)
{
println( "am in loop "+i+userInstance[i].username+"roles"+userInstance[i].getAuthorities())
def x=(userInstance[i].getAuthorities().sort())
for(a in x )
{ //println(a.getAuthority())
if((a.getAuthority() == use))
abc=true
else
abc=false
if((a.getAuthority() == adm))
{
println("break")
break;
}
abc=(abc && (a.getAuthority() == use))
if(abc)
{
println("am in true if ")
selectUserMap.add(j,userInstance[i])
j=j+1
}
else
{
println("am in else")
}
}
}
println("==============all users "+selectUserMap)