-- =============================================
-- ADICIONAR CAMPOS PARA MELHORIAS DO CATÁLOGO
-- Execute este script no SQL Editor do Supabase
-- =============================================

-- 1. Adicionar campos na tabela produtos
ALTER TABLE produtos
ADD COLUMN IF NOT EXISTS preco_promocional DECIMAL(10,2),
ADD COLUMN IF NOT EXISTS em_promocao BOOLEAN DEFAULT false,
ADD COLUMN IF NOT EXISTS novidade BOOLEAN DEFAULT false;

-- 2. Criar índices para melhor performance
CREATE INDEX IF NOT EXISTS idx_produtos_em_promocao ON produtos(em_promocao) WHERE em_promocao = true;
CREATE INDEX IF NOT EXISTS idx_produtos_novidade ON produtos(novidade) WHERE novidade = true;
CREATE INDEX IF NOT EXISTS idx_produtos_catalogo_flags ON produtos(visivel_catalogo, em_promocao, novidade) WHERE visivel_catalogo = true;

-- 3. Comentários para documentação
COMMENT ON COLUMN produtos.preco_promocional IS 'Preço promocional do produto (se em promoção)';
COMMENT ON COLUMN produtos.em_promocao IS 'Indica se o produto está em promoção';
COMMENT ON COLUMN produtos.novidade IS 'Indica se o produto é novidade';

-- 4. Verificar estrutura
SELECT 
  column_name,
  data_type,
  is_nullable,
  column_default
FROM information_schema.columns
WHERE table_name = 'produtos'
AND column_name IN ('preco_promocional', 'em_promocao', 'novidade')
ORDER BY ordinal_position;

-- 5. Estatísticas iniciais
SELECT 
  'Produtos por categoria' as info,
  COUNT(*) FILTER (WHERE em_promocao = true) as "Em Promoção",
  COUNT(*) FILTER (WHERE novidade = true) as "Novidades",
  COUNT(*) FILTER (WHERE visivel_catalogo = true) as "Visíveis no Catálogo",
  COUNT(*) as "Total"
FROM produtos;

-- =============================================
-- SUCESSO!
-- =============================================

/*
✅ CAMPOS ADICIONADOS COM SUCESSO!

Novos campos disponíveis:
- preco_promocional (DECIMAL): Preço em promoção
- em_promocao (BOOLEAN): Flag de promoção
- novidade (BOOLEAN): Flag de novidade

Próximos passos:
1. Atualizar o painel admin para gerenciar esses campos
2. Atualizar o site para exibir promoções e novidades
3. Adicionar badges visuais para "PROMOÇÃO" e "NOVO"
*/
