исправил подсчёт уровней - максимальный уровень сотрудника

This commit is contained in:
Novikova.Yelena 2026-08-19 06:55:47 +00:00
parent 2b81846428
commit c0ac1154d3
3 changed files with 24 additions and 5 deletions

View File

@ -22,3 +22,7 @@ up to date in 360ms
up to date in 362ms up to date in 362ms
Сервер запущен на порту 3000 Сервер запущен на порту 3000
--- run Wed Aug 19 06:48:55 AM UTC 2026 :: npm start --silent
up to date in 437ms
Сервер запущен на порту 3000

View File

@ -1 +1 @@
1979 2218

View File

@ -395,11 +395,26 @@
function renderStats() { function renderStats() {
const total = allData.length; const total = allData.length;
const employees = new Set(allData.map(d => d.name)).size;
const specialist = allData.filter(d => d.level === 'Специалист').length;
const professional = allData.filter(d => d.level === 'Профессионал').length;
const expert = allData.filter(d => d.level === 'Эксперт').length;
const vendors = new Set(allData.map(d => d.vendor)).size; const vendors = new Set(allData.map(d => d.vendor)).size;
// Группируем по сотрудникам и находим максимальный уровень
const levelPriority = { 'Специалист': 1, 'Профессионал': 2, 'Эксперт': 3 };
const employeeMaxLevel = {};
allData.forEach(d => {
if (d.name) {
const currentMax = employeeMaxLevel[d.name] || 0;
const newLevel = levelPriority[d.level] || 0;
if (newLevel > currentMax) {
employeeMaxLevel[d.name] = newLevel;
}
}
});
const employees = Object.keys(employeeMaxLevel).length;
const specialist = Object.values(employeeMaxLevel).filter(l => l === 1).length;
const professional = Object.values(employeeMaxLevel).filter(l => l === 2).length;
const expert = Object.values(employeeMaxLevel).filter(l => l === 3).length;
document.getElementById('stat-total').textContent = total; document.getElementById('stat-total').textContent = total;
document.getElementById('stat-employees').textContent = employees; document.getElementById('stat-employees').textContent = employees;