Пример #1
0
 public void Persistent(Elements.Action entry, Action <string, object> execute)
 {
     execute(ResourceManage.SQL_WORKFLOW_NODE_ACTION_INSERT, new
     {
         NID = Guid.NewGuid().ToString(),
         entry.ID,
         entry.RelationshipID,
         entry.Name,
         entry.InstanceID
     });
 }
Пример #2
0
        public void Persistent(Element entry, Action <string, object> execute)
        {
            Node n = (entry as Node);

            entry.NID = Guid.NewGuid().ToString();
            execute(ResourceManage.SQL_WORKFLOW_NODE_INSERT, new { entry.NID, entry.ID, entry.Name, NodeType = n.NodeType.ToString(), entry.InstanceID, n.Cooperation });

            foreach (Transition transition in n.Transitions)
            {
                transition.RelationshipID = entry.NID;
                transition.Origin         = entry.ID;
                transition.InstanceID     = entry.InstanceID;
                TransitionService.Persistent(transition, execute);
            }

            foreach (Elements.Action a in n.Actions)
            {
                a.RelationshipID = entry.NID;
                a.InstanceID     = entry.InstanceID;
                ActionService.Persistent(a, execute);
            }

            foreach (Group r in n.Groups)
            {
                r.RelationshipID = entry.NID;
                r.InstanceID     = entry.InstanceID;
                GroupService.Persistent(r, execute);
            }

            foreach (Actor a in n.Actors)
            {
                a.RelationshipID = entry.NID;
                a.InstanceID     = entry.InstanceID;
                ActorService.Persistent(a, execute);
            }

            foreach (Elements.Rule r in n.Rules)
            {
                r.RelationshipID = entry.NID;
                r.InstanceID     = entry.InstanceID;
                RuleService.Persistent(r, execute);
            }

            if (n.Command != null)
            {
                n.Command.InstanceID     = entry.InstanceID;
                n.Command.RelationshipID = entry.NID;

                CommandService.Persistent(n.Command, execute);
            }
        }
        public void Persistent(Element entry, Action <string, object> callback)
        {
            Node n = (entry as Node);

            entry.NID = Guid.NewGuid().ToString();
            callback(ResourceManage.SQL_WORKFLOW_NODE_INSERT, new { entry.NID, entry.ID, entry.Name, NodeType = n.NodeType.ToString(), entry.InstanceID, n.Cooperation, n.Assistant, n.Veto, n.Back, n.Url });

            foreach (Transition transition in n.Transitions)
            {
                transition.RelationshipID = entry.NID;
                transition.Origin         = entry.ID;
                transition.InstanceID     = entry.InstanceID;
                TransitionService.Persistent(transition, callback);
            }

            foreach (Elements.Action a in n.Actions)
            {
                a.RelationshipID = entry.NID;
                a.InstanceID     = entry.InstanceID;
                ActionService.Persistent(a, callback);
            }

            foreach (Group r in n.Groups)
            {
                r.RelationshipID = entry.NID;
                r.InstanceID     = entry.InstanceID;
                GroupService.Persistent(r, callback);
            }

            foreach (Organization o in n.Organizations)
            {
                o.RelationshipID = entry.NID;
                o.InstanceID     = entry.InstanceID;
                OrganizationService.Persistent(o, callback);
            }

            foreach (Actor a in n.Actors)
            {
                a.RelationshipID = entry.NID;
                a.InstanceID     = entry.InstanceID;
                ActorService.Persistent(a, callback);
            }

            foreach (Carbon c in n.Carbons)
            {
                c.RelationshipID = entry.NID;
                c.InstanceID     = entry.InstanceID;
                CarbonService.Persistent(c, callback);
            }

            foreach (Elements.Rule r in n.Rules)
            {
                r.RelationshipID = entry.NID;
                r.InstanceID     = entry.InstanceID;
                RuleService.Persistent(r, callback);
            }

            if (n.Command != null)
            {
                n.Command.InstanceID     = entry.InstanceID;
                n.Command.RelationshipID = entry.NID;
                CommandService.Persistent(n.Command, callback);
            }
        }