-- Tabela de usuários para autenticação
CREATE TABLE IF NOT EXISTS users (
    id INT PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(50) UNIQUE NOT NULL,
    password_hash VARCHAR(255) NOT NULL,
    full_name VARCHAR(100),
    role VARCHAR(50),
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

-- Tabela de atendimentos (conversas/tickets)
CREATE TABLE IF NOT EXISTS atendimentos (
    id INT PRIMARY KEY AUTO_INCREMENT,
    numero_atendimento VARCHAR(50) UNIQUE,
    cliente_nome VARCHAR(150) NOT NULL,
    cliente_email VARCHAR(100),
    vendedor VARCHAR(100) NOT NULL,
    contexto ENUM('Comercial', 'Suporte', 'Financeiro') DEFAULT 'Comercial',
    causa VARCHAR(100),
    data_atendimento DATE NOT NULL,
    hora_inicio TIME,
    hora_fim TIME,
    duracao_minutos INT,
    nota_final DECIMAL(3,2),
    nota_cordialidade DECIMAL(3,2),
    nota_resolucao DECIMAL(3,2),
    nota_proatividade DECIMAL(3,2),
    nota_clareza DECIMAL(3,2),
    nota_tempo_resposta DECIMAL(3,2),
    sentimento VARCHAR(50),
    resumo_ia TEXT,
    pontos_positivos TEXT,
    pontos_negativos TEXT,
    tags VARCHAR(255),
    sla_cumprido BOOLEAN DEFAULT TRUE,
    criado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    atualizado_em TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    INDEX idx_vendedor (vendedor),
    INDEX idx_contexto (contexto),
    INDEX idx_data (data_atendimento),
    INDEX idx_causa (causa)
);

-- Dados de teste - Usuários
INSERT INTO users (username, password_hash, full_name, role) VALUES
('admin', '$2y$10$YourHashedPasswordHere1', 'Administrador', 'admin'),
('patrickmessa', '$2y$10$YourHashedPasswordHere2', 'Patrick Messa', 'user'),
('guilhermegiacomini', '$2y$10$YourHashedPasswordHere3', 'Guilherme Giacomini', 'user'),
('afonsosiena', '$2y$10$YourHashedPasswordHere4', 'Afonso Siena', 'director');
