From db99232c121e0f49d3279ec19d88bc545684f6b2 Mon Sep 17 00:00:00 2001 From: lizerk Date: Wed, 22 Apr 2026 13:24:16 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit для нерабочего дня overtime больше не считается замечанием; если в нерабочий день были проходы, карточка получает статус Работа вне графика; если нерабочий день без проходов, статус Нерабочий; Есть замечания остаётся для реальных проблем рабочего дня. --- .../attendance/EmployeeAttendanceCard.tsx | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/frontend/src/components/attendance/EmployeeAttendanceCard.tsx b/frontend/src/components/attendance/EmployeeAttendanceCard.tsx index cfc9e723..5606712c 100644 --- a/frontend/src/components/attendance/EmployeeAttendanceCard.tsx +++ b/frontend/src/components/attendance/EmployeeAttendanceCard.tsx @@ -276,13 +276,15 @@ function issueLabels(record: LogStormAttendanceRecord, personnelMeta?: Personnel if (record.is_late) result.push("late"); if (record.is_early_leave) result.push("early_leave"); if (record.is_underwork) result.push("underwork"); + if (record.is_overtime) result.push("overtime"); } - if (record.is_overtime) result.push("overtime"); return Array.from(new Set(result)); } function getRecordTone(record: LogStormAttendanceRecord, personnelMeta?: PersonnelDayMeta | null) { - if (personnelMeta?.nonWorking && hasWorked(record)) { + const nonWorking = personnelMeta?.nonWorking || record.effective_is_workday === false || record.is_workday === false; + + if (nonWorking && hasWorked(record)) { return { dotClassName: "bg-sky-500", pillClassName: "app-selected", @@ -300,15 +302,7 @@ function getRecordTone(record: LogStormAttendanceRecord, personnelMeta?: Personn }; } - if (record.is_workday === false && record.is_overtime) { - return { - dotClassName: "bg-sky-500", - pillClassName: "app-selected", - label: "Работа вне графика", - }; - } - - if (record.is_workday === false) { + if (nonWorking) { return { dotClassName: "bg-slate-400", pillClassName: "app-badge",