-- Criar tabela para gestores do sistema
CREATE TABLE IF NOT EXISTS gestores (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nome VARCHAR(100) NOT NULL,
    email VARCHAR(100) UNIQUE NOT NULL,
    usuario VARCHAR(50) UNIQUE NOT NULL,
    senha VARCHAR(255) NOT NULL,
    nivel_acesso ENUM('gestor', 'admin', 'supervisor') NOT NULL DEFAULT 'gestor',
    telefone VARCHAR(20),
    departamento VARCHAR(100),
    foto TEXT,
    status ENUM('ativo', 'inativo', 'bloqueado') NOT NULL DEFAULT 'ativo',
    ntfy_topic VARCHAR(100) NULL COMMENT 'Nome do tópico ntfy individual para notificações',
    data_criacao TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    data_ultimo_acesso TIMESTAMP NULL,
    criado_por INT,
    observacoes TEXT,
    INDEX idx_usuario (usuario),
    INDEX idx_email (email),
    INDEX idx_status (status),
    FOREIGN KEY (criado_por) REFERENCES gestores(id) ON DELETE SET NULL
);

-- Inserir gestor administrador padrão
INSERT INTO gestores (nome, email, usuario, senha, nivel_acesso, status) 
VALUES (
    'Administrador do Sistema',
    'admin@pinheiroempresas.com.br',
    'admin',
    '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', -- senha: admin123
    'admin',
    'ativo'
) ON DUPLICATE KEY UPDATE 
usuario = VALUES(usuario);

-- Inserir gestor padrão
INSERT INTO gestores (nome, email, usuario, senha, nivel_acesso, status) 
VALUES (
    'Gestor Padrão',
    'gestor@pinheiroempresas.com.br',
    'gestor',
    '$2y$10$TKh8H1.PfQx37YgCzwiKb.KjNyWgaHb9cbcoQgdIVFlYg7B77UdFm', -- senha: gestor123
    'gestor',
    'ativo'
) ON DUPLICATE KEY UPDATE 
usuario = VALUES(usuario); 