FIX: addressdb/preorder API now uses gemeinde as City

This commit is contained in:
Frank Schubert
2022-09-21 11:08:04 +02:00
parent e706de5c82
commit bd2e88c254
5 changed files with 181 additions and 16 deletions

View File

@@ -136,6 +136,13 @@ class ADBGemeindeModel {
if(array_key_exists("name", $filter)) {
$name = FronkDB::singleton()->escape($filter['name']);
if($name) {
$where .= " AND Gemeinde.`name` = '$name'";
}
}
if(array_key_exists("name%", $filter)) {
$name = FronkDB::singleton()->escape($filter['name%']);
if($name) {
$where .= " AND Gemeinde.`name` like '%$name%'";
}

View File

@@ -36,7 +36,7 @@ class AddressdbApicontroller extends mfBaseApicontroller {
return mfResponse::BadRequest(['message' => "Searchstring cannot be empty!"]);
}
$results = ADBOrtschaftModel::search(['name%' => $search]);
$results = ADBGemeindeModel::search(['name%' => $search]);
$cities = [];
@@ -103,7 +103,7 @@ class AddressdbApicontroller extends mfBaseApicontroller {
$where .= " AND plz like '%$search_zip%'";
}
if($search_city) {
$where .= " AND ortschaft like '%$search_city%'";
$where .= " AND gemeinde like '%$search_city%'";
}
if($search_street) {
$where .= " AND strasse like '%$search_street%'";
@@ -113,7 +113,7 @@ class AddressdbApicontroller extends mfBaseApicontroller {
}
//$res = $this->db()->select("view_wohneinheit_plz", "*", $where);
$sql = "SELECT * FROM view_wohneinheit WHERE $where ORDER BY plz, ortschaft, strasse, LENGTH(hausnummer), hausnummer, block, stiege, stock, LENGTH(tuer), tuer";
$sql = "SELECT * FROM view_wohneinheit WHERE $where ORDER BY plz, gemeinde, ortschaft, strasse, LENGTH(hausnummer), hausnummer, block, stiege, stock, LENGTH(tuer), tuer";
//echo $sql;exit;
$res = $this->db()->query($sql);
@@ -121,7 +121,7 @@ class AddressdbApicontroller extends mfBaseApicontroller {
while($data = $this->db()->fetch_object($res)) {
$addresses[] = [
'zip' => $data->plz,
'city' => $data->ortschaft,
'city' => $data->gemeinde,
'street' => $data->strasse,
'housenumber' => $data->hausnummer,
'block' => $data->block,

View File

@@ -37,7 +37,7 @@ class PreorderApicontroller extends mfBaseApicontroller {
}
$type = $this->post['type'];
if($type != "interest" && $type != "provision") {
if($type != "interest" && $type != "provision" && $type != "order") {
return mfResponse::BadRequest(["message" => "Unknown type"]);
}
@@ -59,9 +59,9 @@ class PreorderApicontroller extends mfBaseApicontroller {
}
$address_search = [];
foreach(['street' => 'strasse','housenumber' => "hausnummer",'zip' => "plz",'city' => "ortschaft"] as $key => $field_name) {
foreach(['street' => 'strasse','housenumber' => "hausnummer",'zip' => "plz",'city' => "gemeinde"] as $key => $field_name) {
if(property_exists($this->post['address'], $key)) {
$address_search[$field_name] = trim($this->post['address']->$key);
$address_search[$field_name] = $this->db()->escape(trim($this->post['address']->$key));
}
}
@@ -150,6 +150,13 @@ class PreorderApicontroller extends mfBaseApicontroller {
$preorder_data['price_setup'] = $product->price_setup;
}
}
if($type == "order") {
$product = $this->campaign->setup_products['activation'][0];
if($product) {
$preorder_data['setup_product_id'] = $product->id;
$preorder_data['price_setup'] = $product->price_setup;
}
}