Skip to main content

Rotas de Fissura

Criar fissura

A rota POST /fissure/add aceita os campos confiabilidade, categoria, id_image, url_fissura e categoria_atual. Ao receber os dados, o serviço instancia um novo objeto de fissura com esses atributos, persiste-o no banco de dados e retorna status 201 com"Fissura registrada com sucesso!". Em caso de falha, responde com status 500 e o detalhe da exceção.

Atualizar fissura

A rota PATCH /fissure/update busca o registro existente pelo campo id e valida sua existência, lançando “Fissura não encontrada!” se não existir. Em seguida, permite a atualização dos campos confiabilidade, categoria, id_image, url_fissura e categoria_atual, usando os valores fornecidos ou mantendo os anteriores. Após aplicar as alterações, confirma a transação e retorna status 200 com

{
"message": "Fissura atualizada com sucesso!",
"fissure": { … }
}.

Se qualquer erro ocorrer, efetua rollback e responde com status 500 e o erro.

Listar fissuras por prédio

A rota GET /fissures/predio/<id_predio> filtra as fissuras associadas ao prédio via relacionamento com Image.id_predio. Se não houver registros, lança “Não há fissuras nesse prédio” e retorna status 500. Caso existam fissuras, agrupa-as por categoria_atual nas chaves "termica" e "retracao", reúne as demais em "sem-classificacao" e calcula métricas — incluindo total geral, quantidade por categoria e distribuição por orientação. Retorna status 200 com

{
"message": "Fissuras encontradas com sucesso",
"fissures": { "termica": […], "retracao": […] },
"sem-classificacao": […],
"metricas": { … }
}