Matthias Hochmeister
4ec719ad0a
feat(persoenliche-ausruestung): add quantity field and article-grouped replacement flow in order dialog
2026-04-24 12:36:28 +02:00
Matthias Hochmeister
9410441ce2
feat(checklisten): rework checklist scheduling, overview, and execution UI
2026-04-20 18:37:00 +02:00
Matthias Hochmeister
c55ec55e1b
feat(admin): move integration URLs and credentials to GUI settings
2026-04-20 16:29:12 +02:00
Matthias Hochmeister
65820805b0
style(frontend): format Lehrgang section in member detail to match other Atemschutz sub-sections
2026-04-20 11:53:48 +02:00
Matthias Hochmeister
752dfe474c
change dat format in member overview, sync exams to atemschutz tool, rework member detail page
2026-04-20 10:32:20 +02:00
Matthias Hochmeister
d796fae978
feat(sync): fix exam sync pagination, add AGL/AT20-Theorie lehrgang variants with yellow checkmark
2026-04-19 19:28:22 +02:00
Matthias Hochmeister
8c25cb0d40
feat(admin): add reset-atemschutz option to data management tab
2026-04-19 17:43:48 +02:00
Matthias Hochmeister
0a5402a9e5
feat(admin): add system logs viewer, tabbed data management, fix AT20 sync
2026-04-18 18:31:22 +02:00
Matthias Hochmeister
0a6377a64f
fix(sync): remove debug file writing and optimize DB queries
2026-04-18 18:15:40 +02:00
Matthias Hochmeister
26df8b427e
fix(mitglieder): improve Fahrgenehmigungen labels, pagination, and AT20 sync
2026-04-18 18:00:54 +02:00
Matthias Hochmeister
e1c7f44e56
fix(sync): switch FDISK course scraper from Ausbildungen to Kurse page
2026-04-18 16:46:35 +02:00
Matthias Hochmeister
8e6868eb55
fix(permissions): restore sticky left column on permission rows to prevent checkbox overlap
2026-04-18 16:32:42 +02:00
Matthias Hochmeister
bef5a685a8
fix(permissions): flatten permission matrix table to fix column alignment and scroll lag
2026-04-18 16:20:44 +02:00
Matthias Hochmeister
fa9f50d982
fix(buchhaltung): show Übersicht tab first and count all booked transactions in budget overview
2026-04-18 16:16:50 +02:00
Matthias Hochmeister
e4c37ba219
fix(ausruestungsanfrage): correct API paths, assignment navigation, and pre-fill user on Zuweisung page
2026-04-17 13:07:15 +02:00
Matthias Hochmeister
169d045e4c
feat(ausruestungsanfrage): show vendor order status and delivery progress in request detail
2026-04-17 12:39:40 +02:00
Matthias Hochmeister
d8afcc1f63
fix(geplante-nachrichten): add /api prefix to all API paths, fix subscribe room token, unmask empty bot credentials, add Einzelnachrichten tab
2026-04-17 12:33:48 +02:00
Matthias Hochmeister
fcca04cc39
fix(bestellungen): automate delivery status transitions, enable received-qty input for creators, and add im_haus tracking to positionen
2026-04-17 11:42:12 +02:00
Matthias Hochmeister
7d2ea57c17
fix(frontend): order status button colors, delivery gate logic, partial delivery chips, and scheduled message form tweaks
2026-04-17 10:50:42 +02:00
Matthias Hochmeister
b91cf88812
add: add feature to schedule messages
2026-04-17 10:41:00 +02:00
Matthias Hochmeister
5811ac201e
fix(geplante-nachrichten): distinguish unconfigured bot from unreachable Nextcloud in room picker
2026-04-17 09:47:31 +02:00
Matthias Hochmeister
8a0c4200ff
feat(geplante-nachrichten): scheduled message rule engine with bot delivery, admin UI, and manual trigger
2026-04-17 09:10:57 +02:00
Matthias Hochmeister
6614fbaa68
feat(admin): centralize tool & module settings in Werkzeuge tab with per-tool permissions, DB-backed config, connection tests, and cog-button navigation
2026-04-17 08:37:29 +02:00
Matthias Hochmeister
6ead698294
refactor(sidebar): remove all dropdown sub-menus, flatten navigation to direct links
2026-04-16 16:25:06 +02:00
Matthias Hochmeister
dfcdd44aa4
refactor(admin): consolidate 10 flat tabs into 4 grouped tabs with sub-tabs, remove Bestellungen tab, replace Debug with FDISK Sync
2026-04-16 16:14:25 +02:00
Matthias Hochmeister
e56075f38a
fix(issues): allow priority+status change for assignees, dynamic owner transitions, kanban droppable columns; feat(persoenliche-ausruestung): configurable zustand
2026-04-16 14:08:05 +02:00
Matthias Hochmeister
2fe0db6d9a
fix(persoenliche-ausruestung): wait for permissions before fetching overview to show all items
2026-04-16 09:17:36 +02:00
Matthias Hochmeister
058ee721e8
feat(persoenliche-ausruestung): show catalog category, remove size/date columns, make zustand admin-configurable
2026-04-16 08:19:38 +02:00
Matthias Hochmeister
dac0b79b3b
eat(ausruestung): allow create role to view full list, add Mitglieder pagination, add admin reset for persoenliche Ausruestung
2026-04-16 07:52:36 +02:00
Matthias Hochmeister
3f8c4d151d
fix(persoenliche-ausruestung): save characteristics on create/edit and add editable eigenschaft fields to assignment page
2026-04-15 20:06:02 +02:00
Matthias Hochmeister
260b71baf8
refactor(mitglieder): replace legacy status values (passiv/anwärter/ausgetreten/…) with aktiv/kind/jugend/reserve across backend, frontend, and sync
2026-04-15 19:43:18 +02:00
Matthias Hochmeister
c1de8bd163
fix(dienstgrad): add ASB→Abschnittssachbearbeiter, remove non-existent ranks (FA/FF/BOI/BAM variants), sync DB constraint, TS types, and display map
2026-04-15 19:26:21 +02:00
Matthias Hochmeister
eb2342684e
feat(bestellungen): add optional "Für Mitglied" field, auto-populated from internal request submitter
2026-04-15 18:17:54 +02:00
Matthias Hochmeister
67fd0878ce
fix(sync): add Sachbearbeiter to dienstgrad constraint; add catalog browser dialog for external order position
2026-04-15 18:05:39 +02:00
Matthias Hochmeister
dab4a45b79
fix(shop): don't load assigned items until a user is explicitly selected
2026-04-15 14:21:30 +02:00
Matthias Hochmeister
c3fcbd1467
fix(bestellungen): use status label as button text, all progress buttons blue, keep red for reject only
2026-04-15 14:03:54 +02:00
Matthias Hochmeister
6ff531f79c
refactor(mitglieder): split member profile into Stammdaten/Ausrüstung/Qualifikationen tabs with sub-tabs per qualification type
2026-04-15 13:55:16 +02:00
Matthias Hochmeister
50dbf6e9fd
fix(multi): FDISK sync, order UX, Ausbildungen display, untracked items
...
FDISK sync:
- fix(sync): strip 'KFZ-Führerschein / ' prefix from license class select option text before whitelist validation
- fix(sync): fix navigateAndGetTableRows to pick date column with most matches (prevents sidebar tables from hijacking dateColIdx for Beförderungen)
- fix(sync): input.value fallback now falls through to textContent when value is empty
- feat(sync): expand Ausbildungen to capture Kursnummer, Kurz, Kurs (full name), Erfolgscode from FDISK table; add migration 086
External orders (Bestellungen):
- fix(bestellungen): allow erhalten_menge editing in lieferung_pruefen status (resolves deadlock preventing order completion)
- fix(bestellungen): show cost/received warnings for bestellt/teillieferung/lieferung_pruefen, not just when abgeschlossen is next
- feat(bestellungen): rename status labels to Eingereicht, Genehmigt, Teilweise geliefert, Vollständig geliefert
- fix(bestellungen): remove duplicate Bestelldatum from PDF export
- feat(bestellungen): add catalog item autocomplete to creation form (auto-fills bezeichnung + artikelnummer)
Internal orders (Ausruestungsanfrage):
- fix(ausruestung): untracked items with zuweisung_typ='keine' now appear in Nicht-zugewiesen tab (frontend filter was too strict)
- feat(ausruestung): load user-specific personal items when ordering for another user
- feat(ausruestung): auto-set ist_ersatz=true for items from personal equipment list; add toggle for catalog/free-text items
- feat(ausruestung): load item eigenschaften when personal item with artikel_id is checked
Ausbildungen display:
- feat(mitglieder): show kursname (full), kurs_kurzbezeichnung chip, erfolgscode chip (color-coded) per Ausbildung entry
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-15 13:22:04 +02:00
Matthias Hochmeister
916aa488d2
change label
2026-04-15 11:18:25 +02:00
Matthias Hochmeister
4c01683c10
fix(ausruestung): show untracked assignments, item traits in order wizard, receipt
...
gate for completion, PDF phone + last-row line
2026-04-15 10:58:51 +02:00
Matthias Hochmeister
279cc03b6b
feat(ausruestung): catalog-driven item tracking, im_haus in overview, order quantity override, fix stale queries
2026-04-15 10:20:36 +02:00
Matthias Hochmeister
633a75cb0b
feat(ausruestungsanfrage): add personal item tracking, catalog enforcement, and detail pages
2026-04-14 16:49:20 +02:00
Matthias Hochmeister
e6b6639fe9
fix(buchhaltung): format transaction IDs as YYYY/NR and deduplicate dashboard widgets
2026-04-14 15:00:38 +02:00
Matthias Hochmeister
a94d486a42
fix(buchhaltung): prevent form reset on query refetch during transaction edit
2026-04-14 14:46:34 +02:00
Matthias Hochmeister
7392bfc29f
feat(buchhaltung): replace transaction dialog with dedicated form page, enforce full field validation before booking
2026-04-14 14:41:30 +02:00
Matthias Hochmeister
967cad5922
feat(buchhaltung): add edit support for pending transactions
2026-04-14 13:46:07 +02:00
Matthias Hochmeister
f403c73334
fix(buchhaltung): clean up tab labels, remove badge indicator, add session notification for pending transactions
2026-04-14 13:35:40 +02:00
Matthias Hochmeister
3a8f166121
refactor(buchhaltung): simplify transaction workflow to two states, reorder tabs, guard booking, add overview divider
2026-04-14 13:16:45 +02:00
Matthias Hochmeister
588d8e81db
widget icon rework, widget grouping rework
2026-04-14 10:53:03 +02:00
Matthias Hochmeister
4fbea8af81
feat: widget icons, dark theme tables, breadcrumb removal, bookkeeping rework, personal equipment pages, PDF/order improvements
2026-04-14 10:35:40 +02:00