Автоматизация учета рабочего времени по QR-кодам на С#, C++ и QML

Автоматизация учета рабочего времени по QR-кодам на С#, C++ и QML

28 января 2021

FORA — крупнейшая торговая сеть Республики Казахстан в сфере розничной продажи цифровой, бытовой техники и программного обеспечения. Мы разработали ETT («Employee Time Tracking») для регистрации начала и окончания рабочего дня многочисленных сотрудников компании. Контроль времени сотрудников.

Регистрация происходит через сканирование QR-кода, сформированного под требуемую операцию, — открытие («Clock In») или же закрытие («Clock Out») дня. Сервер собирает и накапливает информацию по каждому сотруднику, а администратору предоставляет средства анализа статистики и формирования отчетов. Интерфейс изменяется в зависимости от роли: сотрудник или администратор.

Администратор

Интерфейс администратора содержит средства управления системой: справочник сотрудников и отчеты. Для входа необходима авторизация.

Кнопка «Администрирование» в главном окне переводит на страницу управления, где можно настроить параметр «Время жизни QR-кода», выполнить поиск по таблице администраторов, отредактировать ее, добавить новых администраторов.

FORA администрирование
Настройка системы
FORA организации
Список организаций и менеджеров

Раздел «Отчеты» предполагает два типа документов, каждый из которых экспортируется в Excel: табель, отчет по времени открытия-закрытия смены. Табельные отчеты строятся как по всем сотрудникам одновременно, так и по выбранным в отдельности. Отчет по времени открытия-закрытия смены пока формируется только для выбранного сотрудника. Табельный отчет формируется по всей компании.

01Не открыт рабочий деньПустая ячейкаНе было отмечено открытие дня.
02Открыт рабочий деньЯчейка с нулемПока отмечено только открытие рабочего дня.
03Отработано времениОтличные от нуля значенияПоказывают длительность отработанного времени.
FORA отчет табель
Табельный отчет
FORA отчет смена
Рабочий день сотрудника

Сотрудник

Интерфейс сотрудника — веб-страница, содержащая выбор открытия-закрытия рабочего дня и отображения сгенерированного QR-кода. Доступ авторизацию не требует. После выбора события в окне появляется сгенерированный код. После сканирования которого через мобильное приложение появляется статус «Рабочий день открыт» или «Рабочий день закрыт». По истечении срока жизни QR-код исчезает со страницы. Открытие и закрытие смены возможно только один раз в течение суток. Действия сотрудника протоколируются в базу данных.

FORA выбор события
FORA сотрудник
FORA ошибка открытия рабочего дня
Начало рабочего дня

Мобильное приложение

Также в систему учета рабочего времени встроено кроссплатформенное мобильное приложение на QML и C++ для решения сотрудниками двух задач.

  1. Регистрация работника с помощью телефона, и, следовательно, привязка аккаунта к паспорту и телефону.
  2. Открытие и закрытие смены путем сканирования QR-кода.

При первом запуске генерируется уникальный идентификатор смартфона, появляется окно для ввода ИНН работника и адреса сервера. Затем данные отправляются в базу для проверки.

FORA код на экране
FORA регистрация сотрудника
FORA ошибка авторизации
Проверка кода и регистрация в мобильном приложении

Только после регистрации возможна полноценная работа. В случае успешного сканирования QR-кода мобильное приложение добавляет сохраненный ИНН, уникальный идентификатор смартфона и отправляет информацию на сервер. Сервер проверяет актуальность кода вместе с наличием в базе пары: ИНН и идентификатор. Затем QR-код исчезает, и появляется статус «Рабочий день открыт» или «Рабочий день закрыт».

FORA сотрудник
Привязка работников к телефонам и ИНН