krona-staff/apps/KronaStaffTerminal/README.md
Ochenstarik 3fbeb1fe1b
Some checks are pending
ci / verify (push) Waiting to run
feat: secure terminal lifecycle and attendance scans
2026-09-17 21:13:42 +07:00

4.1 KiB
Raw Blame History

Krona Staff Terminal

Локальный терминал учёта прихода для USB-сканеров ZKTeco/BioLink SLK20R и ZKFinger SDK 5.3.

Возможности

  • выбор одного из подключённых сканеров;
  • добавление сотрудников с должностью и правами администратора;
  • регистрация отпечатка по трём последовательным сканам;
  • чередование событий «Приход» и «Уход»;
  • настраиваемая защита от повторного сканирования, по умолчанию 120 секунд;
  • локальный журнал последних отметок;
  • уведомления через Telegram Bot API и MAX Bot API;
  • автозагрузка вместе с Windows и постоянная работа в системном трее;
  • удаление сотрудника и завершение терминала только по PIN и отпечатку администратора;
  • шифрование сотрудников, токенов и шаблонов отпечатков средствами Windows DPAPI.

Исходное изображение пальца не сохраняется. Шаблон отпечатка хранится только локально и может быть расшифрован текущей учётной записью Windows.

Запуск

Требуются Windows 10/11 x64, драйвер SLK20R и ZKFinger SDK 5.3. Сборка и запуск из корня репозитория:

dotnet run --project apps/KronaStaffTerminal/KronaStaffTerminal.csproj -c Debug -p:Platform=x64 --launch-profile "KronaStaffTerminal (Unpackaged)"

Первый сотрудник

  1. Откройте вкладку «Сотрудники».
  2. Введите табельный номер и имя, затем нажмите «Добавить».
  3. Выберите сотрудника в списке и нажмите «Зарегистрировать отпечаток».
  4. Трижды приложите один и тот же палец, убирая его со стекла после каждого принятого скана.

После регистрации вкладка «Терминал» постоянно ожидает отпечаток. Первое сканирование создаёт «Приход», следующее после защитного интервала — «Уход». Удержание пальца и повторное прикладывание в течение защитного интервала не создают новое событие.

Администратор и работа в фоне

  1. Выберите сотрудника и нажмите «Права администратора».
  2. Убедитесь, что у него зарегистрирован отпечаток.
  3. На вкладке настроек задайте PIN длиной не менее четырёх символов.

После первичной настройки удаление сотрудника, изменение прав, изменение PIN и полный выход требуют сначала PIN, затем отпечаток администратора. Крестик скрывает окно в системный трей, сканер продолжает работать. Двойной щелчок по значку возвращает окно. Автозагрузка включена по умолчанию.

Уведомления

На вкладке «Уведомления и сканер» включите нужный канал, укажите токен бота и идентификатор чата, сохраните настройки и нажмите «Отправить тест». При успешном распознавании сообщение содержит имя сотрудника и местное время прихода.