public object Model(int id = 0, int infoId = 0) { if (id == 0 && infoId == 0) { throw new Exception("缺少参数ID或InfoID"); } FlowData flowData = null; if (id > 0) { flowData = Core.FlowDataManager.Get(id); } else if (infoId > 0) { var info = Core.FormInfoManager.GetModel(infoId); flowData = info.FlowData; } if (flowData == null) { return(BadRequest("参数不正确,没有获取到流程数据")); } var flowNodeData = flowData.GetUserLastNodeData(Identity.ID); var lastNodeData = flowData.GetLastNodeData(); return(new { flowData, flowNodeData = lastNodeData, freeFlowNodeData = lastNodeData.GetLastFreeNodeData(Identity.ID), canBack = Core.FlowDataManager.CanBack(flowData), canSubmitFlow = Core.FlowDataManager.CanSubmit(flowData, flowNodeData), canComplete = Core.FlowDataManager.CanComplete(flowData.Flow, lastNodeData), canSubmitFreeFlow = Core.FreeFlowDataManager.CanSubmit(flowData, Identity.ID), }); }