feat: US09 - Implement PATCH /user/:id/children endpoint
US09 – Editar Informações dos Filhos
📌 Descrição
Implementação completa do endpoint PATCH /user/:id/children que permite aos responsáveis editar, adicionar e remover informações dos seus filhos de forma segura.
✨ Funcionalidades Implementadas
🔐 Endpoint Protegido
-
PATCH /user/:id/children- Protegido com autenticação JWT - Apenas o responsável pode atualizar seus próprios filhos
- Retorna dados formatados em JSON padronizado
➕ Operações Suportadas
-
Criar novos filhos - Enviar sem
child_id -
Atualizar existentes - Informar
child_iddo filho - Remover filhos - Filhos não inclusos na lista serão deletados
- Operações combinadas - Criar, atualizar e remover na mesma chamada
✔ ️ Validações Rigorosas
-
✅ Nome obrigatório (não vazio, não apenas espaços) -
✅ Data de nascimento em formato YYYY-MM-DD -
✅ Rejeita datas no futuro -
✅ Valida existência do usuário (responsável) -
✅ Garante relação userId → Child
💾 Persistência Segura
- Usa Prisma ORM com PostgreSQL
- Operações transacionais para consistência
- Mantém integridade referencial (parent_id)
- Deletamentos em cascata segura
📊 Respostas HTTP
// 200 OK - Sucesso
[
{
"child_id": "uuid-123",
"name": "João Silva",
"birth_date": "2020-05-15",
"age_group": "5-7"
}
]
// 400 Bad Request - Dados inválidos
{
"message": "Birth date cannot be in the future",
"statusCode": 400
}
// 404 Not Found - Usuário não existe
{
"message": "User not found",
"statusCode": 404
}
// 401 Unauthorized - Sem autenticação
{
"message": "Unauthorized",
"statusCode": 401
}