/// <summary> Скрипт отрабатывает после выполнения задачи "Выполнить чек лист" </summary>
/// <param name="context">Контекст процесса</param>
public virtual void onExecutionAfterCheckList (Context context)
{
//Тут мы прерываем таймер , что бы руководителю сразу поставилась задача!
var allInstanceTimers = Locator.GetServiceNotNull<WorkflowInstanceManager>().GetActiveTimerInfos(new[] { context.WorkflowInstance });
//поиск таймера по его наименованию на графической модели
var timer = allInstanceTimers.ToList().Where(a => a.ElementUid == UidHeadEvent).FirstOrDefault();
if (timer != null)
{
var job = EntityManager<IResumeProcessSchedulerJob>.Instance.LoadOrNull(timer.SchedulerJobId);
if (job != null && job.Task != null && job.Task.Status == ELMA.Scheduling.Models.SchedulerTaskStatus.Enabled)
{
//исполнение таймера в настоящий момент, т.е. прерывание
job.Task.OnceExecuteTime = DateTime.Now;
job.Task.Save();
}
}
}