Hi @ragnarvidevik, I have a lot of experience with user roles and permissions so I may be able to help. Please see this response I wrote to a different question on a similar topic:
What I would do is use the methods I described here and the conditional that will be checked is going to be something along the lines of run workflow only when user’s group’s priority > other group’s priority. Please let me know if that makes sense, I may be misunderstanding your permission’s system a little.
One piece of advice I have is that it may make sense to simplify your permissions system a little. If you are running complex searches in conditionals just t determine whether or not a workflow should be run, it could negatively impact your performance considerably.