From 6340d17db2a0db5ef66e4e4db827d63c674313d7 Mon Sep 17 00:00:00 2001 From: Frank Schubert Date: Mon, 8 Apr 2024 16:52:23 +0200 Subject: [PATCH] Added preorder import Stiftingtal --- application/Preorder/Preorder.php | 8 +- scripts/adb-rimo-import/rimo-import-test.php | 27 +- .../import-preorders-from-export-format.php | 427 ++++++++++++++++++ .../import/Dateneinspielung_Stiftingtal.csv | 59 +++ 4 files changed, 514 insertions(+), 7 deletions(-) create mode 100755 scripts/preorder/stiftingtal/import-preorders-from-export-format.php create mode 100644 scripts/preorder/stiftingtal/import/Dateneinspielung_Stiftingtal.csv diff --git a/application/Preorder/Preorder.php b/application/Preorder/Preorder.php index fe1b1f717..4ad3e60fd 100644 --- a/application/Preorder/Preorder.php +++ b/application/Preorder/Preorder.php @@ -60,13 +60,17 @@ class Preorder extends mfBaseModel { public function runStatusTrigger() { if(!$this->id) return true; - if($this->status_id == $this->_old_data->status_id) return true; + if(property_exists($this->_old_data, "status_id") && $this->status_id == $this->_old_data->status_id) return true; $this->log->debug(__METHOD__." running"); $new_status = $this->getProperty("status"); + if(!property_exists($this->_old_data, "status_id")) { + return true; + } + $old_status = new Preorderstatus($this->_old_data->status_id); - + if(!$new_status->id || !$old_status->id) return true; $this->log->debug(__METHOD__." status changed from '".($old_status ? $old_status->code : "")."' to '".$new_status->code."'"); diff --git a/scripts/adb-rimo-import/rimo-import-test.php b/scripts/adb-rimo-import/rimo-import-test.php index 62ee7e16e..808c5db7b 100755 --- a/scripts/adb-rimo-import/rimo-import-test.php +++ b/scripts/adb-rimo-import/rimo-import-test.php @@ -218,12 +218,7 @@ foreach($netowners as $apiOwner) { continue; } $hausnummer_found_count++; - - if(!property_exists($building->homes, "item") || !is_array($building->homes->item) | !count($building->homes->item)) { - continue; - } - $rimo_home_count = count($building->homes->item); $last_unit_num = 0; $existing_units = []; @@ -234,6 +229,28 @@ foreach($netowners as $apiOwner) { } } + $plannedTU = $building->plannedTU; + $to_create_count = $building->plannedTU - count($existing_units); + + if($plannedTU && $to_create_count > 0) { + for($i = 0; $i < $to_create_count; $i++) { + $unit = \ADBWohneinheitModel::create([ + "hausnummer_id" => $hausnummer->id, + "num" => ++$last_unit_num + ]); + if(!$unit->save()) { + die("Error saving new unit\n".print_r($unit, true)); + } + } + } + + + if(!property_exists($building->homes, "item") || !is_array($building->homes->item) | !count($building->homes->item)) { + continue; + } + + $rimo_home_count = count($building->homes->item); + foreach($building->homes->item as $home) { //print_r($home);//exit; $homes_count++; diff --git a/scripts/preorder/stiftingtal/import-preorders-from-export-format.php b/scripts/preorder/stiftingtal/import-preorders-from-export-format.php new file mode 100755 index 000000000..5d5cd8ec5 --- /dev/null +++ b/scripts/preorder/stiftingtal/import-preorders-from-export-format.php @@ -0,0 +1,427 @@ +#!/usr/bin/php + "single-dwelling", + "Einfahmilienhaus" => "single-dwelling", + "Mehrfamilienhaus" => "multi-dwelling", + "Mehrparteienhaus" => "apartment-building", + "Wohneinheit in Mehrparteienhaus" => "apartment", + "Wohnung" => "apartment", + "Geschäft" => "business", + "Gewerbebetrieb" => "business", +]; +$preorderTypes = [ + "Interessensbekundung" => "interest", + "Vorsorgeanschluss" => "provision", + "Vollanschluss" => "order", + "Nachbestellung" => "reorder", +]; + +$me = new User(1); + +$folder = __DIR__."/import/"; +$csvname = "Dateneinspielung_Stiftingtal.csv"; +$filename = $folder.$csvname; + +$adb = FronkDB::singleton(ADDRESSDB_DBHOST, ADDRESSDB_DBUSER, ADDRESSDB_DBPASS, ADDRESSDB_DBNAME); +$db = FronkDB::singleton(); + +$log = mfLoghandler::singleton(); + +$input = fopen($filename, "r"); + +$l = 0; +$c = 0; +$u = 0; +$w = 0; +while($csv = fgetcsv($input, 0)) { + $l++; + if($l == 1) continue; + + if(!trim($csv[0])) { + continue; + } + + //var_dump($csv);exit; + + $campaign_name = trim($csv[0]); + $netzgebiet_name = trim($csv[2]); + $bestelltyp = trim($csv[6]); + $anschlusstyp = trim($csv[8]); + $adrcd = trim($csv[9]); + $strasse_name = trim($csv[10]); + $hausnummer_name = trim($csv[11]); + $plz_name = trim($csv[12]); + $ort_name = trim($csv[13]); + $unit_string = trim($csv[14]); + $connection_count = trim($csv[17]); + $kunde_firma = trim($csv[18]); + $kunde_uid = trim($csv[19]); + $kunde_vorname = trim($csv[20]); + $kunde_nachname = trim($csv[21]); + $kunde_strasse = trim($csv[22]); + $kunde_tuer = ""; + $kunde_plz = trim($csv[23]); + $kunde_ort = trim($csv[24]); + $kunde_phone = trim($csv[25]); + $kunde_email = trim($csv[26]); + $partner_name = trim($csv[27]); + $tuer = 0; + + $m = []; + if(preg_match('@ /\s+(?:tür|top)\s+(\d+)$@i', $kunde_strasse, $m)) { + if($m[1]) $kunde_tuer = $m[1]; + } + + if($unit_string && preg_match('/(?:tür|top)\s+([0-9.,]+[a-z]*)/i', $unit_string, $m)) { + $tuer = $m[1]; + } + + if(!$connection_count) $connection_count = 1; + + if(!$bestelltyp || !$anschlusstyp || !$strasse_name || !$hausnummer_name || !$plz_name || !$ort_name || !$connection_count || (!$kunde_nachname && !$kunde_vorname && !$kunde_firma) || (!$kunde_phone && !$kunde_email)) { + echo "incomplete row $l\n"; + continue; + } + + // fehler + + + $strasse_name = $db->escape($strasse_name); + $hausnummer_name = $db->escape($hausnummer_name); + + $strasse_search = [$strasse_name]; + + if(strpos($strasse_name, ' ') !== false) $strasse_search[] = str_replace(' ', '-', $strasse_name); + if(strpos($strasse_name, '-') !== false) $strasse_search[] = str_replace('-', ' ', $strasse_name); + if(strpos($strasse_name, '.') !== false) $strasse_search[] = str_replace('.', '. ', $strasse_name); + if(strpos($strasse_name, '.') !== false) $strasse_search[] = str_replace('.', '.-', $strasse_name); + if(strpos($strasse_name, '. ') !== false) $strasse_search[] = str_replace('. ', '.', $strasse_name); + if(strpos($strasse_name, '. ') !== false) $strasse_search[] = str_replace('. ', '.-', $strasse_name); + if(strpos($strasse_name, '.') !== false) $strasse_search[] = str_replace('.-', '.', $strasse_name); + if(strpos($strasse_name, '.') !== false) $strasse_search[] = str_replace('.-', '. ', $strasse_name); + + foreach($strasse_search as $search) { + if(strpos($search, 'ß') !== false) $strasse_search[] = str_replace('ß', 'ss', $search); + if(strpos($search, 'ä') !== false) $strasse_search[] = str_replace('ä', 'ae', $search); + if(strpos($search, 'ö') !== false) $strasse_search[] = str_replace('ö', 'oe', $search); + if(strpos($search, 'ü') !== false) $strasse_search[] = str_replace('ü', 'ue', $search); + + if(strpos($search, 'ss') !== false) $strasse_search[] = str_replace('ss', 'ß', $search); + if(strpos($search, 'ae') !== false) $strasse_search[] = str_replace('ae', 'ä', $search); + if(strpos($search, 'oe') !== false) $strasse_search[] = str_replace('oe', 'ö', $search); + if(strpos($search, 'ue') !== false) $strasse_search[] = str_replace('ue', 'ü', $search); + } + + + $sql = "SELECT * FROM view_hausnummer WHERE netzgebiet_id = $netzgebiet_id AND strasse IN ('". implode("', '", $strasse_search)."') AND hausnummer='$hausnummer_name'"; + //echo "$sql\n"; + /*if(preg_match('/^Tobelbader/i',$strasse_name)) { + echo "$sql\n"; + }*/ + $res = $adb->query($sql); + + if(!$adb->num_rows($res)) { + echo "=== Adresse '$strasse_name $hausnummer_name' nicht gefunden!\n"; + continue; + } + + $data = $adb->fetch_object($res); + + $netzgebiet_id = $data->netzgebiet_id; + $hausnummer_id = $data->hausnummer_id; + + if(!$netzgebiet_id || !$hausnummer_id) { + echo "=== Netzgebiet oder Hausnummer leer\n"; + continue; + } + + $network = NetworkModel::getFirst(["adb_network_id" => $netzgebiet_id]); + if(!$network) { + echo "thetool Netzgebiet nicht gefunden (adb netzgebiet id $netzgebiet_id)\n"; + continue; + } + $campaign = PreordercampaignModel::getFirst(["network_id" => $network->id]); + if(!$campaign) { + echo "Kampagne für Network ".$network->id." ".$network->name." nicht gefunden\n"; + continue; + } + + //echo $campaign->name." (".$network->name.")\n"; + + //var_dump($data);exit; + $hausnummer = new ADBHausnummer($data->hausnummer_id); + + $wohneinheiten = ADBWohneinheitModel::search(["hausnummer_id" => $hausnummer->id]); + $unit_count = count($wohneinheiten); + if(!$unit_count) { + echo "Keine Wohneinheiten gefunden $strasse_name $hausnummer_name\n"; + continue; + } + + + $product_search = ['external_id' => $partner_id, + 'attributename' => "presales", + 'attributevalue' => ($preorderTypes[$bestelltyp] == "order") ? "activation" : $preorderTypes[$bestelltyp] + ]; + $product = ProductModel::getFirst($product_search); + + if(!$product) { + echo "Kein product gefunden: $bestelltyp\n"; + continue; + } + + $price = $product->price; + $price_setup = $product->price_setup; + + $pdata = [ + 'preordercampaign_id' => $campaign->id, + 'adb_hausnummer_id' => $hausnummer->id, + 'status_id' => 1, + 'connection_type' => $connectionTypes[$anschlusstyp], + 'connection_count' => 1, + 'product_id' => null, + 'setup_product_id' => $product->id, + 'type' => $preorderTypes[$bestelltyp], + 'price' => null, + 'price_setup' => $price_setup, + 'price_nne' => null, + 'price_nbe' => null, + 'billing_delay' => null, + 'billing_period' => null, + 'partner_id' => $partner_id, + 'accept_agb' => 1, + 'accept_dsgvo' => 1, + 'accept_marketing' => 1, + 'accept_withdrawal' => 1, + 'contact_type' => "owner", + 'company' => ($kunde_firma) ? $kunde_firma : null, + 'uid' => ($kunde_uid) ? $kunde_uid : null, + 'firstname' => $kunde_vorname, + 'lastname' => $kunde_nachname, + 'street' => $kunde_strasse, + 'housenumber' => null, + 'tuer' => null, + 'zip' => $kunde_plz, + 'city' => $kunde_ort, + 'phone' => $kunde_phone, + 'email' => $kunde_email, + 'submit_type' => "import", + 'create_by' => 1, + 'edit_by' => 1 + + ]; + + + + if($connection_count == 1) { + if($unit_count === 1) { + //continue; + $unit = $wohneinheiten[0]; + + // check if wohneinheit in existing preorder + if(PreorderModel::getFirst(["adb_wohneinheit_id" => $unit->id])) { + echo "=== 1 Wohneinheit schon vergeben $strasse_name $hausnummer_name (unit id ".$unit->id."\n"; + continue; + } + + if(!$unit->oaid) { + $unit->oaid = $unit->getNewOAID(); + $unit->save(); + } + + //create single preorder + $pdata['adb_wohneinheit_id'] = $unit->id; + + $preorder = PreorderModel::create($pdata); + $preorder->ucode = $preorder->createUcode(); + $preorder->oaid = $unit->oaid; + if(!$preorder->save()) { + var_dump($preorder);exit; + } + + + continue; + } + + + + if($unit_count > 1) { + // assume its single-dwelling with erroneously high door count + $unit_candidates = []; + $fixed_candidate = false; + + foreach($wohneinheiten as $unit) { + if(!$unit->tuer) continue; + if($unit->tuer > 0) { + $unit_candidates[$unit->tuer] = $unit; + if($tuer && $unit->tuer == $tuer) { + $fixed_candidate = $unit; + } + } + } + + if(!count($unit_candidates)) { + foreach($wohneinheiten as $unit) { + if(!$unit->zusatz) continue; + if(preg_match('/Top\s+\d+/i',$unit->zusatz)) { + $unit_candidates[$unit->zusatz] = $unit; + } + } + } + + if(!count($unit_candidates)) { + $unit_candidates = $wohneinheiten; + } + + if(count($unit_candidates)) { + if($fixed_candidate) { + $unit = $fixed_candidate; + } else { + ksort($unit_candidates, SORT_NUMERIC); + $unit = array_shift($unit_candidates); + } + + if(PreorderModel::getFirst(["adb_wohneinheit_id" => $unit->id])) { + echo "=== 2 Wohneinheit schon vergeben $strasse_name $hausnummer_name (unit id ".$unit->id.")\n"; + continue; + } + + if(!$unit->oaid) { + $unit->oaid = $unit->getNewOAID(); + $unit->save(); + } + + //create single preorder + $pdata['adb_wohneinheit_id'] = $unit->id; + + $preorder = PreorderModel::create($pdata); + $preorder->ucode = $preorder->createUcode(); + $preorder->oaid = $unit->oaid; + + //var_dump($preorder);exit; + if(!$preorder->save()) { + var_dump($preorder);exit; + } + + //echo "Wohneinheit saved\n"; + continue; + } + } + } elseif($connection_count > 1) { + if($unit_count < $connection_count) { + /*$mu = []; + $mu['preorder'] = $preorder; + $mu['unit_count'] = $unit_count; + $missing_units[] = $mu;*/ + echo "=== $strasse_name $hausnummer_name: Nicht genug Wohneinheiten ".count($wohneinheiten)." - need ".$connection_count."\n"; + continue; + } + //continue; + $available_units = []; + + + foreach($wohneinheiten as $unit) { + if(!PreorderModel::getFirst(["adb_wohneinheit_id" => $unit->id])) { + if($unit->tuer || preg_match('/^Top\s+\d+$/', $unit->zusatz)) { + $available_units[] = $unit; + } + } + } + + if($connection_count > count($available_units)) { + // this usually means this order was created already + /*$md = []; + $md["unit_count"] = $unit_count; + $md["door_count"] = count($available_units); + $md["preorder"] = $preorder; + $missing_doors[] = $md;*/ + echo "=== $strasse_name $hausnummer_name: Not enough units with tuer - units total: $unit_count; units with tuer: ".count($available_units)."; need: ".$connection_count."\n"; + /*foreach($available_units as $u) { + echo $u->oaid. " tuer ".$u->tuer."\n"; + }*/ + continue; + } + //continue; + + $topnumbers = []; + if(preg_match('/(?:tür|top)\s+\d/i', $unit_string)) { + $topnumbers_string = preg_replace('/(tür|top)/i', "", $unit_string); + $topnumbers_string = preg_replace('/\s*u\.?/i', ",", $topnumbers_string); + + foreach(explode(",", $topnumbers_string) as $topnumraw) { + $topnumbers[] = intval($topnumraw); + } + + if(count($topnumbers) < $connection_count) { + echo "=== $strasse_name $hausnummer_name: Nicht genug Topnummern für $connection_count Anschlüsse\n"; + continue; + } + } + + //continue; + + // create new Preorders with available units + // then set original Preorder deleted + echo "Creating $connection_count new preorders\n"; + for($i = 0; $i < $connection_count; $i++) { + $unit_top_number = false; + if(count($topnumbers)) { + //echo "$strasse_name $hausnummer_name: Looking for Unit Top $topnumbers[$i]\n"; + + foreach($available_units as $topnumUnit) { + if($topnumUnit->tuer == $topnumbers[$i]) { + $unit = $topnumUnit; + } + } + if(!$unit) { + echo "=== $strasse_name $hausnummer_name: Unit mit Topnummer ".$topnumbers[$i]." nicht gefunden.\n"; + continue; + } + //var_dump($unit); + $unit_top_number = $topnumbers[$i]; + } else { + $unit = $available_units[$i]; + } + //continue; + + + if(PreorderModel::getFirst(["adb_wohneinheit_id" => $unit->id])) { + echo "=== 3 Wohneinheit schon vergeben $strasse_name $hausnummer_name (unit id ".$unit->id."\n"; + continue; + } + + $pdata['adb_wohneinheit_id'] = $unit->id; + + $preorder = PreorderModel::create($pdata); + $preorder->ucode = $preorder->createUcode(); + $preorder->oaid = $unit->oaid; + + //var_dump($preorder);exit; + if(!$preorder->save()) { + var_dump($preorder);exit; + } + + + } + continue; + } + + echo "=== Not processed: $strasse_name $hausnummer_name -> need $connection_count but have $unit_count units \n"; + + + +} \ No newline at end of file diff --git a/scripts/preorder/stiftingtal/import/Dateneinspielung_Stiftingtal.csv b/scripts/preorder/stiftingtal/import/Dateneinspielung_Stiftingtal.csv new file mode 100644 index 000000000..df4c9bf9f --- /dev/null +++ b/scripts/preorder/stiftingtal/import/Dateneinspielung_Stiftingtal.csv @@ -0,0 +1,59 @@ +Kampagne,Netzgebiet ID,Netzgebiet,Extref,Bestellcode,OAID,Bestelltyp,Status,Anschlusstyp,GWR Adresscode,Anschluss Strasse,Anschluss Hausnummer,Anschluss PLZ,Anschluss Ort,Anschluss Wohneinheit,GPS Breite,GPS Länge,Anzahl Anschlüsse,Kunde Firma,Kunde UID,Kunde Vorname,Kunde Nachname,Kunde Strasse,Kunde PLZ,Kunde Ort,Kunde Telefon,Kunde Email,Partner,Addon Lehrverrohrung Grundstück,Addon Hausverkabelung,BEP festgelegt,Starterpaket erhalten,Erstellt,Letzte Bearbeitung +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Eckmichlstraße ,11,8010,Graz,,,,1,,,Josef ,Wünscher,Eckmichlstraße 11,8010,Graz,0676/4213308,sepp.wuenscher@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vorsorgeanschluss,,Einfahmilienhaus,,Eckmichlstraße ,20,8010,Graz,,,,1,,,Dragan,Danicic,Eckmichlstraße 20,8010,Graz,0660/1617237,,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Eckmichlstraße ,23,8010,Graz,,,,1,,,Franz,Rieger,Eckmichlstraße 23,8010,Graz,0699/10323295,f.rieger1@gmx.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Eckmichlstraße ,9,8010,Graz,,,,1,,,Andrea,Dillon,Eckmichlstraße 9,8010,Graz,0681/20820604,akdillon@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Eckmichlstraße,21,8010,Graz,,,,1,,,Lundrim,Arifi ,Eckmichlstraße 21,8010,Graz,0676/6970079,lundrim.arifi@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,1,8044,Graz,,,,1,,,Josef,Mader ,Hauersteig 1,8044,Graz,0664/5755326,jum.mader.graz@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,11,8044,Graz,,,,1,,,Angela,Kreil,Hauersteig 11,8044,Graz,0664/4607648,angela.kreil@gmx.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig,11a,8044,Graz,,,,1,,,Charlotte,Yanik-Schaffer,Hauersteig 11a,8044,Graz,0664/8934143,charlotte.yanik-schaffer@gmx.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,13,8044,Graz,,,,1,,,Anita,Mekis,Hauersteig 13,8044,Graz,0664/5427659,petermekis@icloud.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,15,8044,Graz,,,,1,,,Mustafa,Yanik,Hauersteig 15,8044,Graz,0664/3917686,mustiyanik@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,17,8044,Graz,,,,1,,,Karin,Grabner,Hauersteig 17,8044,Graz,0664/3983434,karingrabner10@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,21,8044,Graz,,,,1,,,Brigitte,Wanz,Hauersteig 21,8044,Graz,0664/5322331,b.wanz@gmx.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,23,8044,Graz,,,,1,,,Ernst,Walser,Hauersteig 23,8044,Graz,0664/4608433,office@haustechnikwalser.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig,23b,8044,Graz,,,,1,,,Ernst,Walser,Hauersteig 23b,8044,Graz,0664/4608433,office@haustechnikwalser.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,55,8044,Graz,,,,1,,,Gerhard,Walzl,Hauersteig 55,8044,Graz,0664/73537509,gerhardistcool44@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Hauersteig ,9,8044,Graz,,,,1,,,Ingo,Schaffer,Hauersteig 9,8044,Graz,0664/4608858,schaffer.ingo@me.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Lineckerweg ,10,8044,Graz,,,,1,,,Reinhard,Brandner,Lineckerweg 10,8044,Graz,0664/1601455,reinhardbrandner3@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Lineckerweg ,GST 1058,8044,Graz,,,,1,,,Evelyn,Vollstuber,Lineckerweg GST 1058,8044,Graz,0664/6483375,evipendl@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vorsorgeanschluss,,Einfahmilienhaus,,Lineckerweg ,38,8044,Graz,,,,1,,,Gerhard,Nierhaus,Lineckerweg 38,8044,Graz,0699/11002490,,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Lineckerweg ,50,8044,Graz,,,,1,,,Anna,Mautner,Lineckerweg 50,8044,Graz,0664/4052583,annamautner@hotmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Lineckerweg ,51,8044,Graz,,,,1,,,Erika,Kern,Lineckerweg 51,8044,Graz,0650/3120769,kern.erika@gmx.net,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Lineckerweg ,53,8044,Graz,,,,1,,,Willi,Schneider,Lineckerweg 53,8044,Graz,0172/8408282,info@peoplepicture.de,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Gewerbebetrieb,,Lineckerweg ,54,8044,Graz,,,,1,Einhunderelf GmbH,,Stefan,Haberler,Lineckerweg 54,8044,Graz,0664/1065858,office@einhundertelf.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vorsorgeanschluss,,Einfahmilienhaus,,Mittergrabenweg ,87,8010,Graz,,,,1,,,Jürgen,Stephani,Mittergrabenweg 87,8010,Graz,0664/8770280,,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Gewerbebetrieb,,Rohbachhöhe ,20,8010,Graz,,,,1,,,Erika,Sattler,Rohbachhöhe 20,8010,Graz,03163/91021,office@heurigenschenke-sattler.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Gewerbebetrieb,,Rohrbacherhöhe ,23,8010,Graz,,,,1,Gassner Kalbfleisch GmbH,,Franz,Gasser,Rohrbacherhöhe 23,8010,Graz,0664/1101520,fg@gassnerkalbfleisch.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Rohrbachhöhe ,10,8010,Graz,,,,1,,,Frederike,Lex,Rohrbachhöhe 10,8010,Graz,0664/3949066,friderike.lex@gmx.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Rohrbachhöhe ,11,8010,Graz,,,,1,,,Wolfgang,Hasenhütl,Rohrbachhöhe 11,8010,Graz,0676/3335665,aon.913791312.h4senh@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Rohrbachhöhe ,12,8010,Graz,,,,1,,,David,Leonhartsberger,Rohrbachhöhe 12,8010,Graz,0660/1221144,leonhartsberger.d@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Rohrbachhöhe ,13,8010,Graz,,,,1,,,Werner,Unger,Rohrbachhöhe 13,8010,Graz,0664/1090530,werner.unger@icloud.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vorsorgeanschluss,,Einfahmilienhaus,,Rohrbachhöhe,8a,8010,Graz,,,,1,,,,,Rohrbachhöhe 8a,8010,Graz,,,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Rohrbachhöhe ,9,8010,Graz,,,,1,,,Anton,Neubauer,Rohrbachhöhe 9,8010,Graz,0664/4266252,anton.neubauer58@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,11,8044,Kainbach bei Graz,,,,1,,,Moritz,Rieger,Schaftal 11,8044,Kainbach bei Graz,0676/4881864,moritz.rieger@me.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,12,8044,Kainbach bei Graz,,,,1,,,Daniel,Lackner,Schaftal 12,8044,Kainbach bei Graz,0664/1494439,daniel.lackner93@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,13,8044,Kainbach bei Graz,,,,1,,,Christoph,Stipacek,Schaftal 13,8044,Kainbach bei Graz,0650/2106839,christoph.stipcek@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,16,8044,Kainbach bei Graz,,,,1,,,Sonja,Zbiba ,Schaftal 16,8044,Kainbach bei Graz,0664/5602574,Zbiba.sonja@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Gewerbebetrieb,,Schaftal ,22,8044,Kainbach bei Graz,,,,1,,,Renate,Lackner,Schaftal 22,8044,Kainbach bei Graz,0316/391104,office@gasthaus-griesbauer.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,23,8044,Kainbach bei Graz,,,,1,,,Dieter,Kari,Schaftal 23,8044,Kainbach bei Graz,0664/1162025,dieter.kari@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,25,8044,Kainbach bei Graz,,,,1,,,Michael,Jung,Schaftal 25,8044,Kainbach bei Graz,0664/1614846,michael.jung@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,27,8044,Kainbach bei Graz,,,,1,,,Christian,Brugger ,Schaftal 27,8044,Kainbach bei Graz,0676/5446094,chris.brugger@posteo.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,29,8044,Kainbach bei Graz,,,,1,,,Peter,Fuchs,Schaftal 29,8044,Kainbach bei Graz,0664/1610198,fuchsi@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,3,8044,Kainbach bei Graz,,,,1,,,Herbert,Potocnik,Schaftal 3,8044,Kainbach bei Graz,0664/8500043,herbert.potocnik@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,31,8044,Kainbach bei Graz,,,,1,,,Franz,Fuchs,Schaftal 31,8044,Kainbach bei Graz,0676/4265043,fuchs.franz1960@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,35,8044,Kainbach bei Graz,,,,1,,,Maria,Pint,Schaftal 35,8044,Kainbach bei Graz,0664/5094175,maria.pint@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Gewerbebetrieb,,Schaftal ,39,8044,Kainbach bei Graz,,,,1,MOKINO Filmproduktion,,Ursula,Berger,Schaftal 39,8044,Kainbach bei Graz,0664/5467410,u.berger@mokino.eu,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,41,8044,Kainbach bei Graz,,,,1,,,Matthias,Steiner,Schaftal 41,8044,Kainbach bei Graz,0676/5356073,mat.steiner@mailbox.org,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,43,8044,Kainbach bei Graz,,,,1,,,Sylvia,Koch,Schaftal 43,8044,Kainbach bei Graz,0680/3035110,silvia.m.koch@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,45,8044,Kainbach bei Graz,,,,1,,,Monika,Maurer,Schaftal 45,8044,Kainbach bei Graz,0664/5129287,kurt.maurer@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,49,8044,Kainbach bei Graz,,,,1,,,Josef,Prosser,Schaftal 49,8044,Kainbach bei Graz,0680/5048369,romplhelga@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,56,8044,Kainbach bei Graz,,,,1,,,Hans,Pammer,Schaftal 56,8044,Kainbach bei Graz,0676/6483530,hans-pommer@gmx.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,59,8044,Kainbach bei Graz,,,,1,,,Tanja,Wimmer,Schaftal 59,8044,Kainbach bei Graz,0664/1632566,tanja.wimmer83@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Gewerbebetrieb,,Schaftal ,8,8044,Kainbach bei Graz,,,,1,Konditorei im Gasthaus Haiden Erwin,,Birgit,Neubauer,Schaftal 8,8044,Kainbach bei Graz,0664/3852476,birgit_neubauer@hotmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftal ,9,8044,Kainbach bei Graz,,,,1,,,Elfriede,Liebmann,Schaftal 9,8044,Kainbach bei Graz,0664/88615527,walter.liebmann@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Gewerbebetrieb,,Schaftalstraße,20a,8010,Graz,,,,1,Zsifkovits Gerald und Ralph OG,,Gerald,Zsifkovits,Schaftalstraße 20a,8010,Graz,0664/2301325,gerald.zsifkovits@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftalstraße ,26,8010,Graz,,,,1,,,Erich,Thanner,Schaftalstraße 26,8010,Graz,0670/2044725,thannererich@gmx.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftalstraße ,35,8010,Graz,,,,1,,,Gerd,Hauser,Schaftalstraße 35,8010,Graz,0664/1035435,rlb1@aon.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Gewerbebetrieb,,Schaftalstraße ,39,8010,Graz,,,,1,Frölich und Partner Kg,,Klaus,Fröhlich,Schaftalstraße 39,8010,Graz,0664/3461616,office.froelich-partner.at,Energie Steiermark Technik GmbH,0,0,0,0,, +Stifting,,Stifting,,,,Vollanschluss,,Einfahmilienhaus,,Schaftalstraße ,43,8010,Graz,,,,1,,,Karl,Friedl,Schaftalstraße 43,8010,Graz,0680/4442567,karlfriedl1.1@gmail.com,Energie Steiermark Technik GmbH,0,0,0,0,,