feat(helpdesk): add software updates tracking with BC ticket integration

New Updates page in the Helpdesk module that fetches UPDATE/UPDATE-HF tickets
from Business Central (PBI_LV_Tickets) and allows assigning a domain and Gitea
link via a dialog. Ticket status (from BC) and assignment status (local) are
shown as separate columns with filters for both plus type and free-text search.
Assigned updates also appear on the domain detail page. Includes session-cached
BC fetch with refresh button, admin permissions, migration, and 16 unit tests.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-16 13:21:40 +02:00
parent 693d33a0c8
commit da0abc824a
23 changed files with 1971 additions and 6 deletions

View File

@@ -17,6 +17,8 @@ return [
['path' => 'helpdesk/search-data', 'target' => 'helpdesk/search-data'],
['path' => 'helpdesk/domains', 'target' => 'helpdesk/domains'],
['path' => 'helpdesk/domains-data', 'target' => 'helpdesk/domains-data'],
['path' => 'helpdesk/domain/{id}', 'target' => 'helpdesk/domain'],
['path' => 'helpdesk/domain-detail-data', 'target' => 'helpdesk/domain-detail-data'],
['path' => 'helpdesk/debitor/{id}', 'target' => 'helpdesk/debitor'],
['path' => 'helpdesk/ticket/{id}', 'target' => 'helpdesk/ticket'],
['path' => 'helpdesk/settings', 'target' => 'helpdesk/settings'],
@@ -46,7 +48,13 @@ return [
['path' => 'helpdesk/handovers-data', 'target' => 'helpdesk/handovers-data'],
['path' => 'helpdesk/handovers/create', 'target' => 'helpdesk/handovers/create'],
['path' => 'helpdesk/handovers/edit/{id}', 'target' => 'helpdesk/handovers/edit'],
['path' => 'helpdesk/handovers/bulk/{action}', 'target' => 'helpdesk/handovers/bulk'],
['path' => 'helpdesk/debitor-lookup-data', 'target' => 'helpdesk/debitor-lookup-data'],
['path' => 'helpdesk/handover-domains-data', 'target' => 'helpdesk/handover-domains-data'],
['path' => 'helpdesk/updates', 'target' => 'helpdesk/updates'],
['path' => 'helpdesk/updates-data', 'target' => 'helpdesk/updates-data'],
['path' => 'helpdesk/updates/assign', 'target' => 'helpdesk/updates/assign'],
['path' => 'helpdesk/update-domains-data', 'target' => 'helpdesk/update-domains-data'],
],
'public_paths' => [],
@@ -124,6 +132,18 @@ return [
'active' => true,
'is_system' => true,
],
[
'key' => 'helpdesk.updates.view',
'description' => 'View software updates list',
'active' => true,
'is_system' => true,
],
[
'key' => 'helpdesk.updates.manage',
'description' => 'Assign and manage software updates',
'active' => true,
'is_system' => true,
],
],
'search_resources' => [],