Exemplo n.º 1
0
        /// <summary>
        /// Получить результат выполнения задания руководителю с последней итерации.
        /// </summary>
        /// <param name="task">Задача "рассмотрение входящего".</param>
        /// <returns>Результат задания руководителю.</returns>
        public static Enumeration?GetLastAssignmentResult(IDocumentReviewTask task)
        {
            var lastAssignments = Assignments.GetAll(c => Equals(c.Task, task) && c.Status == Sungero.Workflow.Assignment.Status.Completed)
                                  .OrderByDescending(c => c.Completed);

            if (!lastAssignments.Any())
            {
                return(null);
            }
            else
            {
                return(lastAssignments.First().Result.Value);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Создать поручение.
        /// </summary>
        /// <param name="parentAssignment">Задание, от которого создается поручение.</param>
        /// <param name="mainTask">Задача "Рассмотрение входящего", из которой создается поручение.</param>
        /// <param name="resolutionText">Текст резолюции.</param>
        /// <returns>Поручение.</returns>
        public static IActionItemExecutionTask CreateActionItemExecution(IAssignment parentAssignment, IDocumentReviewTask mainTask, string resolutionText)
        {
            var document = mainTask.DocumentForReviewGroup.OfficialDocuments.First();
            // TODO вернуть вызов с использованием задания, когда починят 24898.
            // var task = Functions.Module.Remote.CreateActionItemExecution(document, parentAssignment);
            var task = Functions.Module.Remote.CreateActionItemExecution(document, (int)parentAssignment.Id);

            task.ActionItem = resolutionText;
            task.Assignee   = document.Assignee;
            return(task);
        }