- Editado
Tenho esse código que peguei aqui no fórum mesmo, uso ele na versão 2.0.8 para intercalar as senhas, porém ele só funciona no usuário admin, nos usuários comuns não funciona, o que acontece é que no usuário admin ele consegue realmente funcionar a lógica do código e intercalar de acordo com tempo x prioridade e peso, mas no usuário comum ele simplesmente joga todas as prioridades para o fim e as senhas convencionais para o início. Esse é o código:
<?php
return array_merge($ordering, [
// Prioridade X Tempo
[
'exp' => '((prioridade.peso + 1) * (CURRENT_TIMESTAMP() - atendimento.dataChegada))',
'order' => 'DESC',
],
// priority
[
'exp' => 'prioridade.peso',
'order' => 'DESC',
],
// peso servico x unidade
[
'exp' => 'servicoUnidade.peso',
'order' => 'DESC',
],
// dataChegada
[
'exp' => 'atendimento.dataChegada',
'order' => 'ASC',
]
]);