diff --git a/src/server/routes/atendimentos.ts b/src/server/routes/atendimentos.ts index 2b9028a..384e5a1 100644 --- a/src/server/routes/atendimentos.ts +++ b/src/server/routes/atendimentos.ts @@ -14,8 +14,28 @@ router.use(authMiddleware); // Função auxiliar para validar se uma string é um UUID válido function isValidUUID(uuid: string): boolean { - const regexUUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i; - return regexUUID.test(uuid); + if (!uuid) return false; + + try { + // Validação principal com regex para UUID padrão + const regexUUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i; + + // Se passar na validação principal, retorna verdadeiro + if (regexUUID.test(uuid)) return true; + + // Caso contrário, verifica se é um ID válido de alguma outra forma + // (como um ID numérico ou string que possa ser convertida em UUID) + console.log(`ID recebido em formato não-UUID padrão: ${uuid}`); + + // Se for "agendamentos", é uma rota especial que não precisa de validação UUID + if (uuid === "agendamentos") return true; + + // Se chegou aqui e não é um UUID válido, retorna falso + return false; + } catch (error) { + console.error("Erro ao validar UUID:", error); + return false; + } } // Rota para listar agendamentos