Exemplo n.º 1
0
        protected void changeAssignees_ExecuteStep(object data)
        {
            ChangeAssigneesParam cap = JSONSerializerExecute.Deserialize <ChangeAssigneesParam>(data);

            IWfProcess process = WfRuntime.GetProcessByProcessID(cap.ProcessID);

            CheckPermission(process);

            WfReplaceAssigneesExecutor executor = new WfReplaceAssigneesExecutor(null, process.CurrentActivity, null, cap.Users);

            executor.Execute();
        }
Exemplo n.º 2
0
        protected void changeCandidates_ExecuteStep(object data)
        {
            ChangeAssigneesParam cap = JSONSerializerExecute.Deserialize <ChangeAssigneesParam>(data);

            IWfProcess process = WfRuntime.GetProcessByProcessID(cap.ProcessID);

            CheckPermission(process);

            foreach (IWfActivity activity in process.Activities)
            {
                if (activity.Status != WfActivityStatus.Completed && activity.Status != WfActivityStatus.Aborted)
                {
                    if (activity.Candidates.Contains(cap.OriginalUser.ID))
                    {
                        WfReplaceAssigneesExecutor executor = new WfReplaceAssigneesExecutor(null, activity, cap.OriginalUser, cap.Users);

                        executor.ExecuteNotPersist();
                    }
                }
            }

            WfRuntime.PersistWorkflows();
        }