Merge branch 'fronkdev' into 'master'
Order voicenumbers + Rimo filters in Preorder See merge request fronk/thetool!20
This commit is contained in:
@@ -623,7 +623,23 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<?php if(
|
||||||
|
(is_array($product->product->attributes) && count($product->product->attributes))
|
||||||
|
&& (array_key_exists(TT_ATTRIB_VOICENUMBER_REQUIRED_NAME, $product->product->attributes)
|
||||||
|
&& $product->product->attributes[TT_ATTRIB_VOICENUMBER_REQUIRED_NAME]->value == 1)
|
||||||
|
|| $product->voicenumber
|
||||||
|
): ?>
|
||||||
|
<div class="row mt-1 mb-2" id="voicenumber-<?=$i?>-line">
|
||||||
|
<?php else: ?>
|
||||||
|
<div class="row mt-1 mb-2 hidden" id="voicenumber-<?=$i?>-line">
|
||||||
|
<?php endif; ?>
|
||||||
|
<!-- line to input voicenumber -->
|
||||||
|
<div class="col-6">
|
||||||
|
<label class="form-label" for="voicenumber-<?=$i?>">Rufnummer</label>
|
||||||
|
<textarea class="form-control" name="products[<?=$i?>][voicenumber]" id="voicenumber-<?=$i?>" placeholder="Eine Rufnummer pro Zeile (+43 123 456 78)" /><?=(is_array($product->voicenumbers) && count($product->voicenumbers)) ? implode("\n", $product->voicenumbers) : ""?></textarea>
|
||||||
|
<small>Wenn Rufnummern bekannt sind oder portiert werden (Eine Rufnummer pro Zeile (+43 123 456 78))</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="row mt-1 mb-2">
|
<div class="row mt-1 mb-2">
|
||||||
<!-- line 2 -->
|
<!-- line 2 -->
|
||||||
@@ -709,8 +725,6 @@
|
|||||||
<label class="form-label" for="price_setup-<?=$i?>">Preis Setup</label>
|
<label class="form-label" for="price_setup-<?=$i?>">Preis Setup</label>
|
||||||
<input type="text" class="form-control" name="products[<?=$i?>][price_setup]" id="price_setup-<?=$i?>" value="" placeholder="Preis Setup" />
|
<input type="text" class="form-control" name="products[<?=$i?>][price_setup]" id="price_setup-<?=$i?>" value="" placeholder="Preis Setup" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row mt-1 mb-2 hidden" id="termination_id-<?=$i?>-line">
|
<div class="row mt-1 mb-2 hidden" id="termination_id-<?=$i?>-line">
|
||||||
@@ -726,7 +740,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="row mt-1 mb-2 hidden" id="voicenumber-<?=$i?>-line">
|
||||||
|
<!-- line to input voicenumber -->
|
||||||
|
<div class="col-6">
|
||||||
|
<label class="form-label" for="voicenumber-<?=$i?>">Rufnummer</label>
|
||||||
|
<textarea class="form-control" name="products[<?=$i?>][voicenumber]" id="voicenumber-<?=$i?>" placeholder="Eine Rufnummer pro Zeile (+43 123 456 78)" /></textarea>
|
||||||
|
<small>Wenn Rufnummern bekannt sind oder portiert werden (Eine Rufnummer pro Zeile (+43 123 456 78))</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="row mt-1 mb-2">
|
<div class="row mt-1 mb-2">
|
||||||
<!-- line 2 -->
|
<!-- line 2 -->
|
||||||
@@ -1193,6 +1214,13 @@
|
|||||||
$('#termination_id-' + id + '-line').hide();
|
$('#termination_id-' + id + '-line').hide();
|
||||||
//$('#termination_id-' + id + '-line').hide();
|
//$('#termination_id-' + id + '-line').hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(typeof p.attributes === 'object' && "needs_number" in p.attributes && p.attributes.needs_number == 1) {
|
||||||
|
console.log("needs_number");
|
||||||
|
$('#voicenumber-' + id + '-line').show();
|
||||||
|
} else {
|
||||||
|
$('#voicenumber-' + id + '-line').hide();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
'json');
|
'json');
|
||||||
|
|
||||||
@@ -1509,6 +1537,15 @@
|
|||||||
</div> \
|
</div> \
|
||||||
</div> \
|
</div> \
|
||||||
\
|
\
|
||||||
|
<div class="row mt-1 mb-2 hidden" id="voicenumber-' + i + '-line"> \
|
||||||
|
<!-- line to input voicenumber --> \
|
||||||
|
<div class="col-6"> \
|
||||||
|
<label class="form-label" for="voicenumber-' + i + '">Rufnummer</label> \
|
||||||
|
<textarea class="form-control" name="products[' + i + '][voicenumber]" id="voicenumber-' + i + '" placeholder="Eine Rufnummer pro Zeile (+43 123 456 78)" /></textarea> \
|
||||||
|
<small>Wenn Rufnummern bekannt sind oder portiert werden (Eine Rufnummer pro Zeile (+43 123 456 78))</small> \
|
||||||
|
</div> \
|
||||||
|
</div> \
|
||||||
|
\
|
||||||
<div class="row mt-1 mb-2"> \
|
<div class="row mt-1 mb-2"> \
|
||||||
<!-- line 2 --> \
|
<!-- line 2 --> \
|
||||||
<div class="col-8"> \
|
<div class="col-8"> \
|
||||||
|
|||||||
@@ -136,6 +136,25 @@
|
|||||||
<option value="2" <?=(isset($filter) && array_key_exists("unit_count", $filter) && intval($filter['unit_count']) === 2) ? "selected='selected'" : ""?>> > 1</option>
|
<option value="2" <?=(isset($filter) && array_key_exists("unit_count", $filter) && intval($filter['unit_count']) === 2) ? "selected='selected'" : ""?>> > 1</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="col-2">
|
||||||
|
<label class="form-label" for="filter_rimo_workorder">Rimo Workorder</label>
|
||||||
|
<select name="filter[rimo_workorder]" id="filter_rimo_workorder" class="form-control">
|
||||||
|
<option value=""></option>
|
||||||
|
<option value="0" <?=(isset($filter) && array_key_exists("rimo_workorder", $filter) && intval($filter['rimo_workorder']) === 0) ? "selected='selected'" : ""?>>Nicht erstellt</option>
|
||||||
|
<option value="1" <?=(isset($filter) && array_key_exists("rimo_workorder", $filter) && strlen($filter['rimo_workorder']) && intval($filter['rimo_workorder']) === 1) ? "selected='selected'" : ""?>>Erstellt</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-2">
|
||||||
|
<label class="form-label" for="filter_rimo_homes">Wohneinheit Rimo-Extref</label>
|
||||||
|
<select name="filter[rimo_home_extref]" id="filter_rimo_home_extref" class="form-control">
|
||||||
|
<option value=""></option>
|
||||||
|
<option value="0" <?=(isset($filter) && array_key_exists("rimo_home_extref", $filter) && strlen($filter['rimo_home_extref']) && intval($filter['rimo_home_extref']) === 0) ? "selected='selected'" : ""?>>Fehlt</option>
|
||||||
|
<option value="1" <?=(isset($filter) && array_key_exists("rimo_home_extref", $filter) && intval($filter['rimo_home_extref']) === 1) ? "selected='selected'" : ""?>>Vorhanden</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|||||||
@@ -894,6 +894,24 @@ class OrderController extends mfBaseController {
|
|||||||
$product_data['termination_id'] = null;
|
$product_data['termination_id'] = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(array_key_exists(TT_ATTRIB_VOICENUMBER_REQUIRED_NAME, $prod->attributes) && $prod->attributes[TT_ATTRIB_VOICENUMBER_REQUIRED_NAME]->value == 1) {
|
||||||
|
$voicenumbers = [];
|
||||||
|
foreach(explode("\n", $p['voicenumber']) as $number) {
|
||||||
|
$number = preg_replace('/\D/', '', trim($number));
|
||||||
|
if(substr($number, 0, 2) == "00") $number = "+".substr($number, 2);
|
||||||
|
if(preg_match('/^0[^0]/', $number)) {
|
||||||
|
$number = "+43".substr($number, 1);
|
||||||
|
}
|
||||||
|
if(substr($number, 0, 1) != "+") $number = "+$number";
|
||||||
|
if($number && !in_array($number, $voicenumbers)) $voicenumbers[] = $number;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
$product_data['voicenumber'] = json_encode($voicenumbers);
|
||||||
|
} else {
|
||||||
|
$product_data['voicenumber'] = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if(!$orderproduct_id) {
|
if(!$orderproduct_id) {
|
||||||
$product = OrderProductModel::create($product_data);
|
$product = OrderProductModel::create($product_data);
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ class OrderProduct extends mfBaseModel {
|
|||||||
private $termination;
|
private $termination;
|
||||||
private $cpeprovisioning;
|
private $cpeprovisioning;
|
||||||
private $contract;
|
private $contract;
|
||||||
|
private $voicenumbers;
|
||||||
private $editor;
|
private $editor;
|
||||||
private $creator;
|
private $creator;
|
||||||
|
|
||||||
@@ -50,6 +51,18 @@ class OrderProduct extends mfBaseModel {
|
|||||||
return $this->contract;
|
return $this->contract;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($name == "voicenumbers") {
|
||||||
|
$this->voicenumbers = [];
|
||||||
|
if(!$this->voicenumber) return [];
|
||||||
|
|
||||||
|
$json = json_decode($this->voicenumber);
|
||||||
|
|
||||||
|
if(!is_array($json)) return [];
|
||||||
|
$this->voicenumbers = $json;
|
||||||
|
|
||||||
|
return $this->voicenumbers;
|
||||||
|
}
|
||||||
|
|
||||||
if($name == "creator") {
|
if($name == "creator") {
|
||||||
$this->creator = mfValuecache::singleton()->get("Worker-id-".$this->create_by);
|
$this->creator = mfValuecache::singleton()->get("Worker-id-".$this->create_by);
|
||||||
if($this->creator === null) {
|
if($this->creator === null) {
|
||||||
|
|||||||
@@ -163,10 +163,26 @@ class PreorderController extends mfBaseController {
|
|||||||
unset($filter['unit_missing']);
|
unset($filter['unit_missing']);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(array_key_exists("attributes", $filter) && count($filter['attributes'])) {
|
if(array_key_exists("rimo_home_extref", $filter)) {
|
||||||
|
if($filter['rimo_home_extref'] == "1") {
|
||||||
|
$new_filter['add-where'] = " AND (adb_wohneinheit.extref IS NOT NULL AND adb_wohneinheit.extref like 'SDIHome_%')";
|
||||||
|
} elseif($filter['rimo_home_extref'] == "0") {
|
||||||
|
$new_filter['add-where'] = " AND (adb_wohneinheit.extref IS NULL OR adb_wohneinheit.extref NOT LIKE 'SDIHome_%')";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(array_key_exists("rimo_workorder", $filter)) {
|
||||||
|
if($filter["rimo_workorder"] == "1") {
|
||||||
|
$new_filter['workorder_export_date'] = true;
|
||||||
|
} else {
|
||||||
|
$new_filter['workorder_export_date'] = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*if(array_key_exists("attributes", $filter) && count($filter['attributes'])) {
|
||||||
|
|
||||||
|
}*/
|
||||||
|
|
||||||
if(is_array($filter) && count($filter)) {
|
if(is_array($filter) && count($filter)) {
|
||||||
foreach($filter as $name => $value) {
|
foreach($filter as $name => $value) {
|
||||||
$new_filter[$name] = $value;
|
$new_filter[$name] = $value;
|
||||||
|
|||||||
@@ -220,6 +220,7 @@ class PreorderModel {
|
|||||||
$sql = "SELECT COUNT(*) as cnt FROM `".FRONKDB_DBNAME."`.Preorder tt_preorder
|
$sql = "SELECT COUNT(*) as cnt FROM `".FRONKDB_DBNAME."`.Preorder tt_preorder
|
||||||
LEFT JOIN `".FRONKDB_DBNAME."`.Preorderstatus tt_preorderstatus ON (tt_preorder.status_id = tt_preorderstatus.id)
|
LEFT JOIN `".FRONKDB_DBNAME."`.Preorderstatus tt_preorderstatus ON (tt_preorder.status_id = tt_preorderstatus.id)
|
||||||
LEFT JOIN `".ADDRESSDB_DBNAME."`.view_hausnummer as adb_hausnummer ON (tt_preorder.adb_hausnummer_id = adb_hausnummer.hausnummer_id)
|
LEFT JOIN `".ADDRESSDB_DBNAME."`.view_hausnummer as adb_hausnummer ON (tt_preorder.adb_hausnummer_id = adb_hausnummer.hausnummer_id)
|
||||||
|
LEFT JOIN `".ADDRESSDB_DBNAME."`.Wohneinheit as adb_wohneinheit ON (tt_preorder.adb_hausnummer_id = adb_wohneinheit.hausnummer_id)
|
||||||
WHERE $where
|
WHERE $where
|
||||||
";
|
";
|
||||||
|
|
||||||
@@ -242,6 +243,7 @@ class PreorderModel {
|
|||||||
$sql = "SELECT tt_preorder.* FROM `".FRONKDB_DBNAME."`.Preorder tt_preorder
|
$sql = "SELECT tt_preorder.* FROM `".FRONKDB_DBNAME."`.Preorder tt_preorder
|
||||||
LEFT JOIN `".FRONKDB_DBNAME."`.Preorderstatus tt_preorderstatus ON (tt_preorder.status_id = tt_preorderstatus.id)
|
LEFT JOIN `".FRONKDB_DBNAME."`.Preorderstatus tt_preorderstatus ON (tt_preorder.status_id = tt_preorderstatus.id)
|
||||||
LEFT JOIN `".ADDRESSDB_DBNAME."`.view_hausnummer as adb_hausnummer ON (tt_preorder.adb_hausnummer_id = adb_hausnummer.hausnummer_id)
|
LEFT JOIN `".ADDRESSDB_DBNAME."`.view_hausnummer as adb_hausnummer ON (tt_preorder.adb_hausnummer_id = adb_hausnummer.hausnummer_id)
|
||||||
|
LEFT JOIN `".ADDRESSDB_DBNAME."`.Wohneinheit as adb_wohneinheit ON (tt_preorder.adb_hausnummer_id = adb_wohneinheit.hausnummer_id)
|
||||||
WHERE $where
|
WHERE $where
|
||||||
ORDER BY lastname, firstname
|
ORDER BY lastname, firstname
|
||||||
";
|
";
|
||||||
@@ -445,6 +447,8 @@ class PreorderModel {
|
|||||||
$workorder_export_date = $filter['workorder_export_date'];
|
$workorder_export_date = $filter['workorder_export_date'];
|
||||||
if($workorder_export_date === null || $workorder_export_date === false) {
|
if($workorder_export_date === null || $workorder_export_date === false) {
|
||||||
$where .= " AND (tt_preorder.workorder_export_date IS NULL OR tt_preorder.workorder_export_date = 0)";
|
$where .= " AND (tt_preorder.workorder_export_date IS NULL OR tt_preorder.workorder_export_date = 0)";
|
||||||
|
} elseif($workorder_export_date) {
|
||||||
|
$where .= " AND tt_preorder.workorder_export_date > 1";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -447,7 +447,7 @@ class PreordercampaignController extends mfBaseController {
|
|||||||
$workorders_created = 0;
|
$workorders_created = 0;
|
||||||
$workorders_failed = 0;
|
$workorders_failed = 0;
|
||||||
|
|
||||||
foreach(PreorderModel::search(["preordercampaign_id" => $id, "workorder_export_date" => null]) as $preorder) {
|
foreach(PreorderModel::search(["preordercampaign_id" => $id, "workorder_export_date" => null, 'deleted' => 0]) as $preorder) {
|
||||||
if($preorder->workorder_export_date) {
|
if($preorder->workorder_export_date) {
|
||||||
$this->log->warning(__METHOD__.": workorder_export_date not null");
|
$this->log->warning(__METHOD__.": workorder_export_date not null");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -113,8 +113,8 @@ while($csv = fgetcsv($input, 0, ";")) {
|
|||||||
if($strasse_name == "Schilcherlandsiedlung") $strasse_name = "Schilcherland Siedlung";
|
if($strasse_name == "Schilcherlandsiedlung") $strasse_name = "Schilcherland Siedlung";
|
||||||
//if($strasse_name == "Bierbaumer Strasse") $strasse_name = "Bierbaumerstrasse";
|
//if($strasse_name == "Bierbaumer Strasse") $strasse_name = "Bierbaumerstrasse";
|
||||||
if(preg_match('/GST(\s+\.)?$/', $strasse_name) && !$adrcd) continue;
|
if(preg_match('/GST(\s+\.)?$/', $strasse_name) && !$adrcd) continue;
|
||||||
if(preg_match('/^L\d+/',$strasse_name)) continue;
|
if(preg_match('/^L\d+/',$strasse_name) && !$adrcd) continue;
|
||||||
if(preg_match('/^BP/',$strasse_name)) continue;
|
if(preg_match('/^BP/',$strasse_name) && !$adrcd) continue;
|
||||||
|
|
||||||
|
|
||||||
if($strasse_name == "Lemsitz GNR") {
|
if($strasse_name == "Lemsitz GNR") {
|
||||||
@@ -209,7 +209,7 @@ while($csv = fgetcsv($input, 0, ";")) {
|
|||||||
|
|
||||||
|
|
||||||
$sql = "SELECT * FROM view_hausnummer WHERE gemeinde_id = $gemeinde_id AND strasse IN ('". implode("', '", $strasse_search)."') AND hausnummer='$hausnummer_name'";
|
$sql = "SELECT * FROM view_hausnummer WHERE gemeinde_id = $gemeinde_id AND strasse IN ('". implode("', '", $strasse_search)."') AND hausnummer='$hausnummer_name'";
|
||||||
echo "$sql\n";
|
//echo "$sql\n";
|
||||||
/*if(preg_match('/^Tobelbader/i',$strasse_name)) {
|
/*if(preg_match('/^Tobelbader/i',$strasse_name)) {
|
||||||
echo "$sql\n";
|
echo "$sql\n";
|
||||||
}*/
|
}*/
|
||||||
|
|||||||
Reference in New Issue
Block a user