Esempio n. 1
0
        /// <summary>
        /// 根据模板创建空白的流程实例
        /// </summary>
        /// <param name="templateId"></param>
        /// <returns></returns>
        public WFInstanceViewModel GetWFWhiteByTemplate(Guid templateId)
        {
            var wfTemplate = templateServer.GetTemplateById(templateId);
            var instance   = new WFInstanceViewModel();

            instance.BId   = new Guid();
            instance.BType = "";

            instance.Id    = new Guid();
            instance.WFId  = templateId;
            instance.Lines = wfTemplate.Lines;
            instance.Nodes = new List <WFNodeInstanceViewModel>();

            if (wfTemplate.Nodes != null)
            {
                foreach (var item in wfTemplate.Nodes)
                {
                    var nodeInstance = new WFNodeInstanceViewModel();
                    nodeInstance.Id           = new Guid();
                    nodeInstance.ActionLogs   = "";
                    nodeInstance.BType        = "";
                    nodeInstance.BId          = new Guid();
                    nodeInstance.WFId         = templateId;
                    nodeInstance.InLines      = item.InLines;
                    nodeInstance.OutLines     = item.OutLines;
                    nodeInstance.State        = WFState.Undefine;
                    nodeInstance.WFInstanceId = instance.Id;
                    nodeInstance.WFNodeId     = item.NodeDefine.Id;
                    nodeInstance.NodeDefine   = item.NodeDefine;
                    nodeInstance.NodeLogs     = new List <NodeActionLog>();
                    nodeInstance.UserId       = string.IsNullOrEmpty(nodeInstance.NodeDefine.UserId)? new Guid():new Guid(nodeInstance.NodeDefine.UserId);
                    nodeInstance.UserName     = string.IsNullOrEmpty(nodeInstance.NodeDefine.UserId) ?"": nodeInstance.NodeDefine.UserName;

                    instance.Nodes.Add(nodeInstance);
                }
            }

            return(instance);
        }
Esempio n. 2
0
 public WFTemplateViewModel Get(Guid id)
 {
     return(iWFTemplateServer.GetTemplateById(id));
 }