diff --git a/application/Linework/LineworkController.php b/application/Linework/LineworkController.php index d7c9b4731..1bca0df23 100644 --- a/application/Linework/LineworkController.php +++ b/application/Linework/LineworkController.php @@ -102,16 +102,18 @@ class LineworkController extends mfBaseController { } } - if($this->me->is("lineworker") && !$this->me->is(["Admin","pipeplanner", "lineplanner","netowner"])) { - $this->log->debug("is lineworker"); - $termination_search["lineworker_id"] = ($this->me->address->parent_id) ? $this->me->address->parent_id : $this->me->address_id; - //var_dump($filter);exit; - } + if(!array_key_exists("status_id", $filter)) { $termination_search["status_id"] = 3; } + if($this->me->is("lineworker") && !$this->me->is(["Admin","pipeplanner","lineplanner","netowner"]) && $termination_search["status_id"] == 3) { + $this->log->debug("is lineworker"); + //$termination_search["lineworker_id"] = ($this->me->address->parent_id) ? $this->me->address->parent_id : $this->me->address_id; + //var_dump($filter);exit; + } + $networks = []; $pagination['maxItems'] = TerminationModel::count($termination_search); foreach(TerminationModel::search($termination_search, $pagination) as $term) { diff --git a/application/Pipework/PipeworkController.php b/application/Pipework/PipeworkController.php index f2188511b..679fc887b 100644 --- a/application/Pipework/PipeworkController.php +++ b/application/Pipework/PipeworkController.php @@ -102,15 +102,15 @@ class PipeworkController extends mfBaseController { } - if($this->me->is("pipeworker") && !$this->me->is(["Admin","pipeplanner","netowner"])) { - $this->log->debug("is pipeworker"); - $building_search["pipeworker_id"] = ($this->me->address->parent_id) ? $this->me->address->parent_id : $this->me->address_id; - } - if(!array_key_exists("status_id", $filter)) { $building_search["status_id"] = 3; } + if($this->me->is("pipeworker") && !$this->me->is(["Admin","pipeplanner","netowner"]) && $building_search["status_id"] == 3) { + $this->log->debug("is pipeworker"); + $building_search["pipeworker_id"] = ($this->me->address->parent_id) ? $this->me->address->parent_id : $this->me->address_id; + } + $pagination['maxItems'] = BuildingModel::count($building_search); foreach(BuildingModel::search($building_search, $pagination) as $b) { if(!array_key_exists($b->network->name, $networks)) { diff --git a/application/Termination/TerminationModel.php b/application/Termination/TerminationModel.php index 815b7d11f..9e3586c95 100644 --- a/application/Termination/TerminationModel.php +++ b/application/Termination/TerminationModel.php @@ -115,6 +115,8 @@ class TerminationModel { } } + mfLoghandler::singleton()->debug($sql); + $res = $db->query($sql); if($db->num_rows($res)) { while($data = $db->fetch_object($res)) { @@ -145,6 +147,15 @@ class TerminationModel { } } + if(array_key_exists("lineworker_id", $filter)) { + $lineworker_id = $filter['lineworker_id']; + if(is_numeric($lineworker_id)) { + $where .= " AND Building.lineworker_id=$lineworker_id"; + } elseif(is_array($lineworker_id) && count($lineworker_id)) { + $where .= " AND Building.lineworker_id IN (". implode(",", $lineworker_id).")"; + } + } + if(array_key_exists("linework_doku_delay", $filter)) { if($filter['linework_doku_delay'] == 1) { $where .= " AND Termination.linework_doku_delay = 1";