Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz Source: /opt/alga-psa on psa.joliet.tech
314 lines
11 KiB
JSON
314 lines
11 KiB
JSON
{
|
|
"page": {
|
|
"title": "Informes"
|
|
},
|
|
"actions": {
|
|
"refresh": "Actualizar"
|
|
},
|
|
"placeholders": {
|
|
"selectContract": "Seleccionar contrato..."
|
|
},
|
|
"units": {
|
|
"hoursShort": "h",
|
|
"days": "días",
|
|
"percent": "%",
|
|
"dash": "—"
|
|
},
|
|
"reportsPage": {
|
|
"cards": {
|
|
"timeUtilization": {
|
|
"title": "Utilización del tiempo",
|
|
"placeholder": "[Marcador de posición del gráfico de utilización del tiempo]"
|
|
},
|
|
"projectProgress": {
|
|
"title": "Progreso del proyecto",
|
|
"placeholder": "[Marcador de posición del gráfico de progreso del proyecto]"
|
|
},
|
|
"revenueByClient": {
|
|
"title": "Ingresos por cliente",
|
|
"placeholder": "[Marcador de posición del gráfico de ingresos por cliente]"
|
|
},
|
|
"teamPerformance": {
|
|
"title": "Rendimiento del equipo",
|
|
"placeholder": "[Marcador de posición del gráfico de rendimiento del equipo]"
|
|
}
|
|
},
|
|
"description": "Informes operativos predefinidos para el espacio de trabajo actual. Más personalización se añadirá sobre este catálogo más adelante.",
|
|
"categories": {
|
|
"helpdesk": "Mesa de ayuda",
|
|
"operations": "Operaciones",
|
|
"billing": "Facturación"
|
|
},
|
|
"badges": {
|
|
"planned": "Planificado"
|
|
},
|
|
"actions": {
|
|
"viewReport": "Ver informe",
|
|
"openInBilling": "Abrir en facturación",
|
|
"requiresTier": "Requiere {{tier}}",
|
|
"comingSoon": "Próximamente"
|
|
},
|
|
"errors": {
|
|
"loadReport": "No se pudo cargar el informe."
|
|
},
|
|
"empty": {
|
|
"noData": "No hay datos para este informe.",
|
|
"noOpenTicketsInRange": "No hay tickets abiertos en este intervalo.",
|
|
"noDate": "Sin fecha",
|
|
"notAvailable": "n/d",
|
|
"noEmailChannels": "No hay canales de correo configurados."
|
|
},
|
|
"fallbackTitle": "Informe",
|
|
"dateRange": {
|
|
"lastDays": "Últimos {{count}} días"
|
|
},
|
|
"units": {
|
|
"daysWithCount": "{{count}} días"
|
|
},
|
|
"metrics": {
|
|
"created": "Creados",
|
|
"closed": "Cerrados",
|
|
"openNow": "Abiertos ahora",
|
|
"awaitingCustomer": "Esperando al cliente",
|
|
"awaitingInternal": "Esperando internamente",
|
|
"under2Days": "Menos de 2 días",
|
|
"days2To7": "2 a 7 días",
|
|
"days8To30": "8 a 30 días",
|
|
"over30Days": "Más de 30 días",
|
|
"activeChannels": "Canales activos",
|
|
"healthyChannels": "Canales correctos",
|
|
"problemChannels": "Canales con problemas",
|
|
"emailsProcessed": "Correos procesados",
|
|
"ticketsFromEmail": "Tickets por correo",
|
|
"failedEmails": "Correos fallidos",
|
|
"avgProcessingTime": "Tiempo medio de procesamiento",
|
|
"avgTicketCreationTime": "Tiempo medio correo-ticket",
|
|
"totalHours": "Horas totales",
|
|
"billableHours": "Horas facturables",
|
|
"nonBillableHours": "Horas no facturables",
|
|
"billablePercent": "% facturable",
|
|
"timeEntries": "Entradas de tiempo",
|
|
"activeContracts": "Contratos activos",
|
|
"monthlyRecurring": "Recurrente mensual",
|
|
"renewalsDue": "Renovaciones pendientes",
|
|
"bucketUsedHours": "Horas de bolsa usadas",
|
|
"bucketOverageHours": "Exceso de bolsa",
|
|
"openAssigned": "Abiertos asignados",
|
|
"activeAssignees": "Asignados activos",
|
|
"avgResolutionTime": "Tiempo medio de resolucion"
|
|
},
|
|
"sections": {
|
|
"openByStatus": "Abiertos por estado",
|
|
"openByPriority": "Abiertos por prioridad",
|
|
"openByAssignee": "Abiertos por responsable",
|
|
"ageDistribution": "Distribución por antigüedad",
|
|
"responseOwnership": "Responsable de respuesta",
|
|
"oldestOpenTickets": "Tickets abiertos más antiguos",
|
|
"emailProcessingStatus": "Estado de procesamiento",
|
|
"emailChannels": "Canales de correo",
|
|
"timeByUser": "Tiempo por usuario",
|
|
"billableHoursByService": "Horas facturables por servicio",
|
|
"entriesByWorkType": "Entradas por tipo de trabajo",
|
|
"contractRevenue": "Ingresos de contratos",
|
|
"upcomingRenewals": "Renovaciones proximas",
|
|
"bucketUsage": "Uso de bolsa",
|
|
"performanceByAssignee": "Rendimiento por asignado",
|
|
"closedByAssignee": "Cerrados por asignado"
|
|
},
|
|
"reportCatalog": {
|
|
"ticketWorkload": {
|
|
"title": "Carga de tickets",
|
|
"description": "Tickets creados, cerrados y abiertos actualmente agrupados por estado, prioridad y responsable."
|
|
},
|
|
"ticketAging": {
|
|
"title": "Antigüedad de tickets",
|
|
"description": "Rangos de antigüedad de tickets abiertos, responsable de respuesta y tickets activos más antiguos."
|
|
},
|
|
"emailChannelHealth": {
|
|
"title": "Estado de canales de correo",
|
|
"description": "Volumen de correo entrante, velocidad de creacion de tickets y estado de conexion de los buzones."
|
|
},
|
|
"timeUtilization": {
|
|
"title": "Utilización de tiempo",
|
|
"description": "Trabajo registrado por persona y área de servicio para operaciones PSA."
|
|
},
|
|
"teamPerformance": {
|
|
"title": "Rendimiento del equipo",
|
|
"description": "Productividad del equipo y responsable de respuesta para espacios con varios usuarios."
|
|
},
|
|
"contractReports": {
|
|
"title": "Informes de contratos",
|
|
"description": "Ingresos de contratos, renovaciones, uso de bolsas y rentabilidad simple."
|
|
}
|
|
},
|
|
"table": {
|
|
"channel": "Canal",
|
|
"status": "Estado",
|
|
"processed": "Procesados",
|
|
"tickets": "Tickets",
|
|
"avgEmailToTicket": "Prom. correo a ticket",
|
|
"assignee": "Asignado",
|
|
"created": "Creados",
|
|
"closed": "Cerrados",
|
|
"open": "Abiertos",
|
|
"avgResolution": "Resolucion media",
|
|
"user": "Usuario",
|
|
"totalHours": "Horas totales",
|
|
"billableHours": "Horas facturables",
|
|
"entries": "Entradas",
|
|
"ticket": "Ticket",
|
|
"entered": "Ingresado",
|
|
"age": "Antiguedad"
|
|
},
|
|
"statusValues": {
|
|
"connected": "Conectado",
|
|
"disconnected": "Desconectado",
|
|
"error": "Error",
|
|
"configuring": "Configurando",
|
|
"unknown": "Desconocido",
|
|
"success": "Correcto",
|
|
"failed": "Fallido",
|
|
"partial": "Parcial",
|
|
"processing": "Procesando"
|
|
}
|
|
},
|
|
"contractReports": {
|
|
"title": "Informes de contratos",
|
|
"description": "Analizar el rendimiento de los contratos, los ingresos y las métricas de utilización",
|
|
"errors": {
|
|
"loadingTitle": "Error al cargar los informes",
|
|
"loadData": "No se pudieron cargar los datos del informe"
|
|
},
|
|
"summary": {
|
|
"totalMRR": {
|
|
"title": "MRR total",
|
|
"subtitle": "Ingresos recurrentes mensuales"
|
|
},
|
|
"ytdRevenue": {
|
|
"title": "Ingresos acumulados",
|
|
"subtitle": "Acumulado del año por períodos de servicio facturados"
|
|
},
|
|
"activeContracts": {
|
|
"title": "Contratos activos",
|
|
"subtitle": "Asignaciones activas"
|
|
},
|
|
"renewalDecisions": {
|
|
"title": "Decisiones de renovación pendientes",
|
|
"subtitle": "Fechas de decisión en los próximos 90 días"
|
|
}
|
|
},
|
|
"tabs": {
|
|
"revenue": "Ingresos por contrato",
|
|
"expiration": "Vencimiento",
|
|
"bucketUsage": "Horas de paquete",
|
|
"profitability": "Rentabilidad"
|
|
},
|
|
"sections": {
|
|
"revenue": {
|
|
"title": "Informe de ingresos por contrato",
|
|
"description": "Resumen de los ingresos recurrentes mensuales y períodos de servicio facturados acumulados por contrato.",
|
|
"empty": "No hay datos de ingresos por contrato disponibles"
|
|
},
|
|
"expiration": {
|
|
"title": "Vencimiento de contratos y decisiones de renovación",
|
|
"description": "Seguimiento de los vencimientos de contratos próximos y de las fechas límite de decisión de renovación.",
|
|
"empty": "No hay vencimientos de contratos ni decisiones de renovación a corto plazo"
|
|
},
|
|
"bucketUsage": {
|
|
"title": "Utilización de horas de paquete",
|
|
"description": "Supervisar el uso de horas de paquete e identificar situaciones de exceso",
|
|
"empty": "No se encontraron contratos basados en paquetes"
|
|
},
|
|
"profitability": {
|
|
"title": "Informe de rentabilidad simple",
|
|
"description": "Análisis básico de márgenes de beneficio e ingresos frente a costos por contrato",
|
|
"empty": "No hay datos de rentabilidad disponibles"
|
|
}
|
|
},
|
|
"table": {
|
|
"contract": "Contrato",
|
|
"client": "Cliente",
|
|
"monthlyRecurring": "Recurrente mensual",
|
|
"totalBilledYtd": "Total facturado (YTD)",
|
|
"status": "Estado",
|
|
"endDate": "Fecha de fin",
|
|
"daysUntilExpiration": "Días hasta el vencimiento",
|
|
"monthlyValue": "Valor mensual",
|
|
"autoRenew": "Renovación automática",
|
|
"totalHours": "Horas totales",
|
|
"usedHours": "Horas usadas",
|
|
"remaining": "Restante",
|
|
"utilization": "Utilización",
|
|
"overage": "Exceso",
|
|
"revenueYtd": "Ingresos (YTD)",
|
|
"costYtd": "Coste (YTD)",
|
|
"profit": "Beneficio",
|
|
"margin": "Margen"
|
|
},
|
|
"statusValues": {
|
|
"active": "Activo",
|
|
"upcoming": "Próximo",
|
|
"yes": "Sí",
|
|
"no": "No"
|
|
}
|
|
},
|
|
"contractPerformance": {
|
|
"title": "Métricas de rendimiento de contratos",
|
|
"errors": {
|
|
"loadData": "No se pudieron cargar los datos del contrato"
|
|
},
|
|
"metrics": {
|
|
"totalClients": "Clientes totales",
|
|
"activeClients": "Clientes activos",
|
|
"totalPlans": "Planes totales",
|
|
"averagePlansPerClient": "Prom. de planes por cliente",
|
|
"totalRevenue": "Ingresos totales",
|
|
"averageRevenuePerClient": "Prom. de ingresos por cliente"
|
|
},
|
|
"empty": {
|
|
"selectContract": "Seleccione un contrato para ver las métricas de rendimiento",
|
|
"noContracts": "No hay contratos disponibles"
|
|
},
|
|
"comparison": {
|
|
"title": "Comparación de contratos",
|
|
"table": {
|
|
"contract": "Contrato",
|
|
"clients": "Clientes",
|
|
"plans": "Planes",
|
|
"revenue": "Ingresos"
|
|
}
|
|
}
|
|
},
|
|
"contractUsage": {
|
|
"title": "Informe de uso de contratos",
|
|
"errors": {
|
|
"loadInitialData": "No se pudieron cargar los datos iniciales",
|
|
"loadUsageData": "No se pudieron cargar los datos de uso del contrato"
|
|
},
|
|
"empty": {
|
|
"noClientsUsingContract": "Ningún cliente está usando este contrato",
|
|
"selectContract": "Seleccione un contrato para ver los datos de uso"
|
|
},
|
|
"table": {
|
|
"client": "Cliente",
|
|
"startDate": "Fecha de inicio",
|
|
"endDate": "Fecha de fin",
|
|
"contractLines": "Líneas de contrato",
|
|
"totalBilled": "Total facturado",
|
|
"status": "Estado"
|
|
},
|
|
"statusValues": {
|
|
"active": "Activo",
|
|
"inactive": "Inactivo",
|
|
"ongoing": "En curso",
|
|
"unknownClient": "Cliente desconocido"
|
|
},
|
|
"summary": {
|
|
"title": "Resumen",
|
|
"totalClients": "Clientes totales",
|
|
"activeAssignments": "Asignaciones activas",
|
|
"totalBilled": "Total facturado"
|
|
}
|
|
}
|
|
}
|