diff --git a/apps/ops/src/pages/TicketsPage.vue b/apps/ops/src/pages/TicketsPage.vue index 8185e88..cef9aa9 100644 --- a/apps/ops/src/pages/TicketsPage.vue +++ b/apps/ops/src/pages/TicketsPage.vue @@ -2,30 +2,12 @@
-
-
Recherche
- - - +
+
-
Statut
- -
-
-
Type / Departement
- -
-
-
Priorite
- -
-
-
Mes tickets
+
Portée
-
-
{{ total.toLocaleString() }} tickets
-
[ + { key: 'statut', label: 'Statut', icon: 'label', options: statusOptions.filter(o => o.value !== 'all') }, + { key: 'type', label: 'Type', icon: 'category', options: issueTypes.value }, + { key: 'priorite', label: 'Priorité', icon: 'priority_high', options: priorityOptions }, +]) +let filterTimer = null +function onFilterChange (s) { + search.value = s.search || '' + statusFilter.value = s.chips.statut || 'all' + typeFilter.value = s.chips.type || null + priorityFilter.value = s.chips.priorite || null + clearTimeout(filterTimer) + filterTimer = setTimeout(() => resetAndLoad(), 300) +} const tickets = ref([]) // Tri « façon F » : dans les vues scopées (Mes tickets), RANGER par priorité (Urgent→Bas) côté client — // ERPNext+Postgres ne range pas une priorité Select dans l'ORDER BY, et l'ensemble scopé tient sur 1 page.