Create a class that extends the AppModel like UserWrapper.
Then your three models should extend the UserWrapper instead of AppModel.
In the UserWrapper overwrite the appropriate methods to add the filtering you require.
You could use instanceof
to determine what type of user you're looking at from inside the UserWrapper class and add the required user_type conditions to the query. And then you call the parent method.
It may be tricky to get it right, but it should work and be transparent for the controller.