Автоматическое распределение (назначение) задач/записей пользователям

Все вопросы/проблемы по установке и использовании.
Ответить
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Автоматическое распределение (назначение) задач/записей пользователям

Сообщение alcompstudio »

Приветствую всех, ув. специалисты!

Возникла следующая задача.

Есть сущность Задачи и вложенная (подчиненная) Подзадачи. Это как бы периодически повторяющиеся (однотипные) задания. На задачу могут назначаться различное кол-во пользователей (исполнителей), потом каждому исполнителю, соответственно выбирается (в порядке "очередности") ряд подзадач (распределяется "вручную" в зависимости от количества подзадач на количество исполнителей).

Можно ли как-то "заавтоматизировать" этот процесс по нажатию кнопки в автоматизации, чтобы в зависимости от количества подзадач и сотрудников - автоматом назначались по одному из сотрудников на подзадачу. Т.е., пример:
Есть Задача (общая) на нее выделено 3 сотрудника (Исполнитель 1, Исполнитель 2 и Исполнитель 3), и есть подзадачи в кол-ве 30 штук (сейчас будем брать ровные значения, для примера). Т.е. получается на каждого сотрудника по 10 Подзадач. Распределение такое (очередность):

Исполнитель 1 - Подзадача 1
Исполнитель 2 - Подзадача 2
Исполнитель 3 - Подзадача 3
Исполнитель 1 - Подзадача 4
Исполнитель 2 - Подзадача 5
Исполнитель 3 - Подзадача 6
...
Исполнитель 1 - Подзадача 28
Исполнитель 2 - Подзадача 29
Исполнитель 3 - Подзадача 30

т.е. получается каждый назначается через 2 подзадачи. Вот как можно (если такое, конечно можно) сделать, чтобы при нажатии кнопки каждый был "назначен" по такому принципу очередности. Я понимаю, что как-то это связано с подсчетом количества пользователей в поле с одноименным типом в сущности Задачи и естественно, количеством вложенных Подзадач, может как-то формулой присваивать в Подзадачах "распределительные номера" (1,2,3) - в зависимости от количества пользователей и потом как-то в автоматизации назначать (переносить из поля род.сущности) пользователей, но вот проблема, что будут назначаться ВСЕ пользователи из поля сущности Задачи (а их, там 3 из вышеуказанного примера). Вот сижу, ломаю голову - какой сложности "вычисления" можно придумать, чтобы это реализовать... Или все-таки нужно это на программном уровне (через код) делать? Суть конечно простая - 30 подзадач назначить/распределить между 3-мя пользователями, но вот как это сделать? У кого-то есть мысли, что-то подобно делали, поделитесь опытом :roll:

...ну и далее, если что-то выгорит, то уже можно усложнять процесс распределения между "неровным" количеством подзадач и сотрудников (напр, на тех же 3 человек назначено 28,29 ... или 31,32 подзадачи и т.п.). Главное как-то "запрограммировать" алгоритм)
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Автоматическое распределение (назначение) задач/записей пользователям

Сообщение support »

А это вам для каких целей нужно, можно конкретный пример?
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Автоматическое распределение (назначение) задач/записей пользователям

Сообщение alcompstudio »

Если конкретно в моем случае, то это может "узконаправленная" специфика ).
Есть заказчики контента (СЕО-текстов), они ставят задания с общими требованиями (Задача) и формируют списки тем/страниц, для которых нужно подготовить СЕО-контент (Подзадачи - там могут отличаться объемами, ключевыми солвами и т.п., но суть Задачи прописана в общем ТЗ). У меня есть группа специалистов, я смотрю, кто "на сейчас" свободен (т.е. на момент поступления задачи я еще не знаю, кто сможет ее выполнить) и "подключаю" их к Задаче (в поле с типом Пользователи отмечаю всех исполнителей, которым нужно будет выполнять задачу), а потом уже нужно как-то выделять отдельные Подзадачи и прикреплять к ним отдельных исполнителей. Подзадачи в большинстве импортирую списком, т.к. иногда нужно выполнение строго последовательно по отсортированному списку (так может требовать Заказчик) и в Руководителе тоже этот список импортируется отсортированным. И назначаю человека на Подзадачу тоже "последовательно", чтобы они выполнялись по-порядку (т.е. не даю например, первые 10 по табличному списку одному исполнителю, следующие 10 - другому, а вот как в указанном выше примере - первому исполнителю даю первую Подзадачу, 2-му - вторую и так чередую назначение. Проблема в том, что изначально может не быть возможности назначить людей на Подзадачи, т.к. я не знаю, сколько есть "свободных" человек. Только уже потом, как определюсь с количеством задействованных для Задачи пользователей - распределяю Подзадачи по ним.

Это, как указал выше, частный случай, не могу сказать, насколько будет полезным для других пользователей Руководителя, поэтому тут спрашиваю, может кто-то подскажет возможное решение на действующем функционале, может добавить какие-то "технические" поля, которые потом использовать в расчетах на основе их результатов будет некая присвоена "последовательность" значений Подзадачам и Исполнителям, чтобы каждого назначить на "свою" Подзадачу. В общем, это нацелено на снижение "рутинных" действий по распределению работ.. ;)
Ответить