diff --git a/scripts/addressdb/liezen/01-addressdb_update.php b/scripts/addressdb/liezen/01-addressdb_update.php index 682c0d5c1..2b8f9e633 100644 --- a/scripts/addressdb/liezen/01-addressdb_update.php +++ b/scripts/addressdb/liezen/01-addressdb_update.php @@ -107,7 +107,7 @@ while($csv = fgetcsv($input, 0, ";")) { if(!is_numeric($adrcd)) continue; if($adrcd == "7662908") continue; - if(!is_numeric($skz)) continue; + //if(!is_numeric($skz)) continue; //var_dump($netzgebiet);exit; $nutzung = trim($csv[10]); @@ -141,10 +141,23 @@ while($csv = fgetcsv($input, 0, ";")) { // check for GemeindeNetzgebiet checkGemeindeNetzgebiet($gemeinde, $netzgebiet); //continue; - $strasse = ADBStrasseModel::getFirst(['kennziffer' => $skz]); - if(!$strasse) { - die("Strasse ($skz, $strasse_name) nicht in addressdb gefunden\n"); + if($skz && is_numeric($skz)) { + $strasse = ADBStrasseModel::getFirst(['kennziffer' => $skz]); + } else { + // check for straße name + $strasse = ADBStrasseModel::getFirst(['gemeinde_id' => $gemeinde->id, 'name' => $strasse_name]); } + if(!$strasse) { + $strasse = ADBStrasseModel::create([ + 'gemeinde_id' => $gemeinde->id, + 'name' => $strasse_name + ]); + $strasse->save(); + } + if(!$strasse) { + die("Strasse ($skz, $strasse_name) nicht in addressdb gefunden und Fehler beim Anlegen\n"); + } + /*$ortschaft = ADBOrtschaftModel::getFirst(['kennziffer' => $ort_kz]); if(!$ortschaft) { die("Ortschaft ($ort_kz, $ort_name) nicht in addressdb gefunden\n");