Přeskočit na hlavní obsah

Abstraktní poskytovatel

Tato třída slouží jako základ pro všechny konkrétní implementace poskytovatelů parsování faktur. Poskytuje společnou funkcionalitu a definuje rozhraní, které musí implementovat všechny odvozené třídy.

Hlavní funkce

  • Společná inicializace: Načítá data z AiParsingRecord a připravuje je pro zpracování.
  • Správa unikátních polí: Automaticky načítá výchozí konfiguraci unikátních polí z nastavení systému.
  • Základní operace s entitami: Poskytuje metody pro vytváření a aktualizaci entit v EspoCRM.

Technické informace

Vlastnosti

  • receivedData: Pole obsahující nezpracovaná data z faktury.
  • parsedData: Instance ParsedData obsahující strukturovaná data.
  • entityType: Typ entity, pro kterou jsou data určena.

Metody

  • __construct:

  • Parametry:

  • AiParsingRecord $record: Entita obsahující data k parsování.

  • Config $config: Instance konfigurace EspoCRM.

  • Logika: Načte data z entity a připraví je pro zpracování. Pokud nejsou definována unikátní pole, načte je z konfigurace.

  • process: Abstraktní metoda, kterou musí implementovat všechny odvozené třídy. Obsahuje vlastní logiku parsování dat.

  • applyParsedData:

  • Funkce: Označí záznam jako dokončený a uloží jej do databáze.

  • Výjimky: Může vyvolat BadRequest nebo JsonException při chybě serializace dat.

  • getOrCreateEntity:

  • Funkce: Vrátí existující entitu nebo vytvoří novou.

  • Návratová hodnota: Instance entity daného typu.