Importer update add support for meta data and multiple inserts for some entities like addresses and phones, updated other things

This commit is contained in:
Simon Pocrnjič
2025-10-09 22:28:48 +02:00
parent c8029c9eb0
commit 0598261cdc
27 changed files with 2517 additions and 375 deletions
+6 -1
View File
@@ -38,6 +38,7 @@ public function run(): void
'canonical_root' => 'address',
'label' => 'Person Addresses',
'fields' => ['address', 'city', 'postal_code', 'country', 'type_id', 'description'],
'supports_multiple' => true,
'field_aliases' => [
'ulica' => 'address',
'naslov' => 'address',
@@ -64,6 +65,7 @@ public function run(): void
'canonical_root' => 'phone',
'label' => 'Person Phones',
'fields' => ['nu', 'country_code', 'type_id', 'description'],
'supports_multiple' => true,
'field_aliases' => ['number' => 'nu'],
'aliases' => ['phone', 'person_phones'],
'rules' => [
@@ -76,6 +78,7 @@ public function run(): void
'canonical_root' => 'email',
'label' => 'Emails',
'fields' => ['value', 'is_primary', 'label'],
'supports_multiple' => true,
'field_aliases' => ['email' => 'value'],
'aliases' => ['email', 'emails'],
'rules' => [
@@ -87,8 +90,10 @@ public function run(): void
'key' => 'contracts',
'canonical_root' => 'contract',
'label' => 'Contracts',
'fields' => ['reference', 'start_date', 'end_date', 'description', 'type_id', 'client_case_id'],
// Include 'meta' so the UI can select contract.meta as a field target
'fields' => ['reference', 'start_date', 'end_date', 'description', 'type_id', 'client_case_id', 'meta'],
'aliases' => ['contract', 'contracts', 'contracs'],
'meta' => true,
'rules' => [
['pattern' => '/^(sklic|reference|ref)\b/i', 'field' => 'reference'],
['pattern' => '/^(od|from|start|zacetek|začetek)\b/i', 'field' => 'start_date'],