enhanced trainer table with workload details

This commit is contained in:
Dauren777 2026-06-19 06:55:52 +00:00
parent 8174957976
commit 6a9235864e
2 changed files with 9 additions and 4 deletions

9
app.js
View File

@ -52,10 +52,13 @@ function build(raw) {
if (r.trainer) train[c].tr[r.trainer] = true;
var tr = r.trainer || '—';
if (!trainers[tr]) trainers[tr] = {n:0, sc:[], topics:[]};
if (!trainers[tr]) trainers[tr] = {n:0, sc:[], topics:[], trained:{}, divisions:{}};
trainers[tr].n++;
if (!isNaN(sc) && sc > 0) trainers[tr].sc.push(sc);
if (c && c !== 'Без темы') trainers[tr].topics.push(c);
if (r.name) trainers[tr].trained[r.name] = true;
var dv = r.division || '—';
trainers[tr].divisions[dv] = true;
});
var totalN = Object.keys(allN).length;
@ -73,7 +76,9 @@ function build(raw) {
var t = trainers[tr];
var topics = (t.topics && t.topics.length > 0) ? Array.from(new Set(t.topics)).join(', ') : '—';
var avgScore = t.sc && t.sc.length ? (t.sc.reduce(function(a,b){return a+b},0)/t.sc.length).toFixed(1) : '—';
return '<tr><td><b>' + tr + '</b></td><td>' + t.n + '</td><td>' + topics + '</td><td>' + avgScore + '</td></tr>';
var trainedCount = t.trained ? Object.keys(t.trained).length : 0;
var divisions = t.divisions ? Array.from(new Set(Object.keys(t.divisions))).join(', ') : '—';
return '<tr><td><b>' + tr + '</b></td><td>' + t.n + '</td><td>' + topics + '</td><td>' + trainedCount + '</td><td>' + avgScore + '</td><td>' + divisions + '</td></tr>';
}).join('');
cph = {};

View File

@ -31,9 +31,9 @@
</div>
<div class="table-card wide">
<h3>📋 Нагрузка тренеров (ФИО + тренинги + частота)</h3>
<h3>📋 Нагрузка тренеров</h3>
<table id="tblTrainers"><thead><tr>
<th>ФИО тренера</th><th>Проведено тренингов</th><th>Частота (темы)</th><th>Всего обучено</th>
<th>ФИО тренера</th><th>Кол-во тренингов</th><th>Темы</th><th>Обучено чел.</th><th>Ср. оценка</th><th>Дивизионы</th>
</tr></thead><tbody></tbody></table>
</div>