Beispiel #1
0
        //-1重名,-2 异常,返回其他(id)正常成功
        public string AddOrEditWorkflowDefine(WorkflowConfig config)
        {
            try
            {
                var workflow = context.WF_WORKFLOW_DEF.FirstOrDefault <WF_WORKFLOW_DEF>(m => m.WD_ID == config.Id);
                if (workflow != null)
                {
                    workflow.WD_DESCRIPTION = config.Description;
                    workflow.WD_CONTENT     = config.SaveString();
                    workflow.WD_DESCRIPTION = config.Description;
                    workflow.WD_NAME        = config.DisplayName;
                    workflow.WD_UPDATE_DATE = context.Now;
                    workflow.WD_UPDATE_ID   = GlobalVariable.UserId.ToString();
                    context.SaveChanges();
                    return(workflow.WD_ID);
                }
                else
                {
                    WF_WORKFLOW_DEF def = new WF_WORKFLOW_DEF();
                    //如重名,返回-1
                    if (context.WF_WORKFLOW_DEF.FirstOrDefault <WF_WORKFLOW_DEF>(m => m.WD_SHORT_NAME == config.Name) != null)
                    {
                        return("-1");
                    }
                    def.WD_ID          = context.GetUniId();
                    config.Id          = def.WD_ID;
                    def.WD_CONTENT     = config.SaveString();
                    def.WD_CREATE_DATE = context.Now;
                    def.WD_CREATE_ID   = GlobalVariable.UserId.ToString();
                    def.WD_DESCRIPTION = config.Description;
                    def.WD_IS_USED     = 1;
                    def.WD_NAME        = config.DisplayName;
                    def.WD_SHORT_NAME  = config.Name;
                    def.WD_UPDATE_DATE = context.Now;
                    def.FControlUnitID = GlobalVariable.FControlUnitID;
                    def.WD_UPDATE_ID   = GlobalVariable.UserId.ToString();

                    context.WF_WORKFLOW_DEF.Add(def);
                    context.SaveChanges();
                    return(def.WD_ID);
                }
            }
            catch
            {
                return("-2");
            }
        }
        public WorkflowConfig Root2WorkflowConfig(Root root)
        {
            WorkflowConfig config = new WorkflowConfig();

            config.Id            = root.ID;
            config.Name          = root.Name;
            config.DisplayName   = root.DisplayName;
            config.Description   = root.Description;
            config.Priority      = root.Priority.Value <WorkflowPriority>();
            config.IsSaveContent = root.IsSave == "1" ? true : false;
            config.ContentChoice = root.ContentChoice.Value <ConfigChoice>();
            config.ContentXml    = root.ManualPageXml ?? "";
            if (root.ControllActions != null)
            {
                config.ControlActions = new RegNameList <ControlActionConfig>();
                ControlActionConfig controllAction;
                foreach (ControllAction ca in root.ControllActions)
                {
                    controllAction             = new ControlActionConfig();
                    controllAction.ActionName  = ca.ActionName;
                    controllAction.AreaName    = ca.AreaName;
                    controllAction.ControlName = ca.ControllName;
                    controllAction.Order       = ca.Order;
                    controllAction.Title       = ca.Title == null ? "" : ca.Title;
                    controllAction.ShowKind    = ca.ShowKind.Value <ShowKind>();
                    config.ControlActions.Add(controllAction);
                }
            }
            for (int i = 0; i < root.LineList.Count; i++)
            {
                CreateLineNode(config, root, root.LineList[i]);
            }
            string gg = config.SaveString(Formatting.None);

            return(config);
        }