예제 #1
0
        /// <summary>
        /// 构造函数
        /// </summary>
        public FlowRuntime(FlowinstanceEntity instance)
        {
            dynamic schemeContentJson = instance.F_SchemeContent.ToObject();//获取工作流模板内容的json对象;

            InitLines(schemeContentJson);
            InitNodes(schemeContentJson);

            currentNodeId   = (string.IsNullOrEmpty(instance.F_ActivityId)? startNodeId : instance.F_ActivityId);
            currentNodeType = GetNodeType(currentNodeId);
            FrmData         = instance.F_FrmData;
            title           = schemeContentJson.title;
            initNum         = schemeContentJson.initNum ?? 0;
            previousId      = GetPreviousNodeId(currentNodeId);
            flowInstanceId  = instance.F_Id;

            //会签开始节点和流程结束节点没有下一步
            if (currentNodeType == 0 || currentNodeType == 4)
            {
                nextNodeId   = "-1";
                nextNodeType = -1;
            }
            else
            {
                nextNodeId   = GetNextNodeId();//下一个节点
                nextNodeType = GetNodeType(nextNodeId);
            }
        }
예제 #2
0
 public async Task <ActionResult> SubmitForm(FlowinstanceEntity entity, string keyValue)
 {
     try
     {
         if (string.IsNullOrEmpty(keyValue))
         {
             await _service.CreateInstance(entity);
         }
         else
         {
             entity.F_Id = keyValue;
             await _service.UpdateInstance(entity);
         }
         return(await Success("操作成功。", "", keyValue));
     }
     catch (Exception ex)
     {
         return(await Error(ex.Message, "", keyValue));
     }
 }