-- Configurações da Landing Page
CREATE TABLE IF NOT EXISTS landing_page_config (
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    chave VARCHAR(100) NOT NULL UNIQUE,
    valor TEXT NULL,
    tipo ENUM('text', 'json', 'html', 'image', 'boolean') NOT NULL DEFAULT 'text',
    categoria VARCHAR(50) NULL,
    descricao TEXT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    INDEX idx_categoria (categoria),
    INDEX idx_chave (chave)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Configurações da Landing Page';

-- Planos para Landing Page
CREATE TABLE IF NOT EXISTS landing_page_plans (
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    plan_id INT UNSIGNED NULL COMMENT 'ID do plano no sistema admin',
    nome VARCHAR(255) NOT NULL,
    descricao TEXT NULL,
    preco DECIMAL(10,2) NOT NULL DEFAULT 0.00,
    ciclo VARCHAR(20) NOT NULL DEFAULT 'mensal',
    destaque BOOLEAN NOT NULL DEFAULT FALSE,
    ativo BOOLEAN NOT NULL DEFAULT TRUE,
    features JSON NULL COMMENT 'Lista de features do plano',
    ordem INT UNSIGNED NOT NULL DEFAULT 0,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    INDEX idx_plan_id (plan_id),
    INDEX idx_destaque (destaque),
    INDEX idx_ativo (ativo),
    INDEX idx_ordem (ordem)
    -- FK removida: tabela 'plans' não existe nas migrations atuais
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Planos exibidos na Landing Page';

-- Contatos e Redes Sociais
CREATE TABLE IF NOT EXISTS landing_page_contacts (
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    tipo ENUM('email', 'telefone', 'whatsapp', 'facebook', 'instagram', 'linkedin', 'youtube', 'twitter') NOT NULL,
    valor VARCHAR(255) NOT NULL,
    label VARCHAR(100) NULL,
    icone VARCHAR(50) NULL,
    ordem INT UNSIGNED NOT NULL DEFAULT 0,
    ativo BOOLEAN NOT NULL DEFAULT TRUE,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    INDEX idx_tipo (tipo),
    INDEX idx_ativo (ativo),
    INDEX idx_ordem (ordem)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Contatos e redes sociais da Landing Page';

-- Inserir configurações padrão
INSERT INTO landing_page_config (chave, valor, tipo, categoria, descricao) VALUES
('titulo_principal', 'GESTOR EASY', 'text', 'hero', 'Título principal da landing page'),
('subtitulo_principal', 'ERP SaaS Completo para Gestão Empresarial', 'text', 'hero', 'Subtítulo principal'),
('descricao_principal', 'Sistema ERP moderno e completo para gestão de empresas. Prepare-se para 2026 com todas as funcionalidades fiscais e contábeis atualizadas.', 'text', 'hero', 'Descrição principal'),
('texto_botao_trial', 'Teste Grátis por 5 Dias', 'text', 'hero', 'Texto do botão de trial'),
('titulo_secao_modulos', 'Módulos Completos', 'text', 'modulos', 'Título da seção de módulos'),
('titulo_secao_planos', 'Planos e Preços', 'text', 'planos', 'Título da seção de planos'),
('titulo_secao_contato', 'Entre em Contato', 'text', 'contato', 'Título da seção de contato'),
('texto_rodape', '© 2025 GESTOR EASY. Todos os direitos reservados.', 'text', 'rodape', 'Texto do rodapé'),
('empresa_nome', 'J RACING COMERCIO E REPRESENTAÇÕES LTDA', 'text', 'empresa', 'Nome da empresa'),
('empresa_cnpj', '20.274.800/0001-08', 'text', 'empresa', 'CNPJ da empresa'),
('empresa_responsavel', 'JOELSON DE ARAUJO JUSTINO', 'text', 'empresa', 'Responsável técnico'),
('trial_dias', '5', 'text', 'trial', 'Número de dias de trial gratuito'),
('trial_plano_id', NULL, 'text', 'trial', 'ID do plano a ser atribuído no trial')
ON DUPLICATE KEY UPDATE descricao = VALUES(descricao);

-- Inserir contatos padrão
INSERT INTO landing_page_contacts (tipo, valor, label, icone, ordem, ativo) VALUES
('email', 'comercial@gestoreasy.com.br', 'E-mail Comercial', 'envelope', 1, TRUE),
('telefone', '21982336975', '(21) 98233-6975', 'phone', 2, TRUE),
('whatsapp', '5521982336975', 'WhatsApp', 'whatsapp', 3, TRUE)
ON DUPLICATE KEY UPDATE label = VALUES(label);

