public virtual void StartBlock12(Sungero.RecordManagement.Server.ReviewDraftResolutionAssignmentArguments e) { // Добавить адресата в качестве исполнителя. e.Block.Performers.Add(_obj.Addressee); // Установить срок и тему. if (_obj.Deadline.HasValue && _obj.Started.HasValue) { var deadline = Sungero.Docflow.PublicFunctions.Module.GetDateWithTime(_obj.Deadline.Value, _obj.Addressee); var deadlineInHour = WorkingTime.GetDurationInWorkingHours(_obj.Started.Value, deadline, _obj.Addressee); e.Block.RelativeDeadlineHours = deadlineInHour > 0 ? deadlineInHour : 1; } var document = _obj.DocumentForReviewGroup.OfficialDocuments.First(); e.Block.Subject = Docflow.PublicFunctions.Module.TrimSpecialSymbols(DocumentReviewTasks.Resources.ReviewDocument, document.Name); Docflow.PublicFunctions.Module.SynchronizeAddendaAndAttachmentsGroup(_obj.AddendaGroup, document); // Выдать исполнителю права на вложения. Functions.DocumentReviewTask.GrantRightForAttachmentsToAssignees(_obj, e.Block.Performers.ToList()); }
public virtual void CompleteAssignment12(Sungero.RecordManagement.IReviewDraftResolutionAssignment assignment, Sungero.RecordManagement.Server.ReviewDraftResolutionAssignmentArguments e) { var document = _obj.DocumentForReviewGroup.OfficialDocuments.First(); // Заполнить текст резолюции из задания руководителя в задачу. if (assignment.Result == Sungero.RecordManagement.ReviewDraftResolutionAssignment.Result.AddResolution) { _obj.ResolutionText = assignment.ActiveText; } // Обновить статус исполнения - на исполнении. if (assignment.Result == Sungero.RecordManagement.ReviewDraftResolutionAssignment.Result.ForExecution) { document.ExecutionState = ExecutionState.OnExecution; } // Обновить статус исполнения - не требует исполнения. if (assignment.Result == Sungero.RecordManagement.ReviewDraftResolutionAssignment.Result.Informed) { document.ExecutionState = ExecutionState.WithoutExecut; } // Заполнить нового адресата в задаче. if (assignment.Result == Sungero.RecordManagement.ReviewDraftResolutionAssignment.Result.Forward) { Functions.DocumentReviewTask.UpdateReviewTaskAfterForward(_obj, assignment.Addressee); } if (assignment.NeedDeleteActionItems == true) { var actionItems = _obj.ResolutionGroup.ActionItemExecutionTasks.ToList(); _obj.ResolutionGroup.ActionItemExecutionTasks.Clear(); Functions.Module.DeleteActionItemExecutionTasks(actionItems); } }
public virtual void StartAssignment12(Sungero.RecordManagement.IReviewDraftResolutionAssignment assignment, Sungero.RecordManagement.Server.ReviewDraftResolutionAssignmentArguments e) { // Обновить статус исполнения - на рассмотрении. var document = _obj.DocumentForReviewGroup.OfficialDocuments.First(); document.ExecutionState = ExecutionState.OnReview; }