feat(helpdesk): add Risk Radar dashboard with customer risk scoring
New portfolio view scoring customers 0-100 across five dimensions: - Open pressure (30%): open + critical ticket count - Trend (25%): net ticket flow (created - closed) in period - SLA overdue (20%): tickets exceeding escalation targets - Resolution time (15%): median hours to close (null = neutral) - Inactivity (10%): age of oldest open ticket Card grid with score badges (color-coded high/medium/low), metric pills, driver bars. Click opens detail dialog with all dimensions and open ticket list. Clientside search filter. PBI_LV_Tickets with client-driven paging ($skip/$top, hardcap 5000). Escalation definitions cached separately (30min TTL). Truncated banner when data is capped. New: RiskRadarService, getTicketsForRiskRadar(), 13 PHPUnit tests, permission helpdesk.risk-radar.view, 2 routes, i18n de+en. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -34,6 +34,8 @@ return [
|
||||
['path' => 'helpdesk/debitor-controlling-dashboard-data', 'target' => 'helpdesk/debitor-controlling-dashboard-data'],
|
||||
['path' => 'helpdesk/team', 'target' => 'helpdesk/team'],
|
||||
['path' => 'helpdesk/team-workload-data', 'target' => 'helpdesk/team-workload-data'],
|
||||
['path' => 'helpdesk/risk-radar', 'target' => 'helpdesk/risk-radar'],
|
||||
['path' => 'helpdesk/risk-radar-data', 'target' => 'helpdesk/risk-radar-data'],
|
||||
],
|
||||
'public_paths' => [],
|
||||
|
||||
@@ -80,6 +82,12 @@ return [
|
||||
'active' => true,
|
||||
'is_system' => true,
|
||||
],
|
||||
[
|
||||
'key' => 'helpdesk.risk-radar.view',
|
||||
'description' => 'View helpdesk risk radar dashboard',
|
||||
'active' => true,
|
||||
'is_system' => true,
|
||||
],
|
||||
],
|
||||
|
||||
'search_resources' => [],
|
||||
|
||||
Reference in New Issue
Block a user