From e21b50fc38f7f1ee817e52b10c01e4ca1c322910 Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Wed, 14 Jan 2026 14:27:27 +0100 Subject: [PATCH] fix(accidentForm): update sorting logic to prioritize first name over last name - Modified the availableMembers computed property to sort filtered members alphabetically by first name first, followed by last name, ensuring a more intuitive display order. - Updated logging to reflect the new sorting format in the output. --- frontend/src/components/AccidentFormDialog.vue | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/frontend/src/components/AccidentFormDialog.vue b/frontend/src/components/AccidentFormDialog.vue index bb2b312..c4934a6 100644 --- a/frontend/src/components/AccidentFormDialog.vue +++ b/frontend/src/components/AccidentFormDialog.vue @@ -112,21 +112,21 @@ export default { const filtered = this.members.filter(m => participantSet.has(m.id)); console.log('[AccidentFormDialog] filtered.length:', filtered.length); - // Alphabetisch sortieren nach Nachname, dann Vorname + // Alphabetisch sortieren nach Vorname, dann Nachname (entspricht der Anzeige) // Erstelle ein neues Array, um Reaktivitätsprobleme zu vermeiden const sorted = filtered.slice().sort((a, b) => { - const lastNameA = (a.lastName || '').trim().toLowerCase(); - const lastNameB = (b.lastName || '').trim().toLowerCase(); - if (lastNameA !== lastNameB) { - return lastNameA.localeCompare(lastNameB, 'de', { sensitivity: 'base' }); - } const firstNameA = (a.firstName || '').trim().toLowerCase(); const firstNameB = (b.firstName || '').trim().toLowerCase(); - return firstNameA.localeCompare(firstNameB, 'de', { sensitivity: 'base' }); + if (firstNameA !== firstNameB) { + return firstNameA.localeCompare(firstNameB, 'de', { sensitivity: 'base' }); + } + const lastNameA = (a.lastName || '').trim().toLowerCase(); + const lastNameB = (b.lastName || '').trim().toLowerCase(); + return lastNameA.localeCompare(lastNameB, 'de', { sensitivity: 'base' }); }); console.log('[AccidentFormDialog] availableMembers computed - end, result.length:', sorted.length); - console.log('[AccidentFormDialog] First 3 sorted:', sorted.slice(0, 3).map(m => `${m.lastName}, ${m.firstName}`)); + console.log('[AccidentFormDialog] First 3 sorted:', sorted.slice(0, 3).map(m => `${m.firstName} ${m.lastName}`)); return sorted; }, isValid() {