We use otrs for over 6 years now and it does fit for all our needs and works great, the upgrade to 3.1.1 (with in/outbound phonecall's

But over time the company has grown and we are not able to get the overview we need!
Situation:
We have a lot of queues and sub queues (60+)in OTRS. Some of these are based on departments for example: finance / finance::invoices / finance:: debtors / finance:: creditors or for example helpdesk::to-do / helpdesk::call helpdesk::appointment helpdesk::quotes.
The helpdesk sometimes get a question about one of the cases (email) that is owned by the finance department. Most of the time they are able of answering the question and need to update the case. But for them it’s just another call with another customer. They do not bother if it is a creditor or debtor queue.
Problem
all users do see all queues. And when they move any ticket the need to scroll along this very long list.
The same thing goes the other way finance sometimes needs to know something from support (how much work was it, is there special agreement with the customers, but they do not know and want to know exactly in whitch queue the mail is. They need too scroll along the long list of queues as well.
Desired solution
So I would like to define ‘queues’ and ‘sub queues’ per group when the finance:: queues look like one queue for the helpdesk agents and the helpdesk queues look like one queue for the finance department. When they move tickets they should be only able to move them in the desired group-queue and the other department should take over.
Possible solution
Other problem with permissions I can only remove permissions for a queue but then they can’t view anything inside the queue, when I enable read permissions it shows up in the list when moving a ticket. so this doesn't solve anything.
Help!
Any suggestions on how to create a situation that would give us the desired situation?