@rarandrade obrigada por compartilhar a dica.
Para eliminar as duplicidades, em Nov/2017 segui a sugestão do @netdados e alterei 2 linhas do arquivo src/Novosga/Service/AtendimentoService.php
para a ordenação dos dados ser Order by ID
no lugar de Order by numerosenha
.
Dias depois o problema tornou a ocorrer (ver registro no Fórum antigo neste link http://forum.novosga.org/discussion/comment/2568/#Comment_2568)
Pelo SQL abaixo identifiquei que entre 06/06/2017 e ontem tivemos 290 ocorrências de senhas duplicadas. Em geral acontecem nas unidades onde temos mais de um balcão de triagem. Nesta semana aconteceu 6 vezes.
Vou criar a função e a trigger no banco de dados conforme você registrou.
-- SQL para identificar as duplicidades de dias anteriores ao dia atual
-- Para analisar ocorrências do dia basta alterar para a tabela atendimentos
select date_format(a.dt_cheg,'%Y/%m/%d') ,a.unidade_id, a.num_senha,count(*)
from historico_atendimentos a
where a.atendimento_id is null -- não é senha redirecionada
group by date_format(a.dt_cheg,'%Y/%m/%d') ,a.unidade_id, a.num_senha having count(*)>1 -- 1 senha com mais de um registro
order by date_format(a.dt_cheg,'%Y/%m/%d') ,a.unidade_id, a.num_senha
Assim como você, aqui continuamos usando a versão 1.5.1 com banco de dados MySQL pois estamos aguardando o script de conversão dos dados para iniciar os testes com a versão 2.0. Temos um histórico de 207 mil senhas emitidas e a cada dia geramos mais mil.