DashboardView: mapeo de prioridad numérica (1/2/3) de KAPPA a etiquetas legibles
This commit is contained in:
+19
-12
@@ -106,22 +106,29 @@ function assignedName(hu: { id?: number; _assignedUserId?: number | null; _assig
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ─── Priority helpers ─────────────────────────────────
|
// ─── Priority helpers ─────────────────────────────────
|
||||||
|
const PRIORITY_MAP: Record<string, { label: string; variant: string }> = {
|
||||||
|
'1': { label: 'Alta', variant: 'destructive' },
|
||||||
|
'2': { label: 'Media', variant: 'default' },
|
||||||
|
'3': { label: 'Baja', variant: 'secondary' },
|
||||||
|
'alta': { label: 'Alta', variant: 'destructive' },
|
||||||
|
'high': { label: 'Alta', variant: 'destructive' },
|
||||||
|
'critical': { label: 'Crítica', variant: 'destructive' },
|
||||||
|
'urgente': { label: 'Urgente', variant: 'destructive' },
|
||||||
|
'media': { label: 'Media', variant: 'default' },
|
||||||
|
'medium': { label: 'Media', variant: 'default' },
|
||||||
|
'normal': { label: 'Media', variant: 'default' },
|
||||||
|
'baja': { label: 'Baja', variant: 'secondary' },
|
||||||
|
'low': { label: 'Baja', variant: 'secondary' },
|
||||||
|
}
|
||||||
|
|
||||||
function priorityVariant(p: unknown) {
|
function priorityVariant(p: unknown) {
|
||||||
const s = String(p ?? '').toLowerCase()
|
const s = String(p ?? '').toLowerCase().trim()
|
||||||
if (['alta', 'high', 'critical', 'urgente'].includes(s)) return 'destructive'
|
return (PRIORITY_MAP[s]?.variant ?? 'outline') as 'default' | 'destructive' | 'outline' | 'secondary'
|
||||||
if (['media', 'medium', 'normal'].includes(s)) return 'default'
|
|
||||||
if (['baja', 'low'].includes(s)) return 'secondary'
|
|
||||||
return 'outline'
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function priorityLabel(p: unknown) {
|
function priorityLabel(p: unknown) {
|
||||||
const s = String(p ?? '').toLowerCase()
|
const s = String(p ?? '').toLowerCase().trim()
|
||||||
if (['alta', 'high'].includes(s)) return 'Alta'
|
return PRIORITY_MAP[s]?.label ?? String(p ?? '—')
|
||||||
if (['media', 'medium', 'normal'].includes(s)) return 'Media'
|
|
||||||
if (['baja', 'low'].includes(s)) return 'Baja'
|
|
||||||
if (s === 'critical') return 'Crítica'
|
|
||||||
if (s === 'urgente') return 'Urgente'
|
|
||||||
return String(p ?? '—')
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ─── Filters ─────────────────────────────────────────
|
// ─── Filters ─────────────────────────────────────────
|
||||||
|
|||||||
Reference in New Issue
Block a user