Рейтинг сотрудников: history-number поле = последняя оценка, среднее за месяц — в поле options.avgFieldCode
- setUserProfileFieldValueFromAutomation: для history-number значением поля становится переданное число (последняя оценка), а не среднее - recomputeUserFieldMonthlyAverage: среднее за текущий месяц пишется в поле, указанное в options.avgFieldCode history-number поля (если не задано — в само поле, обратная совместимость) - Автоматизация «Оценка сотрудникам» (форма 11): сумма трёх числовых полей «Оценка 1/2/3» вместо одного select-поля - Документация sandbox обновлена во всех четырёх местах (UI, MCP, Obsidian, AGENTS.md)
This commit is contained in:
@@ -84,11 +84,12 @@ const CODE_TEMPLATE = `// ======================================================
|
||||
// ctx.users.setFieldValue(id, fieldCodeOrId, value) — записать значение кастомного поля профиля
|
||||
// пользователя (по id или code поля, с аудитом от имени «Автоматизация»). Для полей типа
|
||||
// «history-number» переданное число добавляется в историю user_field_history
|
||||
// (с привязкой к задаче триггера), а значением поля становится среднее за текущий месяц
|
||||
// (автопересчёт); нечисловое значение вызовет ошибку автоматизации.
|
||||
// (с привязкой к задаче триггера) и становится значением самого поля (последняя оценка);
|
||||
// среднее за текущий месяц автопересчитывается в поле, указанное в options.avgFieldCode
|
||||
// history-number поля (если не задано — в само поле); нечисловое значение вызовет ошибку автоматизации.
|
||||
// ctx.users.recalcFieldAverage(id, fieldCodeOrId) — принудительный пересчёт среднего
|
||||
// за текущий месяц для history-number поля (например, ежедневно по schedule;
|
||||
// нет записей в месяце — поле очищается).
|
||||
// нет записей в месяце — целевое поле среднего очищается).
|
||||
//
|
||||
// Триггеры:
|
||||
// manual — запуск вручную
|
||||
@@ -323,11 +324,12 @@ export function AutomationsContent() {
|
||||
ctx.users.list() / ctx.users.get(userId)
|
||||
ctx.users.update(userId, updates) / ctx.users.updateStatus(userId, statusId)
|
||||
ctx.users.setFieldValue(userId, fieldCodeOrId, value) — записать кастомное поле профиля
|
||||
(с аудитом; для полей «history-number» число пишется в историю user_field_history,
|
||||
а значением поля становится среднее за текущий месяц — автопересчёт;
|
||||
(с аудитом; для полей «history-number» число пишется в историю user_field_history
|
||||
и в само поле (последняя оценка), а среднее за текущий месяц автопересчитывается
|
||||
в поле из options.avgFieldCode history-number поля (если не задано — в само поле);
|
||||
нечисловое значение — ошибка автоматизации)
|
||||
ctx.users.recalcFieldAverage(userId, fieldCodeOrId) — принудительный пересчёт среднего
|
||||
за текущий месяц для history-number поля (нет записей в месяце — поле очищается)
|
||||
за текущий месяц для history-number поля (нет записей в месяце — целевое поле среднего очищается)
|
||||
|
||||
Логирование: ctx.log(msg)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user