Changed type filter to tenant filter in Address/Index

This commit is contained in:
Frank Schubert
2024-01-04 18:15:59 +01:00
parent e35e22f4c1
commit 7c98b761ba
3 changed files with 15 additions and 6 deletions

View File

@@ -143,11 +143,11 @@
</div>
<div class="col-1">
<label class="form-label" for="filter_type">Kundentyp</label>
<label class="form-label" for="filter_type">Mandant</label>
<select class="form-control" name="filter[type]" id="filter_type">
<option value="<?=(array_key_exists('type', $filter) && $filter["type"] == "all") ? "selected='selected'" : ""?>">Alle</option>
<option value="xinon" <?=(array_key_exists('type', $filter) && $filter["type"] != "xinon") ? "" : "selected='selected'"?>>Nur Xinon-Kunden</option>
<option value="others" <?=(array_key_exists('type', $filter) && $filter["type"] == "others") ? "selected='selected'" : ""?>>Nicht-Xinon-Kunden</option>
<option value="xinon" <?=(array_key_exists('type', $filter) && $filter["type"] != "xinon") ? "" : "selected='selected'"?>>Xinon</option>
<option value="others" <?=(array_key_exists('type', $filter) && $filter["type"] == "others") ? "selected='selected'" : ""?>>Fremd</option>
</select>
</div>

View File

@@ -82,12 +82,12 @@ class AddressController extends mfBaseController {
if(!array_key_exists("customer_number", $filter) || !$filter["customer_number"]) {
if(array_key_exists("type", $filter)) {
if($filter["type"] == "xinon") {
$new_filter["customer_number"] = true;
$new_filter["customer_or_fibu_numbers"] = true;
} elseif($filter["type"] == "others") {
$new_filter["customer_number"] = false;
$new_filter["customer_or_fibu_numbers"] = false;
}
} else {
$new_filter["customer_number"] = true;
$new_filter["customer_or_fibu_numbers"] = true; // default
}
unset($filter["type"]);
unset($filter["customer_number"]);

View File

@@ -267,6 +267,15 @@ class AddressModel {
}
}
if(array_key_exists("customer_or_fibu_numbers", $filter)) {
$cn = $filter["customer_or_fibu_numbers"];
if($cn === true) {
$where .= " AND (customer_number > 0 OR fibu_account_number > 0 OR fibu_supplier_number > 0)";
} elseif($cn === false || $cn === null) {
$where .= " AND customer_number IS NULL AND fibu_account_number IS NULL AND fibu_supplier_number IS NULL";
}
}
if(array_key_exists("spin", $filter)) {
$spin = FronkDB::singleton()->escape($filter["spin"]);
if($spin) {