Const consent add filter
This commit is contained in:
@@ -33,7 +33,7 @@ $pagination_entity_name = "Zustimmungserklärungen";
|
||||
<form method="get" action="<?=self::getUrl("ConstructionConsent")?>">
|
||||
<div class="row">
|
||||
|
||||
<div class="col-3">
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_project_id">Projekt</label>
|
||||
<select name="filter[project_id]" id="filter_project_id" class="form-control">
|
||||
<option value="">Alle</option>
|
||||
@@ -43,16 +43,7 @@ $pagination_entity_name = "Zustimmungserklärungen";
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-1">
|
||||
<label class="form-label" for="filter_object_type">Objektart</label>
|
||||
<select name="filter[object_type]" id="filter_object_type" class="form-control">
|
||||
<option value="">Alle</option>
|
||||
<option value="building" <?=(array_key_exists("object_type", $filter) && $filter["object_type"] == "building") ? "selected='selected'" : ""?>>Gebäude</option>
|
||||
<option value="street" <?=(array_key_exists("object_type", $filter) && $filter["object_type"] == "street") ? "selected='selected'" : ""?>>Straße</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-1">
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_network">Netzgebiet</label>
|
||||
<select name="filter[network]" id="filter_network" class="form-control">
|
||||
<option value="">Alle</option>
|
||||
@@ -70,6 +61,15 @@ $pagination_entity_name = "Zustimmungserklärungen";
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-1">
|
||||
<label class="form-label" for="filter_object_type">Objektart</label>
|
||||
<select name="filter[object_type]" id="filter_object_type" class="form-control">
|
||||
<option value="">Alle</option>
|
||||
<option value="building" <?=(array_key_exists("object_type", $filter) && $filter["object_type"] == "building") ? "selected='selected'" : ""?>>Gebäude</option>
|
||||
<option value="street" <?=(array_key_exists("object_type", $filter) && $filter["object_type"] == "street") ? "selected='selected'" : ""?>>Straße</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-1">
|
||||
<label class="form-label" for="filter_status_light">Ampelstatus</label>
|
||||
<select name="filter[status_light]" id="filter_status_light" class="form-control">
|
||||
@@ -90,6 +90,36 @@ $pagination_entity_name = "Zustimmungserklärungen";
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_conduit_installed_building">Leerrohr im Gebäude</label>
|
||||
<select name="filter[conduit_installed_building]" id="filter_conduit_installed_building" class="form-control">
|
||||
<option value="">Alle</option>
|
||||
<option value="!NULL" <?=(array_key_exists("conduit_installed_building", $filter) && $filter["conduit_installed_building"] == "!NULL") ? "selected='selected'" : ""?>>Ja</option>
|
||||
<option value="NULL" <?=(array_key_exists("conduit_installed_building", $filter) && $filter["conduit_installed_building"] == "NULL") ? "selected='selected'" : ""?>>Nein</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_conduit_installed_ftu">Leerrohr bis HAK</label>
|
||||
<select name="filter[conduit_installed_ftu]" id="filter_conduit_installed_ftu" class="form-control">
|
||||
<option value="">Alle</option>
|
||||
<option value="!NULL" <?=(array_key_exists("conduit_installed_ftu", $filter) && $filter["conduit_installed_ftu"] == "!NULL") ? "selected='selected'" : ""?>>Ja</option>
|
||||
<option value="NULL" <?=(array_key_exists("conduit_installed_ftu", $filter) && $filter["conduit_installed_ftu"] == "NULL") ? "selected='selected'" : ""?>>Nein</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="row mt-2">
|
||||
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_inhouse_cabling">Inhouse erledigt</label>
|
||||
<select name="filter[inhouse_cabling]" id="filter_inhouse_cabling" class="form-control">
|
||||
<option value="">Alle</option>
|
||||
<option value="!NULL" <?=(array_key_exists("inhouse_cabling", $filter) && $filter["inhouse_cabling"] == "!NULL") ? "selected='selected'" : ""?>>Ja</option>
|
||||
<option value="NULL" <?=(array_key_exists("inhouse_cabling", $filter) && $filter["inhouse_cabling"] == "NULL") ? "selected='selected'" : ""?>>Nein</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-2">
|
||||
<label class="form-label" for="filter_address">Objektadresse</label>
|
||||
<input type="text" class="form-control" name="filter[address]" id="filter_address" value="<?=(array_key_exists('address', $filter)) ? $filter['address'] : ""?>" />
|
||||
@@ -100,9 +130,12 @@ $pagination_entity_name = "Zustimmungserklärungen";
|
||||
<input type="text" class="form-control" name="filter[gst]" id=filter_gst value="<?=(array_key_exists('gst', $filter)) ? $filter['gst'] : ""?>" />
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="row mt-2">
|
||||
<div class="col">
|
||||
<button type="submit" class="btn btn-primary"><i class="far fa-search fa-fw"></i> Filter anwenden</button>
|
||||
|
||||
@@ -548,7 +548,7 @@ class ConstructionConsent extends mfBaseModel {
|
||||
if(array_key_exists("network", $filter)) {
|
||||
$network = FronkDB::singleton()->escape($filter["network"]);
|
||||
if($network) {
|
||||
$where .= " AND view_hausnummer.netzgebiet_id=$network";
|
||||
$where .= " AND vh.netzgebiet_id=$network";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -939,17 +939,25 @@ class ConstructionConsentController extends mfBaseController {
|
||||
}
|
||||
|
||||
private function generateStats($baseFilter = array()) {
|
||||
$allCount = ConstructionConsent::count(array_merge(array(), $baseFilter));
|
||||
$streetCount = ConstructionConsent::count(array_merge($baseFilter, array("object_type" => "street")));
|
||||
$buildingCount = ConstructionConsent::count(array_merge($baseFilter, array("object_type" => "building")));
|
||||
$inspection_planner = ConstructionConsent::count(array_merge($baseFilter, array("inspection_planner" => "!NULL")));
|
||||
$conduit_installed_building = ConstructionConsent::count(array_merge($baseFilter, array("conduit_installed_building" => "!NULL")));
|
||||
$conduit_installed_ftu = ConstructionConsent::count(array_merge($baseFilter, array("conduit_installed_ftu" => "!NULL")));
|
||||
$inhouse_cabling = ConstructionConsent::count(array_merge($baseFilter, array("inhouse_cabling" => "!NULL")));
|
||||
$status_light_blue = ConstructionConsent::count(array_merge($baseFilter, array("status_light" => "blue")));
|
||||
$status_light_red = ConstructionConsent::count(array_merge($baseFilter, array("status_light" => "red")));
|
||||
$status_light_yellow = ConstructionConsent::count(array_merge($baseFilter, array("status_light" => "yellow")));
|
||||
$status_light_green = ConstructionConsent::count(array_merge($baseFilter, array("status_light" => "green")));
|
||||
function getFilteredCount($wantedFilter, $filterValue, $baseFilter) {
|
||||
if (!empty($baseFilter[$wantedFilter]) && $baseFilter[$wantedFilter] != $filterValue) {
|
||||
return 0;
|
||||
} else {
|
||||
return ConstructionConsent::count(array_merge($baseFilter, [$wantedFilter => $filterValue]));
|
||||
}
|
||||
}
|
||||
|
||||
$allCount = ConstructionConsent::count($baseFilter);
|
||||
$streetCount = getFilteredCount("object_type", "street", $baseFilter);
|
||||
$buildingCount = getFilteredCount("object_type", "building", $baseFilter);
|
||||
$inspection_planner = getFilteredCount("inspection_planner", "!NULL", $baseFilter);
|
||||
$conduit_installed_building = getFilteredCount("conduit_installed_building", "!NULL", $baseFilter);
|
||||
$conduit_installed_ftu = getFilteredCount("conduit_installed_ftu", "!NULL", $baseFilter);
|
||||
$inhouse_cabling = getFilteredCount("inhouse_cabling", "!NULL", $baseFilter);
|
||||
$status_light_blue = getFilteredCount("status_light", "blue", $baseFilter);
|
||||
$status_light_red = getFilteredCount("status_light", "red", $baseFilter);
|
||||
$status_light_yellow = getFilteredCount("status_light", "yellow", $baseFilter);
|
||||
$status_light_green = getFilteredCount("status_light", "green", $baseFilter);
|
||||
|
||||
return array(
|
||||
"all" => $allCount,
|
||||
|
||||
Reference in New Issue
Block a user