feat(users): выбор колонок в реестре пользователей + кликабельная Оценка и доработанный график истории
Реестр /users: - кнопка «Колонки» — чекбоксы базовых колонок и кастомных полей профиля (Оценка, Средняя оценка и др.), скрытые ключи в localStorage; - /api/users/list?includeFieldValues=1 — значения полей текущей страницы; - поля типа history-number (Оценка) кликабельны — открывают график истории. График истории (FieldHistoryDialog): - точки красные и крупные (на тёмном фоне дефолтные не видны), линия primary; - клик по точке — под графиком список оценок за бакет со ссылками на задачи (название задачи → /forms/<formId>/tasks/<id>); - API field-history возвращает entries (value, taskId, taskTitle, formId, bucket).
This commit is contained in:
@@ -224,11 +224,20 @@ export function registerUserProfileRoutes(router: Router): void {
|
||||
period.days,
|
||||
period.bucket
|
||||
);
|
||||
// Сырые записи с привязкой к задачам — для клика по точке графика
|
||||
const entries = await storage.getUserFieldHistoryEntries(
|
||||
userId,
|
||||
fieldId,
|
||||
req.organizationId!,
|
||||
period.days,
|
||||
period.bucket
|
||||
);
|
||||
res.json({
|
||||
success: true,
|
||||
field: { id: field.id, name: field.name },
|
||||
period: periodParam,
|
||||
points,
|
||||
entries,
|
||||
overallAvg,
|
||||
totalCount,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user