Registrar foto e dados técnicos da análise capilar e, quando solicitado, usar a API de inteligência artificial para sugerir cor, densidade e modelo dentro de listas controladas, preservando o grau de falha informado no sistema.
MóduloAnálise Capilar Assistida
Status
Produção
ResponsávelJacy Cordeiro
Última revisão02/08/2026
01
OBJETIVO
Finalidade do módulo
Registrar foto e dados técnicos da análise capilar e, quando solicitado, usar a API de inteligência artificial para sugerir cor, densidade e modelo dentro de listas controladas, preservando o grau de falha informado no sistema.
POST de cadastro: cliente, data_analise, cor_detectada, densidade_detectada, grau_falha, sugestao_protese, observacoes e foto_atual.
Upload: foto PNG, JPG, JPEG ou WEBP.
Processamento: id da análise.
Busca de prótese: cliente.
06
SAÍDAS
Resultados produzidos
Arquivo salvo em sistema/painel/images/analises/.
Registro em analise_capilar.
JSON de sucesso ou erro no processamento.
Atualização de cor, densidade e sugestão após validação.
JSON com a prótese mais recente do cliente.
07
REGRAS DE NEGÓCIO
Comportamentos comprovados no código
Cliente e data da análise são obrigatórios.
Uma análise duplicada para o mesmo cliente e data é rejeitada.
A IA recebe a foto, mas o grau de falha é preservado a partir do valor já registrado.
Cor, densidade e modelo só são aceitos quando pertencem às listas definidas no endpoint.
A chave da API é lida da tabela config.
08
PONTOS DE ATENÇÃO
Cuidados antes de alterar
A função é de apoio visual; o código não deve ser documentado como diagnóstico médico.
Imagens são dados pessoais e exigem controle de acesso, retenção e autorização.
A pasta de imagens precisa existir, ser gravável e não deve permitir execução de PHP.
Erros da API devem retornar JSON sem expor a chave ou detalhes sensíveis.
09
TESTE MÍNIMO
Validação após manutenção
Salvar análise com foto válida.
Testar extensão inválida e pasta sem permissão em ambiente controlado.
Processar uma análise com chave válida e confirmar JSON.
Confirmar que respostas fora das listas são descartadas.
Verificar que o grau de falha não é substituído pela IA.
Buscar a prótese mais recente do cliente.
Fonte da documentação
Conteúdo conferido no snapshot agenda.barberbot(1).zip e no esquema barberbotcom_agenda(1).sql. Quando o código não comprova um comportamento, ele não é apresentado como regra.