Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

📦 Plugin Controle de Insumos para GLPI

Plugin para GLPI 10+ desenvolvido para automatizar a gestão de insumos (consumíveis) associados a chamados. O plugin integra o formulário personalizado do plugin Fields com o módulo nativo de Estoque de Insumos do GLPI.


🚀 Funcionalidades

  • Acompanhamento Automático de Vínculo: Registra uma resposta (acompanhamento) no chamado listando os insumos selecionados na aba do Fields.
  • Histórico de Remoção: Detecta e registra em tempo real quando um insumo é desvinculado da aba do chamado.
  • Alerta de Estoque Zerado: Exibe uma notificação visual em tela no momento em que um insumo com saldo zerado é vinculado ao chamado.
  • Baixa Automatizada de Estoque: Realiza a baixa de 1 unidade no estoque nativo do GLPI para cada insumo vinculado assim que o chamado muda para o status Solucionado ou Fechado.
  • Proteção contra Baixas Duplicadas: Trava interna para impedir que um mesmo chamado execute a baixa mais de uma vez devido a múltiplos cliques ou atualizações de status.

📋 Pré-requisitos

  • GLPI: Versão 10.0 ou superior.
  • Plugin Fields: Instalado e configurado com a aba de insumos vinculada aos Chamados (Tickets).
  • PHP: Versão compatível com o GLPI em uso (8.1+).

⚙️ Configurações do Plugin Fields

1. Configuração do bloco:

No GLPI, acesse Configurações -> Campos adicionais. Na próxima janela, clique no botão "Adicionar" para criar um novo bloco com as seguintes configurações:

  • Etiqueta: Insumos
  • Tipo: Adicionar Aba
  • Tipo de Item Associado: Chamados
  • Ativo: sim

Clique no botão "Adicionar" para salvar o bloco.

2. Configuração do campo:

Clique no bloco recém criado e vá para a aba "Campos", depois clique em "Adicionar um novo campo" com as seguintes configurações:

  • Etiqueta: Insumo utilizado
  • Tipo: Modelos de Insumo
  • Múltiplos menus suspensos: Sim
  • Ativo: Sim
  • Somente leitura: Não
  • Campo obrigatório: Não

⚙️ Configurações e Instalação do Plugin Controle de Insumos

1. Estrutura de Arquivos

Copie a pasta do plugin para o diretório de plugins do GLPI: glpi/plugins/controleinsumos/

2. Mapeamento de Tabelas para Outros Ambientes

Para homologar ou implantar o plugin em um novo ambiente do GLPI, é necessário atualizar as variáveis de configuração no código para corresponderem ao nome da tabela e do container criados pelo plugin Fields.

Todas as alterações são feitas no arquivo principal do plugin (setup.php ou hook.php):

A. Nome da Tabela do Fields

Localize a variável $tabela_fields dentro das funções TicketUpdate e FieldsAdd e ajuste com o nome da tabela do seu banco de dados:

// Substitua pelo nome da tabela gerada pelo Fields no banco do novo ambiente
$tabela_fields = 'glpi_plugin_fields_ticketinsumos';

B. Nome da Classe Target no Hooks (se aplicável)

No método de inicialização de hooks (plugin_init_controleinsumos), verifique se o nome do container da classe corresponde à tabela do Fields:

// Exemplo: se a tabela for glpi_plugin_fields_ticketmeusinsumos, a classe será PluginFieldsTicketmeusinsumo
$target_class = 'PluginFieldsTicketinsumo'; 

$PLUGIN_HOOKS['item_add']['controleinsumos'][$target_class]    = 'plugin_controleinsumos_FieldsAdd';
$PLUGIN_HOOKS['item_update']['controleinsumos'][$target_class] = 'plugin_controleinsumos_FieldsAdd';

💡 Nota:

O plugin possui leitura dinâmica e varre automaticamente todas as colunas da tabela do Fields. Você só precisa garantir que o nome da tabela ($tabela_fields) e a classe target correspondam ao seu ambiente.

🔄 Ativação:

  • Acesse o GLPI no menu Configurar -> Plugins.

  • Localize o Controle de Insumos.

  • Clique em Instalar e, em seguida, em Ativar.

▶️ Como utilizar:

Após realizar todas as configurações, uma nova aba chamada "Insumos" ficará disponível em todos os chamados(tickets) do GLPI. Você deve acessar esta aba e selecionar na lista suspensa o(s) insumo(s) utilizado(s) para solucionar o chamado. Atenção: os insumos devem estar previamente cadastrados em Ativos->Insumos.

Após selecionar os insumos utilizados e clicar em "Salvar", uma resposta é adicionada ao chamado informando quais insumos foram vinculados. Caso um deles seja removido antes do chamado ser encerrado, uma resposta também é adicionada informando o item removido.

Ao finalizar o chamado, o estoque dos insumos é atualizado automaticamente pelo plugin. Ao acessar os insumos, é possível ver em qual chamado cada um dos itens foi vinculado. Atenção: atualmente, só é possível adicionar uma unidade de cada insumo por chamado, fazendo a baixa automática de uma unidade do estoque cadastrado.

📝 Licença:

Este projeto está sob a licença GPLv2+.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages