#!/usr/bin/env python3 """ Проверка документов в черновике """ import asyncio import asyncpg import json POSTGRES_HOST = "147.45.189.234" POSTGRES_PORT = 5432 POSTGRES_DB = "default_db" POSTGRES_USER = "gen_user" POSTGRES_PASSWORD = "2~~9_^kVsU?2\\S" CLAIM_ID = "bddb6815-8e17-4d54-a721-5e94382942c7" async def check_documents(): conn = await asyncpg.connect( host=POSTGRES_HOST, port=POSTGRES_PORT, database=POSTGRES_DB, user=POSTGRES_USER, password=POSTGRES_PASSWORD ) try: row = await conn.fetchrow(""" SELECT id, status_code, payload FROM clpr_claims WHERE id::text = $1 OR payload->>'claim_id' = $1 ORDER BY updated_at DESC LIMIT 1 """, CLAIM_ID) if not row: print(f"❌ Черновик {CLAIM_ID} не найден!") return payload = row['payload'] if isinstance(row['payload'], dict) else json.loads(row['payload']) print("📋 documents_meta:") for i, doc in enumerate(payload.get('documents_meta', [])): print(f" {i+1}. {doc.get('field_label', 'N/A')} - {doc.get('file_id', 'N/A')}") print("\n📋 documents_uploaded:") for i, doc in enumerate(payload.get('documents_uploaded', [])): print(f" {i+1}. {doc.get('type', 'N/A')} / {doc.get('id', 'N/A')} - {doc.get('file_id', 'N/A')}") print("\n📋 Все file_id в payload:") # Ищем все file_id в payload payload_str = json.dumps(payload, ensure_ascii=False) import re file_ids = re.findall(r'file_id["\']?\s*:\s*["\']([^"\']+)', payload_str) for file_id in set(file_ids): print(f" - {file_id}") finally: await conn.close() if __name__ == "__main__": asyncio.run(check_documents())