• Tutorial
  • [Tutorial] Limitar quantidade de senhas emitidas por serviço

Olá pessoal recentemente houve a necessidade implementar um limitador de senhas geradas por serviço,
como o SGA não tem essa funcionalidade, resolvi fazer essa implementação e caso alguém queira vou deixar aqui o link dos arquivos modificados.

Aqui estamos na versão 1.5.1, mas acredito que funcione também na versão atual do SGA

Download dos arquivos modificados

https://drive.google.com/open?id=17RXJrJvR03dNbPFHNLf6YEy_DL57HEV5

resultado final das modificações

alt text

mensagem de aviso

alt text

a primeira coisa a fazer é atualizar a tabela <code>uni_serv</code> do banco de dados do sga

Script de atualização da tabela

alter table `uni_serv`
add COLUMN `maxsenhas` SMALLINT(11) NOT NULL DEFAULT '0',
add COLUMN `contador` SMALLINT(11) NOT NULL DEFAULT '0',
add `datacontador` DATETIME NOT NULL DEFAULT NOW();

Agora vamos para as alterações, os arquivos estão separados por pastas, onde deve copiar esse arquivos e substitui los em seus devidos locais de acordo com o nome do mesmo

PASTA UNIDADE

substituir "modulos/sga/unidade/views/index.html.twig"
substituir "modulos/sga/unidade/public/js/script.js"
substituir "modulos/sga/unidade/UnidadeController.php"

PASTA SERVICE

substituir "src/Novosga/Service/AtendimentoService.php"

PASTA TRIAGEM

substituir "modules/sga/triagem/public/js/script.js"
substituir "modules/sga/triagem/views/index.html.twig"

PASTA MODEL

substituir "src\Novosga\Model\ServicoUnidade.php"
    um mês depois

    Amigo, poderia disponibilizar o link dos arquivos novamente?

    8 dias depois

    Amigo, poderia disponibilizar o link dos arquivos novamente?

      4 dias depois

      Bom dia pessoal, desculpe a falha no link
      Bom vamos lá, após essas modificações citadas acimas houve a necessidade de limitar o horário para emissão de senhas e obrigar a triagem digitar nome e numero de documento do usuário para assim tornar a senha emitida pessoal e intransferível(caso não queira esse comportamento é só retirar a validação, só não lembro qual arquivo era kkkk) e como era muito arquivos modificados resolvi postar o sga inteiro para download
      segue link https://1drv.ms/u/s!AnUqg7G4up-9zDijfESYjsWYKBS0

      como ficou agora, com a limitação de senhas e horario para emissão

      Instruçoes:

      Em todas tabelas que conter a coluna NUM_LOCAL, alterar tipo para NUM_LOCAL VARCHAR(50)
      esse modificação foi necessária pois temos locais alfanuméricos ex: A1, D2

      na Tabela uni_serv criar as colunas abaixo
      maxsenhas smallint 11 default 0
      contador smallint 11 default 0
      dataContador datetime default 2018-11-30 00:00:00
      hora_limite time default 23:59:00

        Janerson O MEU ESTA FUNCIONANDO BELEZA E TAMBEM JA COLOQUE NO INSTALADOR, O ARQUIVO QUANDO EU QUISER USAR SEM TA MEXENDO TODA HORA

        Vou ter que identificar os arquivos alterados, pois o meu código já sofreu várias 'intervenções'.

          Vera o meu aqui esta funcionando normalmente fiz ate o instalador ja com mysql incluido
          quando instalar ja fica tudo funcionando
          com todas as dependencias

          @Joceiltongomes2210 se entendi o arquivo novosga.rar que o @Janerson enviou contém o sistema completo.

          Se eu simplesmente instalar o .rar vou perder as diversas alterações que já fiz aqui como:
          - na tela perfil bloquear a edição do nome, só permitir que o usuário altere a senha
          - na tela configuração da unidade (a mesma que você melhorou) bloquear o botão 'reiniciar senhas'
          - nos relatórios, aumentar o limite de registros que originalmente é 1000
          - na tela de atendimento mostrar o nome do cliente ao passar o mouse sobre cada senha da fila
          - na tela de consulta da senha incluir o nome do cliente
          - retirar os gráficos 'Hoje' das estatísticas
          - criação da prioridade 'Urgente' que não aparece na tela de triagem, só na monitor, para permitir jogar qualquer senha para o início da fila
          - no relatório tempos médios por atendente permitir selecionar a unidade
          - nos relatórios "Atendimentos em todos os status" e "Atendimentos concluídos" mostrar nome e sobrenome dos atendentes
          (e outras)...

          Depois vou 'vasculhar' o arquivo RAR e analisar os aquivos com data mais recente, pois serão os que você alterou para esta ou outra melhoria.