//public void Back(string userId) //{ // WorkflowContent content = WorkflowInstResolver.CreateContent(WorkflowRow); // using (content) // { // Back(userId, content, null, null); // } //} public void Unlock() { ManualStepConfig manualConfig = Config as ManualStepConfig; // manualConfig. if (manualConfig.HaveUnlock) { var row = Workflow.WorkflowRow; StepState stepState = row.WI_STATUS.Value <StepState>(); if (stepState == StepState.OpenNotProcess) { //row.BeginEdit(); row.WI_STATUS = (int)StepState.NotReceive; row.WI_RECEIVE_DATE = null; row.WI_RECEIVE_ID = ""; row.WI_CURRENT_CREATE_DATE = DateTime.Now; Workflow.Source.Submit(); // row.EndEdit(); // WorkflowResolver.SetCommands(AdapterCommand.Update); // UpdateUtil.UpdateTableResolvers(null, WorkflowResolver); } else { throw new AtawException("步骤{0} 的状态不是未接收 无法解锁".AkFormat(manualConfig.DisplayName), this); } } else { throw new AtawException("步骤{0} 配置 禁止解锁".AkFormat(manualConfig.DisplayName), this); } }
public bool Back(string backStepName) { ManualStepConfig manualConfig = Config as ManualStepConfig; // var backStepName = string.Empty; if (manualConfig.HaveBack) { if (backStepName.IsAkEmpty()) { // 否则退到上一人工步骤,如果没有则报错 backStepName = WorkflowRow.WI_LAST_MANUAL; } AtawDebug.AssertNotNullOrEmpty(backStepName, string.Format(ObjectUtil.SysCulture, "人工步骤{0}没有可以回退的上一个人工步骤", manualConfig.Name), this); } StepConfig backStep = Config.Parent.Steps[backStepName]; AtawDebug.AssertArgumentNull(backStep, string.Format(ObjectUtil.SysCulture, "指定的人工步骤{0} 不存在", backStepName), this); return(StepUtil.BackStep(Workflow, backStep)); }