# Módulo Gestor-Y - Documentação

## Visão Geral

O Gestor-Y é um módulo addon para o ERP GestorEasy que permite consultar, importar e gerenciar o catálogo de peças Yamaha através de web scraping automatizado.

## Funcionalidades

### 1. Pesquisa de Peças
- Pesquisa por código, nome, modelo ou ano
- Suporte a múltiplos métodos de scraping (cURL, Puppeteer, Selenium)
- Cache inteligente de resultados
- Integração com API oficial (quando disponível)

### 2. Importação para ERP
- Importação individual ou em lote
- Criação automática de produtos no ERP
- Mapeamento de campos personalizável
- Referência cruzada entre peças e produtos

### 3. Atualização Automática
- Agendamento de atualizações periódicas
- Configuração de frequência (horas)
- Execução via cron job
- Atualização incremental (apenas itens novos/alterados)

### 4. Sistema de Notificações
- Alertas sobre mudanças no site
- Notificações de erros
- Avisos sobre limites de requisições
- Notificações de atualização concluída

### 5. Logs e Relatórios
- Histórico completo de operações
- Filtros por tipo (pesquisa, importação, erro)
- Status de sucesso/erro
- Dados JSON para análise

## Instalação

### Requisitos

1. **Básico (cURL):**
   - PHP com extensão cURL
   - Extensão DOMDocument

2. **Puppeteer (JavaScript dinâmico):**
   - Node.js instalado
   - Puppeteer instalado: `npm install puppeteer`
   - Script em `scripts/puppeteer-scraper.js`

3. **Selenium (Alternativa):**
   - Python 3 instalado
   - Selenium: `pip install selenium`
   - ChromeDriver instalado
   - Script em `scripts/selenium-scraper.py`

### Configuração do Cron

Adicione ao crontab para atualizações automáticas:

```bash
# Executar a cada 6 horas
0 */6 * * * /usr/bin/php /caminho/para/scripts/gestory-cron.php >> /var/log/gestory-cron.log 2>&1
```

## Uso

### Pesquisa de Peças

1. Acesse `/gestor-y/pesquisa`
2. Digite o termo de pesquisa (código, nome, modelo ou ano)
3. Opcionalmente, filtre por modelo e ano
4. Clique em "Pesquisar"
5. Selecione peças para importar

### Importação

1. Após pesquisa, clique em "Importar" em uma peça
2. Ou selecione múltiplas peças e clique em "Importar Selecionadas"
3. As peças serão criadas como produtos no ERP

### Configuração

1. Acesse `/gestor-y/config`
2. Configure:
   - Atualização automática
   - Frequência de atualização
   - Método de scraping (cURL/Puppeteer/Selenium)
   - Limites de requisições
   - Modelos para importação automática
   - API oficial (quando disponível)

## Métodos de Scraping

### cURL (Padrão)
- Mais rápido
- Requer menos recursos
- Pode não funcionar com JavaScript pesado

### Puppeteer
- Suporta JavaScript dinâmico
- Requer Node.js
- Mais lento, mas mais confiável

### Selenium
- Alternativa ao Puppeteer
- Requer Python e ChromeDriver
- Suporta JavaScript dinâmico

## API Oficial (Futuro)

Quando a API oficial Yamaha estiver disponível:

1. Configure API Key e URL em `/gestor-y/config`
2. O sistema automaticamente usará a API em vez de scraping
3. Execute migração em `/gestor-y/api/migrar` para atualizar dados existentes

## Avisos Legais

⚠️ **IMPORTANTE:**
- Este módulo utiliza web scraping, que pode violar termos de uso
- Use de forma responsável e ética
- Respeite limites de requisições
- Prefira APIs oficiais quando disponíveis
- O uso é de responsabilidade do usuário

## Estrutura de Dados

### Tabelas

- `gestory_config` - Configurações do módulo
- `gestory_pecas` - Peças Yamaha importadas
- `gestory_logs` - Logs de operações
- `gestory_cache` - Cache de requisições
- `gestory_notificacoes` - Notificações do sistema

## Suporte

Para problemas ou dúvidas:
1. Verifique os logs em `/gestor-y/logs`
2. Consulte as notificações no dashboard
3. Verifique configurações em `/gestor-y/config`

## Changelog

### v1.0.0
- Implementação inicial
- Suporte a cURL, Puppeteer e Selenium
- Sistema de atualização automática
- Notificações e logs
- Preparação para API oficial

