-- Script para criar tabela de contratos
-- Execute este script no phpMyAdmin

CREATE TABLE IF NOT EXISTS contratos (
    id INT AUTO_INCREMENT PRIMARY KEY,
    candidato_id INT NOT NULL,
    edital_id INT NOT NULL,
    numero_contrato VARCHAR(50) NOT NULL UNIQUE COMMENT 'Número único do contrato',
    data_inicio DATE NOT NULL COMMENT 'Data de início do contrato',
    data_fim DATE NOT NULL COMMENT 'Data de término do contrato',
    salario DECIMAL(10,2) NOT NULL COMMENT 'Salário mensal',
    carga_horaria INT NOT NULL COMMENT 'Carga horária semanal',
    local_trabalho VARCHAR(255) NULL COMMENT 'Local de trabalho',
    observacoes TEXT NULL COMMENT 'Observações adicionais',
    status ENUM('ativo', 'encerrado', 'suspenso', 'cancelado') DEFAULT 'ativo',
    data_assinatura DATE NULL COMMENT 'Data de assinatura do contrato',
    arquivo_contrato VARCHAR(255) NULL COMMENT 'Caminho do arquivo PDF do contrato',
    criado_por INT NOT NULL COMMENT 'ID do admin que criou',
    criado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    atualizado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    
    -- Chaves estrangeiras
    FOREIGN KEY (candidato_id) REFERENCES candidatos(id) ON DELETE CASCADE,
    FOREIGN KEY (edital_id) REFERENCES editais(id) ON DELETE CASCADE,
    FOREIGN KEY (criado_por) REFERENCES administradores(id),
    
    -- Índices
    INDEX idx_candidato (candidato_id),
    INDEX idx_edital (edital_id),
    INDEX idx_status (status),
    INDEX idx_numero (numero_contrato),
    INDEX idx_datas (data_inicio, data_fim)
    
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
COMMENT='Tabela de contratos dos candidatos aprovados';

-- Mensagem de sucesso
SELECT 'Tabela contratos criada com sucesso!' as status;
