feat(reporting): add total time utilization component and enhance localization

- Introduced a new TotalTimeUtilization component to display total time logged, expected capacity, and team utilization metrics.
- Updated existing time-report localization files to include new keys for total time logged, expected capacity, and utilization states across multiple languages.
- Refactored MembersTimeReports to integrate the new TotalTimeUtilization component, improving the reporting interface.
- Enhanced the overall structure and organization of the reporting components for better maintainability.
This commit is contained in:
chamikaJ
2025-07-24 11:41:04 +05:30
parent 20ce0c9687
commit 67a75685a9
11 changed files with 525 additions and 27 deletions

View File

@@ -58,5 +58,20 @@
"showSelected": "Shfaq Vetëm të Zgjedhurat",
"expandAll": "Zgjero të Gjitha",
"collapseAll": "Mbyll të Gjitha",
"ungrouped": "Pa Grupuar"
"ungrouped": "Pa Grupuar",
"totalTimeLogged": "Koha Totale e Regjistruar",
"acrossAllTeamMembers": "Në të gjithë anëtarët e ekipit",
"expectedCapacity": "Kapaciteti i Pritur",
"basedOnWorkingSchedule": "Bazuar në orarin e punës",
"teamUtilization": "Përdorimi i Ekipit",
"targetRange": "Gama e Objektivit",
"variance": "Varianca",
"overCapacity": "Mbi Kapacitetin",
"underCapacity": "Nën Kapacitetin",
"considerWorkloadRedistribution": "Konsidero rishpërndarjen e ngarkesës së punës",
"capacityAvailableForNewProjects": "Kapaciteti i disponueshëm për projekte të reja",
"optimal": "Optimal",
"underUtilized": "I Përdorur Pak",
"overUtilized": "I Përdorur Shumë"
}

View File

@@ -58,5 +58,20 @@
"showSelected": "Nur Ausgewählte anzeigen",
"expandAll": "Alle erweitern",
"collapseAll": "Alle einklappen",
"ungrouped": "Nicht gruppiert"
"ungrouped": "Nicht gruppiert",
"totalTimeLogged": "Gesamte erfasste Zeit",
"acrossAllTeamMembers": "Über alle Teammitglieder",
"expectedCapacity": "Erwartete Kapazität",
"basedOnWorkingSchedule": "Basierend auf Arbeitsplan",
"teamUtilization": "Team-Auslastung",
"targetRange": "Zielbereich",
"variance": "Abweichung",
"overCapacity": "Überkapazität",
"underCapacity": "Unterkapazität",
"considerWorkloadRedistribution": "Arbeitslast-Umverteilung erwägen",
"capacityAvailableForNewProjects": "Kapazität für neue Projekte verfügbar",
"optimal": "Optimal",
"underUtilized": "Unterausgelastet",
"overUtilized": "Überausgelastet"
}

View File

@@ -59,5 +59,20 @@
"showSelected": "Show Selected Only",
"expandAll": "Expand All",
"collapseAll": "Collapse All",
"ungrouped": "Ungrouped"
"ungrouped": "Ungrouped",
"totalTimeLogged": "Total Time Logged",
"acrossAllTeamMembers": "Across all team members",
"expectedCapacity": "Expected Capacity",
"basedOnWorkingSchedule": "Based on working schedule",
"teamUtilization": "Team Utilization",
"targetRange": "Target Range",
"variance": "Variance",
"overCapacity": "Over Capacity",
"underCapacity": "Under Capacity",
"considerWorkloadRedistribution": "Consider workload redistribution",
"capacityAvailableForNewProjects": "Capacity available for new projects",
"optimal": "Optimal",
"underUtilized": "Under Utilized",
"overUtilized": "Over Utilized"
}

View File

@@ -59,5 +59,20 @@
"showSelected": "Mostrar Solo Seleccionados",
"expandAll": "Expandir Todo",
"collapseAll": "Contraer Todo",
"ungrouped": "Sin Agrupar"
"ungrouped": "Sin Agrupar",
"totalTimeLogged": "Tiempo Total Registrado",
"acrossAllTeamMembers": "En todos los miembros del equipo",
"expectedCapacity": "Capacidad Esperada",
"basedOnWorkingSchedule": "Basado en el horario de trabajo",
"teamUtilization": "Utilización del Equipo",
"targetRange": "Rango Objetivo",
"variance": "Varianza",
"overCapacity": "Sobre Capacidad",
"underCapacity": "Bajo Capacidad",
"considerWorkloadRedistribution": "Considerar redistribución de carga de trabajo",
"capacityAvailableForNewProjects": "Capacidad disponible para nuevos proyectos",
"optimal": "Óptimo",
"underUtilized": "Subutilizado",
"overUtilized": "Sobreutilizado"
}

View File

@@ -59,5 +59,20 @@
"showSelected": "Mostrar Apenas Selecionados",
"expandAll": "Expandir Tudo",
"collapseAll": "Recolher Tudo",
"ungrouped": "Não Agrupado"
"ungrouped": "Não Agrupado",
"totalTimeLogged": "Tempo Total Registrado",
"acrossAllTeamMembers": "Em todos os membros da equipe",
"expectedCapacity": "Capacidade Esperada",
"basedOnWorkingSchedule": "Baseado no cronograma de trabalho",
"teamUtilization": "Utilização da Equipe",
"targetRange": "Faixa Alvo",
"variance": "Variância",
"overCapacity": "Sobre Capacidade",
"underCapacity": "Abaixo da Capacidade",
"considerWorkloadRedistribution": "Considerar redistribuição de carga de trabalho",
"capacityAvailableForNewProjects": "Capacidade disponível para novos projetos",
"optimal": "Ótimo",
"underUtilized": "Subutilizado",
"overUtilized": "Sobreutilizado"
}

View File

@@ -47,5 +47,20 @@
"showSelected": "仅显示已选择",
"expandAll": "全部展开",
"collapseAll": "全部折叠",
"ungrouped": "未分组"
"ungrouped": "未分组",
"totalTimeLogged": "总记录时间",
"acrossAllTeamMembers": "跨所有团队成员",
"expectedCapacity": "预期容量",
"basedOnWorkingSchedule": "基于工作时间表",
"teamUtilization": "团队利用率",
"targetRange": "目标范围",
"variance": "差异",
"overCapacity": "超出容量",
"underCapacity": "容量不足",
"considerWorkloadRedistribution": "考虑工作负载重新分配",
"capacityAvailableForNewProjects": "可用于新项目的容量",
"optimal": "最佳",
"underUtilized": "利用率不足",
"overUtilized": "过度利用"
}