<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FlowBack.aspx.cs" Inherits="WebForm.Platform.WorkFlowRun.FlowBack" %>
<% WebForm.Common.Tools.CheckLogin(false); string flowid = Request.QueryString["flowid"]; string stepid = Request.QueryString["stepid"]; string groupid = Request.QueryString["groupid"]; string taskid = Request.QueryString["taskid"]; RoadFlow.Platform.WorkFlow bworkFlow = new RoadFlow.Platform.WorkFlow(); RoadFlow.Platform.WorkFlowTask btask = new RoadFlow.Platform.WorkFlowTask(); var wfInstalled = bworkFlow.GetWorkFlowRunModel(flowid); if(wfInstalled==null) { Response.Write("未找到流程运行时实体"); Response.End(); } Guid taskID; if(!taskid.IsGuid(out taskID)) { Response.Write("未找到当前任务"); Response.End(); } var steps = wfInstalled.Steps.Where(p => p.ID == stepid.ToGuid()); if (steps.Count() == 0) { Response.Write("未找到当前步骤"); Response.End(); } var currentStep = steps.First(); int backModel = currentStep.Behavior.BackModel;//退回策略 if (backModel == 0) { //Response.Write(""); //Response.End(); } int backType = currentStep.Behavior.BackType;//退回类型 var prevSteps = btask.GetBackSteps(taskID, backType, currentStep.ID, wfInstalled); int i=0; %> <% foreach (var step in prevSteps) { string checked1 = string.Empty; if ((backType == 2 && step.Key == currentStep.Behavior.BackStepID) || currentStep.Behavior.Countersignature != 0 || backType == 0) { checked1 = "checked=\"checked\""; i++; } else { checked1 = !step.Key.ToString().IsNullOrEmpty() && i++ == 0 ? "checked=\"checked\"" : ""; } string disabled = step.Key.ToString().IsNullOrEmpty() || currentStep.Behavior.Countersignature != 0 || backType == 0 ? "disabled=\"disabled\"" : ""; %> <%}%>
<%=disabled %> name="stepid" id="step_<%=step.Key %>" style="vertical-align:middle;" />