diff --git a/scripts/adb-rimo-import/ADBAddressHelper/address_helper.php b/scripts/adb-rimo-import/ADBAddressHelper/address_helper.php index 6329f8f32..8b4a1bbb9 100644 --- a/scripts/adb-rimo-import/ADBAddressHelper/address_helper.php +++ b/scripts/adb-rimo-import/ADBAddressHelper/address_helper.php @@ -107,8 +107,10 @@ class AddressHelper } $create_address_parts = false; + $update_freigabe = false; if ($this->netzgebiet) { $create_address_parts = $this->netzgebiet->getOption("create_address_parts"); + $update_freigabe = $this->netzgebiet->getOption("update_freigabe"); } @@ -323,7 +325,11 @@ class AddressHelper $hausnummer->rimo_fcp_name = $fcp_name; $hausnummer->save(); } - //$hausnummer->freigabe = $this->netzgebiet->default_freigabe; + if($update_freigabe && $hausnummer->freigabe != $this->netzgebiet->default_freigabe) { + $hausnummer->freigabe = $this->netzgebiet->default_freigabe; + $hausnummer->save(); + } + //echo ">>>>>>>>>>>>>>>>>>>\nupdating hausnummer:\n"; //print_r($hausnummer);exit; diff --git a/scripts/adb-rimo-import/rimo-import-test.php b/scripts/adb-rimo-import/rimo-import-test.php index 808c5db7b..3915fa6a5 100755 --- a/scripts/adb-rimo-import/rimo-import-test.php +++ b/scripts/adb-rimo-import/rimo-import-test.php @@ -122,8 +122,8 @@ foreach($netowners as $apiOwner) { $addressErrors = []; - if($cluster_rimo_id != "SDIRolloutRegion_97586867201_1711003389") { - // stiftingtal + if($cluster_rimo_id != "SDISalesCluster_29189625089_1679036889") { + // lieboch continue; } @@ -222,8 +222,10 @@ foreach($netowners as $apiOwner) { $last_unit_num = 0; $existing_units = []; + $existing_units_extref = []; foreach(\ADBWohneinheitModel::search(["hausnummer_id" => $hausnummer->id]) as $unit) { - $existing_units[$unit->extref] = $unit; + $existing_units[] = $unit; + $existing_units_extref[$unit->extref] = $unit; if($last_unit_num < $unit->num) { $last_unit_num++; } @@ -259,8 +261,8 @@ foreach($netowners as $apiOwner) { //echo "$home_rimo_id\n";continue; - if(array_key_exists($home_rimo_id, $existing_units)) { - $unit = $existing_units[$home_rimo_id]; + if(array_key_exists($home_rimo_id, $existing_units_extref)) { + $unit = $existing_units_extref[$home_rimo_id]; } else { // find free home without rimo_id $unit = \ADBWohneinheitModel::getFirst(["hausnummer_id" => $hausnummer->id, "extref" => null]); diff --git a/scripts/addressdb/recalculate_home_count.php b/scripts/addressdb/recalculate_home_count.php new file mode 100644 index 000000000..4d445a3a8 --- /dev/null +++ b/scripts/addressdb/recalculate_home_count.php @@ -0,0 +1,21 @@ +#!/usr/bin/php + $netzgebiet->id]); + if(!$home) continue; + + $home->save(); +}