Ejemplo n.º 1
0
        public Sungero.Core.StateView GetStateView()
        {
            var stateView = StateView.Create();

            // Добавить блок информации к блоку задачи.
            var taskHeader = VerificationTasks.Resources.StateViewTaskBlockHeader;

            this.AddInformationBlock(stateView, taskHeader, _obj.Started.Value);

            // Блок информации о задаче.
            var taskBlock = this.AddTaskBlock(stateView);

            // Получить все задания по задаче.
            var taskAssignments = VerificationAssignments.GetAll(a => Equals(a.Task, _obj)).OrderBy(a => a.Created).ToList();

            // Статус задачи.
            var status = _obj.Info.Properties.Status.GetLocalizedValue(_obj.Status);

            var lastAssignment = taskAssignments.OrderByDescending(a => a.Created).FirstOrDefault();

            if (!string.IsNullOrWhiteSpace(status))
            {
                Docflow.PublicFunctions.Module.AddInfoToRightContent(taskBlock, status);
            }

            // Блоки информации о заданиях.
            foreach (var assignment in taskAssignments)
            {
                var assignmentBlock = this.GetAssignmentBlock(assignment);

                taskBlock.AddChildBlock(assignmentBlock);
            }

            return(stateView);
        }