From 6548daec82c7c68f4daffe396b274d506198ab6a Mon Sep 17 00:00:00 2001 From: Luca Haid Date: Mon, 2 Feb 2026 10:47:38 +0100 Subject: [PATCH] fixed date filter issues --- .../WorkorderDashboard/WorkorderDashboardController.php | 9 ++++++--- public/js/pages/WorkorderDashboard/WorkorderDashboard.js | 7 +++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/application/WorkorderDashboard/WorkorderDashboardController.php b/application/WorkorderDashboard/WorkorderDashboardController.php index 2c538c627..2e3f2a3a9 100644 --- a/application/WorkorderDashboard/WorkorderDashboardController.php +++ b/application/WorkorderDashboard/WorkorderDashboardController.php @@ -45,12 +45,15 @@ class WorkorderDashboardController extends TTCrud $userAddressId = intval($this->user->address_id); $sql = "SELECT * FROM thetool.WorkorderCompany WHERE visibleForAddressId IS NULL - OR FIND_IN_SET('$userAddressId', visibleForAddressId) > 0 + OR JSON_CONTAINS(visibleForAddressId, '$userAddressId') ORDER BY name ASC"; $result = $db->query($sql); $companies = []; - while ($row = $result->fetch_object('WorkorderCompanyModel')) { - $companies[] = $row; + while ($row = $result->fetch_assoc()) { + $company = new WorkorderCompanyModel(); + $company->id = (int)$row['id']; + $company->name = $row['name']; + $companies[] = $company; } } diff --git a/public/js/pages/WorkorderDashboard/WorkorderDashboard.js b/public/js/pages/WorkorderDashboard/WorkorderDashboard.js index f65606e0e..335b8c40d 100644 --- a/public/js/pages/WorkorderDashboard/WorkorderDashboard.js +++ b/public/js/pages/WorkorderDashboard/WorkorderDashboard.js @@ -100,7 +100,7 @@ Vue.component('wd-trends-chart', { responsive: true, maintainAspectRatio: false, plugins: { legend: { position: 'top', labels: { usePointStyle: true } } }, scales: { - x: { type: 'time', time: { unit: 'day', displayFormats: { day: 'DD.MM' } }, grid: { display: false } }, + x: { type: 'time', time: { unit: 'day', displayFormats: { day: 'DD.MM.YYYY' }, tooltipFormat: 'DD.MM.YYYY' }, grid: { display: false } }, y: { beginAtZero: true, grid: { color: 'rgba(0,0,0,0.05)' } } } } @@ -134,7 +134,7 @@ Vue.component('workorder-dashboard', {
- + @@ -233,6 +233,9 @@ Vue.component('workorder-dashboard', { this.filterOptions.tenants = response.data.tenants; this.filterOptions.companies = response.data.companies; this.filterOptions.statuses = response.data.statuses; + if (this.filterOptions.tenants.length === 1) { + await this.onTenantChange(this.filterOptions.tenants[0].value); + } } catch (error) { console.error('Error fetching filter options:', error); } }, async onTenantChange(tenantId) {