+ Diese Preorder ist auf Hold gesetzt. Es kann keine Workorder erstellt werden.
+
@@ -542,8 +546,10 @@
=$preorder->adb_wohneinheit->ftu_data["id"]?>
+
-
FCP
+
+
FCP
fcp): ?>
@@ -566,9 +572,12 @@
-
Kein FCP zugewiesen
+
+
+ Kein FCP zugewiesen/importert.
+
+
-
diff --git a/application/Preorder/PreorderModel.php b/application/Preorder/PreorderModel.php
index 593a136b3..c1c418a55 100644
--- a/application/Preorder/PreorderModel.php
+++ b/application/Preorder/PreorderModel.php
@@ -256,7 +256,7 @@ class PreorderModel
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 . "`.Wohneinheit as adb_wohneinheit ON (tt_preorder.adb_wohneinheit_id = adb_wohneinheit.id)
- LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id
+ LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted', 'cancelled') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id
WHERE $where
ORDER BY $orderBy
LIMIT 1";
@@ -305,7 +305,7 @@ class PreorderModel
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 . "`.Wohneinheit as adb_wohneinheit ON (tt_preorder.adb_wohneinheit_id = adb_wohneinheit.id)
- LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id
+ LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted', 'cancelled') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id
LEFT JOIN Preorderlogistics ON (Preorderlogistics.preorder_id = tt_preorder.id)
WHERE $where
";
@@ -331,7 +331,7 @@ class PreorderModel
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 . "`.Wohneinheit as adb_wohneinheit ON (tt_preorder.adb_wohneinheit_id = adb_wohneinheit.id)
- LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id
+ LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted', 'cancelled') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id
LEFT JOIN Preorderlogistics ON (Preorderlogistics.preorder_id = tt_preorder.id)
WHERE $where
ORDER BY lastname, firstname
@@ -385,7 +385,7 @@ class PreorderModel
LEFT JOIN `" . FRONKDB_DBNAME . "`.Preorderstatus as 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 . "`.Wohneinheit as adb_wohneinheit ON (tt_preorder.adb_wohneinheit_id = adb_wohneinheit.id)
- LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id,
+ LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted', 'cancelled') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id,
JSON_TABLE(tt_preorder.addon_services,
'$[*]' COLUMNS (
ordered VARCHAR(64) PATH '$.ordered'
@@ -426,7 +426,7 @@ class PreorderModel
LEFT JOIN `" . FRONKDB_DBNAME . "`.Preorderstatus as 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 . "`.Wohneinheit as adb_wohneinheit ON (tt_preorder.adb_wohneinheit_id = adb_wohneinheit.id)
- LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id,
+ LEFT OUTER JOIN (SELECT adb_wohneinheit_id, count(*) cnt, MAX(rimo_status) as rimo_status, MAX(rimo_name) as rimo_name, MAX(rimo_team_name) as rimo_team_name, MAX(rimo_team_id) as rimo_team_id FROM `" . FRONKDB_DBNAME . "`.RimoWorkorder WHERE rimo_status NOT IN ('deleted', 'cancelled') GROUP BY adb_wohneinheit_id) workorder ON adb_wohneinheit.id = workorder.adb_wohneinheit_id,
JSON_TABLE(tt_preorder.addon_services,
'$[*]' COLUMNS (
ordered VARCHAR(64) PATH '$.ordered'
@@ -469,6 +469,7 @@ class PreorderModel
if (!array_key_exists("status_code", $filter) && !array_key_exists("status_code", $filter)
&& !array_key_exists("status_id", $filter) && !array_key_exists("status_id", $filter)) {
$filter["status_code", $filter) && !array_key_exists("status_code", $filter)
&& !array_key_exists("status_id", $filter) && !array_key_exists("status_id", $filter)) {
$filter["debug($sql);
+
$res = $db->query($sql);
if ($db->num_rows($res)) {
@@ -706,6 +710,15 @@ class PreorderModel
}
}
+ if (array_key_exists("!status_code", $filter)) {
+ $status_code = $filter['!status_code'];
+ if (is_numeric($status_code)) {
+ $where .= " AND tt_preorderstatus.code != $status_code";
+ } elseif (is_array($status_code)) {
+ $where .= " AND tt_preorderstatus.code NOT IN (" . implode(",", $status_code) . ")";
+ }
+ }
+
if (array_key_exists("<=status_code", $filter)) {
$status_code = $filter['<=status_code'];
if (is_numeric($status_code)) {
@@ -727,7 +740,7 @@ class PreorderModel
$where .= " AND tt_preorder.borderpoint_status='$borderpoint_status'";
}
}
-
+
if (array_key_exists("preordercampaign_id", $filter)) {
$preordercampaign_id = $filter['preordercampaign_id'];
@@ -924,16 +937,10 @@ class PreorderModel
if (array_key_exists("rimo_workorder_status", $filter)) {
$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']);
-
- if (is_array($rimo_workorder_status) && in_array('Canceled', $rimo_workorder_status) && !in_array('Cancelled', $rimo_workorder_status)) {
- $rimo_workorder_status = array_merge($rimo_workorder_status, ['Cancelled']);
- }
-
$where .= " AND workorder.rimo_status IN ('" . implode("','", $rimo_workorder_status) . "')";
} else if ($rimo_workorder_status) {
$rimo_workorder_status = FronkDB::singleton()->escape($rimo_workorder_status);
@@ -1198,7 +1205,7 @@ class PreorderModel
`".FRONKDB_DBNAME."`.Preorder p
LEFT JOIN `".ADDRESSDB_DBNAME."`.Hausnummer h ON p.adb_hausnummer_id = h.id
LEFT JOIN `".FRONKDB_DBNAME."`.Preorderstatus tt_preorderstatus ON p.status_id = tt_preorderstatus.id
- WHERE p.deleted = 0 AND tt_preorderstatus.code < 899";
+ WHERE p.deleted = 0 AND tt_preorderstatus.code NOT IN (20) AND tt_preorderstatus.code < 899" . $where;
$queryStart = microtime(true);
$res = $db->query($sql . $where);
@@ -1268,9 +1275,9 @@ class PreorderModel
}
public static function countHistoryStatus($filter = [], $status_code = null) {
- if ($status_code === null) {
- die("Please select a status code");
- }
+ if ($status_code === null) {
+ die("Please select a status code");
+ }
if (!is_array($filter)) return false;