-- Pagamentos vinculados às compras.
SET NAMES utf8mb4;

CREATE TABLE IF NOT EXISTS compra_pagamentos (
    id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
    id_conta INT NOT NULL,
    id_compra BIGINT UNSIGNED NOT NULL,
    id_forma INT NOT NULL,
    data DATE NOT NULL,
    valor DECIMAL(18,2) NOT NULL,
    parcelas INT NULL DEFAULT 1,
    valor_parcela DECIMAL(18,2) NULL,
    status CHAR(2) NOT NULL DEFAULT 'PA',
    dthr_registro TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (id),
    KEY idx_compra_pagamentos_conta (id_conta),
    KEY idx_compra_pagamentos_compra (id_compra),
    KEY idx_compra_pagamentos_forma (id_forma),
    CONSTRAINT fk_compra_pagamentos_conta FOREIGN KEY (id_conta) REFERENCES contas_usuarios (id),
    CONSTRAINT fk_compra_pagamentos_compra FOREIGN KEY (id_compra) REFERENCES compras (id) ON DELETE CASCADE,
    CONSTRAINT fk_compra_pagamentos_forma FOREIGN KEY (id_forma) REFERENCES formas_pagamento (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
