krona-staff/apps/KronaStaffTerminal
Ochenstarik b88ff9195c
Some checks are pending
ci / verify (push) Waiting to run
fix: harden terminal scanner and background operation
2026-09-18 00:49:34 +07:00
..
Assets feat: secure and brand staff terminal 2026-09-18 00:11:29 +07:00
Models fix: harden terminal scanner and background operation 2026-09-18 00:49:34 +07:00
Properties feat: add SLK20R attendance terminal 2026-09-17 20:51:20 +07:00
Services fix: harden terminal scanner and background operation 2026-09-18 00:49:34 +07:00
Styles feat: secure and brand staff terminal 2026-09-18 00:11:29 +07:00
Vendor/ZKFinger/x64 feat: add SLK20R attendance terminal 2026-09-17 20:51:20 +07:00
.gitignore feat: add SLK20R attendance terminal 2026-09-17 20:51:20 +07:00
app.manifest feat: add SLK20R attendance terminal 2026-09-17 20:51:20 +07:00
App.xaml feat: secure and brand staff terminal 2026-09-18 00:11:29 +07:00
App.xaml.cs fix: harden terminal scanner and background operation 2026-09-18 00:49:34 +07:00
KronaStaffTerminal.csproj feat: secure and brand staff terminal 2026-09-18 00:11:29 +07:00
MainPage.xaml fix: harden terminal scanner and background operation 2026-09-18 00:49:34 +07:00
MainPage.xaml.cs fix: harden terminal scanner and background operation 2026-09-18 00:49:34 +07:00
MainWindow.xaml feat: add SLK20R attendance terminal 2026-09-17 20:51:20 +07:00
MainWindow.xaml.cs fix: harden terminal scanner and background operation 2026-09-18 00:49:34 +07:00
Package.appxmanifest feat: add SLK20R attendance terminal 2026-09-17 20:51:20 +07:00
README.md fix: harden terminal scanner and background operation 2026-09-18 00:49:34 +07:00

Krona Staff Terminal

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

Возможности

  • выбор одного из подключённых сканеров с автоматическим переходом на рабочее устройство;
  • добавление и редактирование сотрудников с должностью, полом и правами администратора без потери отпечатков и журнала;
  • несколько отпечатков у одного сотрудника, каждый регистрируется по трём последовательным сканам;
  • чередование событий «Приход» и «Уход»;
  • настраиваемая защита от повторного сканирования, по умолчанию 120 секунд;
  • локальный журнал последних отметок;
  • защищённая очистка журнала без удаления сотрудников и отпечатков;
  • уведомления через Telegram Bot API и MAX Bot API;
  • автозагрузка сразу в системный трей и постоянное фоновое сканирование, даже когда открыта другая программа;
  • закрытый административный раздел с входом по PIN или отпечатку администратора;
  • автоматическая блокировка административного раздела через 5 минут и при сворачивании;
  • шифрование сотрудников, токенов и шаблонов отпечатков средствами 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. Откройте вкладку «Сотрудники» и при первом входе создайте PIN длиной не менее шести символов.
  2. Введите табельный номер и имя, отметьте «Администратор терминала», затем нажмите «Добавить».
  3. Выберите сотрудника в списке и нажмите «Добавить отпечаток».
  4. Трижды приложите один и тот же палец, убирая его со стекла после каждого принятого скана.
  5. Для регистрации другого пальца повторно нажмите «Добавить отпечаток».

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

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

  1. Вкладки «Сотрудники» и «Уведомления и сканер» открываются только после входа администратора.
  2. Для входа достаточно PIN либо зарегистрированного отпечатка администратора.
  3. Кнопка «Заблокировать», сворачивание окна или пять минут бездействия завершают административный сеанс.

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

Уведомления

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