Merge branch 'change-preorder-filter' into 'master'

changed rimo-workorder-status filter

See merge request fronk/thetool!897
This commit is contained in:
Luca Haid
2025-01-14 13:06:07 +00:00
2 changed files with 18 additions and 10 deletions

View File

@@ -282,14 +282,15 @@ $pagination_entity_name = "Vorbestellungen";
<div class="col-sm-12 col-md-2">
<label class="form-label" for="filter_rimo_workorder">Rimo Workorder Status</label>
<select name="filter[rimo_workorder_status]" id="filter_rimo_workorder_status" class="form-control">
<select name="filter[rimo_workorder_status][]" id="filter_rimo_workorder_status" multiple class="form-control">
<option value=""></option>
<option value="new" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && $filter["rimo_workorder_status"] == "new" ) ? "selected='selected'" : ""?>>New</option>
<option value="Clarify" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && $filter["rimo_workorder_status"] == "Clarify" ) ? "selected='selected'" : ""?>>Clarify</option>
<option value="Accepted" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && $filter["rimo_workorder_status"] == "Accepted" ) ? "selected='selected'" : ""?>>Accepted</option>
<option value="Plan released" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && $filter["rimo_workorder_status"] == "Plan released" ) ? "selected='selected'" : ""?>>Plan released</option>
<option value="Assigned" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && $filter["rimo_workorder_status"] == "Assigned" ) ? "selected='selected'" : ""?>>Assigned</option>
<option value="Documented" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && $filter["rimo_workorder_status"] == "Documented" ) ? "selected='selected'" : ""?>>Documented</option>
<option value="Clarify" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && is_array($filter['rimo_workorder_status']) && in_array("Clarify", $filter['rimo_workorder_status'])) ? "selected='selected'" : ""?>>Clarify</option>
<option value="Accepted" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && is_array($filter['rimo_workorder_status'])&& in_array("Accepted", $filter['rimo_workorder_status'])) ? "selected='selected'" : ""?>>Accepted</option>
<option value="Plan released" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && is_array($filter['rimo_workorder_status'])&& in_array("Plan released", $filter['rimo_workorder_status'])) ? "selected='selected'" : ""?>>Plan released</option>
<option value="Assigned" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && is_array($filter['rimo_workorder_status'])&& in_array("Assigned", $filter['rimo_workorder_status'])) ? "selected='selected'" : ""?>>Assigned</option>
<option value="Executed" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && is_array($filter['rimo_workorder_status'])&& in_array("Executed", $filter['rimo_workorder_status'])) ? "selected='selected'" : ""?>>Executed</option>
<option value="Documented" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && is_array($filter['rimo_workorder_status'])&& in_array("Documented", $filter['rimo_workorder_status'])) ? "selected='selected'" : ""?>>Documented</option>
<option value="Canceled" <?=(isset($filter) && array_key_exists("rimo_workorder_status", $filter) && is_array($filter['rimo_workorder_status'])&& in_array("Canceled", $filter['rimo_workorder_status'])) ? "selected='selected'" : ""?>>Canceled</option>
</select>
</div>
@@ -472,6 +473,7 @@ $pagination_entity_name = "Vorbestellungen";
$("#filter_status").select2({closeOnSelect: false});
$("#filter_partner_id").select2({closeOnSelect: false});
$("#connection_type_id").select2({closeOnSelect: false});
$("#filter_rimo_workorder_status").select2({closeOnSelect: false});
var attributes = ["bep_specified", "inhouse_cabling_supplied"];

View File

@@ -709,9 +709,15 @@ class PreorderModel {
}
if(array_key_exists("rimo_workorder_status", $filter)) {
$rimo_workorder_status = FronkDB::singleton()->escape($filter['rimo_workorder_status']);
if($rimo_workorder_status) {
$where .= " AND workorder.rimo_status = '$rimo_workorder_status'";
$rimo_workorder_status = $filter['rimo_workorder_status'];
if (is_array($rimo_workorder_status) && count($rimo_workorder_status)) {
$rimo_workorder_status = array_map(function($value) {
return FronkDB::singleton()->escape($value);
}, $filter['rimo_workorder_status']);
$where .= " AND workorder.rimo_status IN ('".implode("','", $rimo_workorder_status)."')";
} else if($rimo_workorder_status) {
$rimo_workorder_status = FronkDB::singleton()->escape($rimo_workorder_status);
$where .= " AND workorder.rimo_status = '$rimo_workorder_status'";
}
}