Replace custom card layout with the existing debitor dashboard pattern:
each agent is a section with helpdesk-support-section-title (avatar
initials + name + count badge + line) and a ticket table underneath
(Ticket No, Customer, Description, Age). Critical rows highlighted.
Queue section uses same pattern without avatar. Performance tab uses
compact rows with avatar + name + resolved badge. No custom card or
pill styles — consistent with existing dashboard widgets.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove progress bars (meaningless without a defined per-agent limit),
remove deterministic hue coloring (too noisy), and fix spacing by using
gap on a container grid instead of border-bottom on items. Avatars now
use a single neutral style. Count badges remain as the key indicator
(warning-colored when critical tickets exist). Cleaner, quieter layout.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace card-with-ticket-list layout with a GitHub/Stripe-inspired design:
- Avatar initials circles with deterministic colors per agent (name → hue)
- Horizontal agent rows: avatar | name + count badge | load bar | ticket pills
- Ticket pills showing No · Customer · Age (description on hover/title)
- Critical tickets highlighted with warning color in pills
- Queue section at top with uppercase header and ticket pills directly
- Performance tab with smaller avatars and success-colored bars
- Agent load bars colored per-agent (matching avatar hue)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace KPI tiles + table with visual agent cards showing workload at a
glance. Each card has the agent name, ticket count badge (warning-colored
when critical), a proportional load bar, and the actual open tickets
listed underneath (number, description, age). Critical tickets are
highlighted with warning color. Queue (unassigned) shown as dashed card
at top. Performance tab uses compact cards with success-colored bars.
Backend now returns open_ticket_details per member (sorted: critical
first, then by age descending).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Filter out agents with 0 open tickets from Current tab and 0 resolved
from Performance tab to reduce noise. Add margin between period selector
and KPI card in the Performance panel.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Current tab: proportional bars behind open ticket counts for instant
visual comparison, warning badges for critical counts (>0), muted
styling for zero values. Performance tab: success-colored bars behind
resolved counts. Unassigned row gets muted bar variant.
Adds tabular-nums for aligned numbers, smooth bar transitions, and
de-emphasized table borders for a cleaner visual hierarchy.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Current tab: snapshot KPIs (open, unassigned, avg age) and per-agent
table with open/critical/age columns. No period filter needed.
Performance tab: period-filtered KPI (resolved) with segment control
(30/90/180/365d) and per-agent table sorted by resolved count.
Separates the two core questions: "Who needs help now?" vs.
"How did the team perform over time?"
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace custom button-based period selector with the existing
helpdesk-segment-control radio+label pattern used in the controlling
dashboard. Removes duplicate CSS and ensures visual consistency.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
New standalone page (helpdesk/team) showing support agent workload
aggregated from BC tickets. KPI bar (open, unassigned, avg age, resolved),
per-agent table sorted by open tickets, period selector (30/90/180/365d).
Global OData query via getTicketsForTeam() without customer filter.
New permission helpdesk.team-workload.view with admin role assignment.
Includes 6 PHPUnit tests for buildTeamWorkloadDashboard().
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>