-- Alinha planos comerciais em produção (fonte única: tabelas planos / funcionalidades / plano_funcionalidades)
-- Uso: mysql -u nolapiscom_erp -p nolapiscom_erp < scripts/producao-alinhar-planos-db.sql

-- Colunas do site (se ainda não existirem)
SET @db = DATABASE();
SET @sql := IF((SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@db AND TABLE_NAME='planos' AND COLUMN_NAME='exibir_site')=0,
  'ALTER TABLE planos ADD COLUMN exibir_site TINYINT(1) NOT NULL DEFAULT 1 AFTER exibir_upgrade', 'SELECT 1');
PREPARE s FROM @sql; EXECUTE s; DEALLOCATE PREPARE s;
SET @sql := IF((SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@db AND TABLE_NAME='planos' AND COLUMN_NAME='label_destaque')=0,
  'ALTER TABLE planos ADD COLUMN label_destaque VARCHAR(80) NULL AFTER destaque', 'SELECT 1');
PREPARE s FROM @sql; EXECUTE s; DEALLOCATE PREPARE s;

-- trial legado → gratuito permanente (id 3 costuma ser o trial em produção)
UPDATE planos SET
  codigo = 'gratuito',
  nome = 'NoLapis Gratuito',
  trial_dias = NULL,
  gratuito = 1,
  valor = 0,
  cor_card = '#94A3B8',
  destaque = 0,
  label_destaque = NULL,
  exibir_site = 1,
  exibir_upgrade = 1,
  ordem = 1,
  limite_usuarios = 1,
  limite_empresas = 1,
  creditos_ia = 0,
  permite_usuario_adicional = 0,
  suporte_nivel = 'ticket',
  descricao_curta = 'Para conhecer o ERP e organizar o básico.',
  descricao_comercial = 'Cadastros, vendas simples e financeiro básico com um painel inicial. Sem emissão de NFS-e, DRE/DFC ou dashboards gerenciais.',
  descricao_card_upgrade = 'Comece sem pagar e sem prazo.'
WHERE codigo IN ('trial', 'gratuito');

UPDATE planos SET
  nome = 'NoLapis Start',
  valor = 49.90,
  ordem = 2,
  limite_usuarios = 1,
  limite_empresas = 1,
  creditos_ia = 0,
  valor_usuario_adicional = 19.90,
  permite_usuario_adicional = 1,
  destaque = 0,
  label_destaque = NULL,
  exibir_site = 1,
  cor_card = '#2563EB',
  oferecer_cobranca_anual = 1,
  valor_anual = 499.00,
  descricao_curta = 'Para MEI, autônomo e microempresa.',
  descricao_card_upgrade = 'Comece digital com emissão de NFS-e.',
  descricao_comercial = 'Tudo do Gratuito + emissão de NFS-e. Ideal para quem precisa faturar serviços.'
WHERE codigo = 'start';

UPDATE planos SET
  nome = 'NoLapis Gestão',
  valor = 99.90,
  ordem = 3,
  limite_usuarios = 3,
  limite_empresas = 1,
  creditos_ia = 50,
  valor_credito_ia = 2.90,
  valor_usuario_adicional = 19.90,
  permite_usuario_adicional = 1,
  destaque = 1,
  label_destaque = 'Mais escolhido',
  exibir_site = 1,
  cor_card = '#0D9488',
  oferecer_cobranca_anual = 1,
  valor_anual = 999.00,
  suporte_nivel = 'ticket',
  descricao_curta = 'Operação e financeiro para PME pequena.',
  descricao_card_upgrade = 'Gestão completa para crescer com segurança.',
  descricao_comercial = 'DRE/DFC, dashboards gerenciais, agenda, contratos, caixa fiscal e importação XML.'
WHERE codigo = 'gestao';

UPDATE planos SET
  nome = 'NoLapis Pro',
  valor = 179.90,
  ordem = 4,
  limite_usuarios = 8,
  limite_empresas = 3,
  creditos_ia = 150,
  valor_credito_ia = 2.50,
  valor_usuario_adicional = 19.90,
  permite_usuario_adicional = 1,
  destaque = 0,
  label_destaque = NULL,
  exibir_site = 1,
  cor_card = '#D97706',
  oferecer_cobranca_anual = 1,
  valor_anual = 1799.00,
  suporte_nivel = 'prioritario',
  descricao_curta = 'Equipe e operação mais complexa.',
  descricao_card_upgrade = 'Para PMEs em crescimento acelerado.',
  descricao_comercial = 'NF-e, kanban, conciliação, cartão/faturas e automações avançadas.'
WHERE codigo = 'pro';

UPDATE planos SET
  nome = 'NoLapis Consultivo',
  valor = 399.90,
  ordem = 5,
  limite_usuarios = 15,
  limite_empresas = 5,
  creditos_ia = 300,
  valor_credito_ia = 1.99,
  valor_usuario_adicional = 19.90,
  permite_usuario_adicional = 1,
  consultivo = 1,
  destaque = 0,
  label_destaque = NULL,
  exibir_site = 1,
  cor_card = '#6D28D9',
  oferecer_cobranca_anual = 1,
  valor_anual = 3999.00,
  suporte_nivel = 'consultivo',
  descricao_curta = 'ERP com acompanhamento próximo.',
  descricao_card_upgrade = 'Estratégia e operação com time ao seu lado.',
  descricao_comercial = 'Tudo do Pro + implantação assistida, treinamento e suporte consultivo.'
WHERE codigo = 'consultivo';

UPDATE planos SET status = 'INATIVO' WHERE codigo IS NULL AND status = 'ATIVO';

SELECT idplano, codigo, nome, valor, limite_usuarios, destaque, label_destaque, trial_dias, status
FROM planos WHERE codigo IS NOT NULL ORDER BY ordem;
