From a3bd470fcc56735804e5d2d644d5d648b8d47b73 Mon Sep 17 00:00:00 2001 From: Luca Haid Date: Wed, 28 Jan 2026 11:41:56 +0100 Subject: [PATCH] changed dashboard --- .../WorkorderDashboardController.php | 10 +++++----- .../js/pages/WorkorderDashboard/WorkorderDashboard.js | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/application/WorkorderDashboard/WorkorderDashboardController.php b/application/WorkorderDashboard/WorkorderDashboardController.php index 8f2fe61f6..204609ee8 100644 --- a/application/WorkorderDashboard/WorkorderDashboardController.php +++ b/application/WorkorderDashboard/WorkorderDashboardController.php @@ -121,14 +121,14 @@ class WorkorderDashboardController extends TTCrud private function getKPIs($db, $whereClause, $tenantCampaignIds, $dateFrom, $dateTo): array { $total = $db->query("SELECT COUNT(*) as c FROM thetool.Workorder w JOIN thetool.Preorder p ON w.preorderId = p.id WHERE $whereClause")->fetch_assoc()['c'] ?? 0; - $completed = $db->query("SELECT COUNT(*) as c FROM thetool.Workorder w JOIN thetool.Preorder p ON w.preorderId = p.id WHERE $whereClause AND w.status IN ('completed', 'charged')")->fetch_assoc()['c'] ?? 0; - $pending = $db->query("SELECT COUNT(*) as c FROM thetool.Workorder w JOIN thetool.Preorder p ON w.preorderId = p.id WHERE $whereClause AND w.status IN ('new', 'assigned', 'scheduled', 'in_progress', 'documented')")->fetch_assoc()['c'] ?? 0; + $offen = $db->query("SELECT COUNT(*) as c FROM thetool.Workorder w JOIN thetool.Preorder p ON w.preorderId = p.id WHERE $whereClause AND w.status NOT IN ('completed', 'charged', 'archived')")->fetch_assoc()['c'] ?? 0; + $terminisiert = $db->query("SELECT COUNT(*) as c FROM thetool.Workorder w JOIN thetool.Preorder p ON w.preorderId = p.id WHERE $whereClause AND w.status NOT IN ('completed', 'charged', 'archived') AND w.appointmentDate IS NOT NULL")->fetch_assoc()['c'] ?? 0; $issues = $db->query("SELECT COUNT(*) as c FROM thetool.Workorder w JOIN thetool.Preorder p ON w.preorderId = p.id WHERE $whereClause AND w.status IN ('intervention_required', 'correction_requested')")->fetch_assoc()['c'] ?? 0; return [ 'total' => (int)$total, - 'completed' => (int)$completed, - 'pending' => (int)$pending, + 'offen' => (int)$offen, + 'terminisiert' => (int)$terminisiert, 'issues' => (int)$issues, 'interventionRate' => $total > 0 ? round(($issues / $total) * 100, 1) : 0, 'avgCompletionDays' => $this->calculateAvgCompletionTime($db, $tenantCampaignIds), @@ -296,7 +296,7 @@ class WorkorderDashboardController extends TTCrud private function getEmptyDashboardData(): array { return [ - 'kpis' => ['total' => 0, 'completed' => 0, 'pending' => 0, 'issues' => 0, 'interventionRate' => 0, 'avgCompletionDays' => null], + 'kpis' => ['total' => 0, 'offen' => 0, 'terminisiert' => 0, 'issues' => 0, 'interventionRate' => 0, 'avgCompletionDays' => null], 'statusDistribution' => [], 'companyPerformance' => [], 'timeTrends' => [], 'companyStatusCampaign' => [], 'interventionRates' => [], 'statusTransitions' => [], ]; diff --git a/public/js/pages/WorkorderDashboard/WorkorderDashboard.js b/public/js/pages/WorkorderDashboard/WorkorderDashboard.js index 2506dead6..5a9adb5f5 100644 --- a/public/js/pages/WorkorderDashboard/WorkorderDashboard.js +++ b/public/js/pages/WorkorderDashboard/WorkorderDashboard.js @@ -153,8 +153,8 @@ Vue.component('workorder-dashboard', {
- - + +