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.Booleantrue— делегирование выполнено успешно, иначе —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 | Делегирование задания. |