Skip to content

Отсутствие прогулов (pk 2)

Метрика

ПолеЗначение
ID в каталоге2
НазваниеОтсутствие прогулов
Типpercentage
min_value / max_value4 / 5
calculation_timingrealtime
period_typeshift
function_namelate_to_work

Назначение

Стимулирование своевременной явки на смену без опозданий. Учитывается при автоматическом расчёте KPI по данным выхода на работу.

Критерии фиксации

  • Выполнено: сотрудник не опоздал на смену (флаг «опоздание» не установлен).
  • Не выполнено: сотрудник опоздал на смену (is_late_for_shift() == True).
  • Кто фиксирует: система на основе данных ActualWorkShedule (время начала/окончания, статус присутствия).
  • Момент фиксации: при закрытии смены в calculate_kpi()evaluate()late_to_work.

Формула / способ расчёта

Автоматический расчёт (app/manufacture/service/kpi_check_functions.py):

выполнено = not work_shedule.is_late_for_shift()

Метод is_late_for_shift() определён в модели ActualWorkShedule и использует фактические даты выхода и регламент смены.

При выполнении KPI начисляется доля от pay_of_hour (value 4–5%): kpi_payment = (value/100) * pay_of_hour * kpi_hours.

Источник данных

  • ActualWorkShedule (work_shedule): фактические start_date, end_date, связь со сменой.
  • Логика определения опоздания: сравнение времени явки с регламентом смены (реализация в actual_work_shedule.py).

Связь с системой

  • KPIRecord: создаётся с source_type='auto' при sync_kpi_records() после расчёта смены.
  • Оплата входит в расчёт смены через calculate_kpi().
  • Общий поток — ADR 0023.