átlagos kiegészítséek jó sok

This commit is contained in:
Roo
2026-03-22 11:02:05 +00:00
parent f53e0b53df
commit 5d44339f21
249 changed files with 20922 additions and 2253 deletions

View File

@@ -2,11 +2,13 @@
import asyncio
import os
import logging
import json
from PIL import Image
from sqlalchemy import select, update
from app.db.session import AsyncSessionLocal
from app.models.document import Document
from app.models import Document
from app.models.identity import User
from app.models.marketplace.organization import Organization
from app.services.ai_service import AIService
from app.core.config import settings
@@ -95,6 +97,35 @@ class OCRRobot:
loop = asyncio.get_event_loop()
await loop.run_in_executor(None, cls._sync_resize_and_save, temp_path, final_path)
# TRUST MATCHING: Keresés a fleet.organizations táblában adószám alapján
verified_org_id = None
tax_number = ocr_result.get("tax_number")
if tax_number:
org_stmt = select(Organization.id).where(
Organization.tax_number == tax_number,
Organization.is_active == True,
Organization.is_deleted == False
)
org_result = await db.execute(org_stmt)
org = org_result.scalar_one_or_none()
if org:
verified_org_id = org
logger.info(f"✅ Trust Matching sikeres: {tax_number} → org_id {verified_org_id}")
else:
logger.info(f" Trust Matching: nincs egyezés adószámra: {tax_number}")
# OCR adatok frissítése verified_org_id-vel
if isinstance(ocr_result, dict):
ocr_result["verified_org_id"] = verified_org_id
else:
# Ha az ocr_result nem dict (pl. string), konvertáljuk
try:
ocr_dict = json.loads(ocr_result) if isinstance(ocr_result, str) else {}
ocr_dict["verified_org_id"] = verified_org_id
ocr_result = ocr_dict
except:
ocr_result = {"raw": ocr_result, "verified_org_id": verified_org_id}
# 4. LOGIKA: Adatbázis frissítés (Gold Data előkészítés)
doc.ocr_data = ocr_result
doc.status = "processed"