-- ============================================================
-- MIGRAÇÃO: Tabela de Comissões por Venda
-- Data: 2025-08
-- Sistema: Checkout Pro 2025
-- ============================================================

-- Tabela de comissões por venda
CREATE TABLE IF NOT EXISTS `vendas_comissoes` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `transacao_id` INT(11) NOT NULL,
    `produtor_id` INT(11) NOT NULL,
    `afiliado_id` INT(11) NULL DEFAULT NULL COMMENT 'NULL se não houver afiliado',
    `valor_produtor` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT 'Valor da comissão do produtor',
    `valor_afiliado` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT 'Valor da comissão do afiliado',
    `valor_plataforma` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT 'Valor da plataforma (futuro)',
    `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (`id`),
    UNIQUE KEY `unique_transacao_id` (`transacao_id`),
    KEY `idx_produtor_id` (`produtor_id`),
    KEY `idx_afiliado_id` (`afiliado_id`),
    KEY `idx_created_at` (`created_at`),
    CONSTRAINT `fk_comissoes_transacao` FOREIGN KEY (`transacao_id`) REFERENCES `transacoes` (`id`) ON DELETE CASCADE,
    CONSTRAINT `fk_comissoes_produtor` FOREIGN KEY (`produtor_id`) REFERENCES `usuarios` (`id`) ON DELETE CASCADE,
    CONSTRAINT `fk_comissoes_afiliado` FOREIGN KEY (`afiliado_id`) REFERENCES `usuarios` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- ============================================================
-- VERIFICAÇÃO
-- ============================================================
-- 
-- Após executar a migração, verifique se tudo está correto:
--
-- SELECT COUNT(*) as total_comissoes FROM vendas_comissoes;
-- SELECT * FROM vendas_comissoes LIMIT 5;
-- SELECT 
--     vc.id,
--     t.id as transacao_id,
--     u_produtor.nome as produtor,
--     u_afiliado.nome as afiliado,
--     vc.valor_produtor,
--     vc.valor_afiliado
-- FROM vendas_comissoes vc
-- INNER JOIN transacoes t ON t.id = vc.transacao_id
-- INNER JOIN usuarios u_produtor ON u_produtor.id = vc.produtor_id
-- LEFT JOIN usuarios u_afiliado ON u_afiliado.id = vc.afiliado_id
-- LIMIT 10;
--
-- ============================================================


