feat(raw-data): adicionar visualização de dados brutos do ATUACAPES
- Novo endpoint GET /api/v1/consultor/{id}/raw para buscar documento completo do ES
- Novo componente RawDataModal com formatação inteligente de campos
- Botão de acesso rápido no ConsultorCard (ícone ⋮)
- Melhorias de estilo no Header e ConsultorCard
This commit is contained in:
@@ -68,6 +68,33 @@ class ElasticsearchClient:
|
||||
except Exception as e:
|
||||
raise RuntimeError(f"Erro ao buscar consultor {id_pessoa}: {e}")
|
||||
|
||||
async def buscar_documento_completo(self, id_pessoa: int) -> Optional[dict]:
|
||||
try:
|
||||
query = {
|
||||
"query": {"term": {"id": id_pessoa}},
|
||||
"size": 1,
|
||||
}
|
||||
|
||||
response = await self.client.post(
|
||||
f"{self.url}/{self.index}/_search",
|
||||
json=query
|
||||
)
|
||||
response.raise_for_status()
|
||||
|
||||
data = response.json()
|
||||
hits = data.get("hits", {}).get("hits", [])
|
||||
if hits:
|
||||
hit = hits[0]
|
||||
return {
|
||||
"_index": hit.get("_index"),
|
||||
"_id": hit.get("_id"),
|
||||
"_score": hit.get("_score"),
|
||||
"_source": hit.get("_source"),
|
||||
}
|
||||
return None
|
||||
except Exception as e:
|
||||
raise RuntimeError(f"Erro ao buscar documento completo {id_pessoa}: {e}")
|
||||
|
||||
async def buscar_com_atuacoes(self, size: int = 1000, from_: int = 0) -> list:
|
||||
try:
|
||||
query = {
|
||||
|
||||
Reference in New Issue
Block a user