
Своя реализация контроля времени в задачах Битрикс24

25.01.2023
Время чтения: 5 мин
Проблема клиента
Нужно, чтобы сотрудник стартовал рабочий день, только если в наличии задачи в работе. Также запрос на то, чтобы при начале рабочего дня запускалась последняя задача в работе. Другая проблема: необходимо сделать так, чтобы при запуске задачи сотрудником запускался и рабочий день, вне зависимости от того закончен он или приостановлен.
И чтобы это сопровождалось списанием времени в задачу автоматически.
Решение
В задачах сделали индивидуальную встройку с кнопками управления задач.
С какими проблемами столкнулись:
1. Запуск одной и той же задачи несколькими сотрудниками одновременно.
Решение: Если сотрудник зашёл в задачу и видит, что другой человек работает, он либо уступит и найдёт
себе другую задачу, либо ему придется поставить эту задачу на паузу, что автоматически
спишет время от лица того, кто работал с ней, а также оповестит его об остановке задачи,
после чего второй сотрудник запустит ее уже от своего имени.
Решение: Благодаря базе данных - сотрудник, id задачи, время старта, мы знаем время начала работы с задачей и рассчитаем, сколько время списать.
3. Запуск нескольких задач одновременно.
Решение: Останавливаем предыдущую запущенную задачу. Списываем время. Убираем из базы. Начинаем работу уже с новой задачей.
Итог:
Клиент приобрел программу, которая автоматически запускает задачу для сотрудника, если он начал рабочий день. Оповещает его об этом. При остановке рабочего дня задача так же приостановится и в неё спишется корректное время работы с ней.
Если сотрудник не начал рабочий день, но стартует задачу, то автоматически стартует и рабочий день. И наоборот, если он остановил задачу, то и приостанавливается рабочий день.
Таким образом, программа контролирует время работы сотрудников.

Наш интерфейс встройки позволяет начать задачу и запустить рабочий день.

Время старта задачи отображено во встройке приложения. При завершении задачи или рабочего дня будет списано время в задачу.

Мобильная версия для старта, паузы и завершения задач. У каждого сотрудника свои задачи.