-- Migration 018: Adicionar autenticação para clientes (Portal do Cliente)
-- Permite que clientes (CRMCustomer) façam login e vejam seus próprios leads

-- Adicionar coluna de senha para clientes
ALTER TABLE crm_customers
ADD COLUMN IF NOT EXISTS password_hash VARCHAR(255),
ADD COLUMN IF NOT EXISTS has_portal_access BOOLEAN DEFAULT false,
ADD COLUMN IF NOT EXISTS portal_last_login TIMESTAMP,
ADD COLUMN IF NOT EXISTS portal_created_at TIMESTAMP DEFAULT NOW();

-- Criar índice para busca por email (login)
CREATE INDEX IF NOT EXISTS idx_crm_customers_email ON crm_customers(email);

-- Criar índice para clientes com acesso ao portal
CREATE INDEX IF NOT EXISTS idx_crm_customers_portal_access ON crm_customers(has_portal_access) WHERE has_portal_access = true;

-- Comentários
COMMENT ON COLUMN crm_customers.password_hash IS 'Hash bcrypt da senha para acesso ao portal do cliente';
COMMENT ON COLUMN crm_customers.has_portal_access IS 'Define se o cliente tem acesso ao portal';
COMMENT ON COLUMN crm_customers.portal_last_login IS 'Último login do cliente no portal';
COMMENT ON COLUMN crm_customers.portal_created_at IS 'Data de criação do acesso ao portal';
