ITaskService.Delegate — метод (Task, IEnumerable<StaffEmployee>, StaffEmployee, Boolean, Boolean, String)
Делегирует задание.
-
Пространство имён:
DocsVision.BackOffice.ObjectModel.Services
-
Сборка:
DocsVision.BackOffice.ObjectModel.dll
Синтаксис
bool Delegate(Task task, IEnumerable<StaffEmployee> delegates, StaffEmployee noticeable, bool restrictDelegation, bool returnAfterDelegation, string comment)
- Параметры
-
- task
-
Тип:
Task
Задание
- delegates
-
Тип:
System.Collections.Generic.IEnumerable<StaffEmployee>
Список сотрудников, которым делегируется задание
- noticeable
-
Тип:
StaffEmployee
Уведомляемый сотрудник, если при делегировании невозможно однозначно разрешить, кто является исполнителем задания
- restrictDelegation
-
Тип:
System.Boolean
Устанавливает флаг "Запретить делегирование"
- returnAfterDelegation
-
Тип:
System.Boolean
Устанавливает флаг "Возврат с делегирования"
- comment
-
Тип:
System.String
Комментарий при делегировании
- Возвращаемое значение
-
Тип:
System.Boolean
true
— делегирование выполнено успешно, иначе —false
Исключения
Исключение | Условие |
---|---|
Ошибка возвращается в случае, если не задан параметр |
|
Ошибка возвращается, если недостаточно прав для делегирования задания. |
|
Ошибка возвращается в случае, если запрещено делегировать задание вручную. |
Заметки
Сотрудник, переданный в параметре noticeable
, будет указан в качестве исполнителя задания, делегировавшего задание, если невозможно однозначно определить сотрудника, выполнившего делегирование, что может произойти, к примеру, при делегировании задания сотрудником, являющимся заместителем для нескольких исполнителей задания.
Примеры
(1)
ITaskService taskService = objectContext.GetService<ITaskService>(); (2)
Task task = objectContext.GetObject<Task>(new Guid("00000000-0000-0000-0000-000000000000")); (3)
StaffEmployee delegEmployee = objectContext.GetObject<StaffEmployee>(new Guid("00000000-0000-0000-0000-000000000001"));
StaffEmployee noticEmployee = objectContext.GetObject<StaffEmployee>(new Guid("00000000-0000-0000-0000-000000000002"));
IEnumerable<StaffEmployee> delegates = new StaffEmployee[] { delegateEmployee }; (4)
taskService.Delegate(task, delegates, noticEmployee, true, true, "Передано компетентному сотруднику");
objectContext.AcceptChanges(); (5)
1 | Инициализация контекста объектов. |
2 | Получение сервиса. |
3 | Получение делегируемого задания. |
4 | Получение сотрудника, которому выполняется делегирование, и уведомляемого сотрудника. |
5 | Делегирование задания. |