Пример #1
0
        public static void ProcessWorkflow(this RigOapChecklist rigOapChecklist, IRigOapChecklistWorkflowService rigOapChecklistWorkflowService, IWorkflowEngineService workflowEngineService, IWorkflowService workflowService, WorkflowTransition transition, WorkflowRequest request, ILog log)
        {
            var workflow = workflowService.GetActiveWorkflow(rigOapChecklist.OapChecklist.OapType.ChecklistLayoutId.Value);

            //Create the Workflow Activity
            var workflowActivity = workflow.GetActivity(rigOapChecklist.Id);

            if (workflowActivity == null)
            {
                log.Error($" Workflow Activity was not found for checklist : { rigOapChecklist.Id}");
                return;
            }

            //Create the RigOapChecklistWorkflow instance
            var rigChecklistWorkflow = rigOapChecklistWorkflowService.GetWorkflowByChecklist(rigOapChecklist.Id);

            if (rigChecklistWorkflow == null)
            {
                log.Error($" Workflow instance was not found for checklist : { rigOapChecklist.Id}");
                return;
            }

            var version = new Version(workflow.Major, workflow.Minor);

            //Start the Workflow Instance and All the store the instance details

            //Get the Current Principal And Assign Him to Workflow to
            workflowEngineService.Process(workflowActivity, version, rigChecklistWorkflow, transition, request);
        }
 public ProcessRigOapChecklistWokflowHandler(IRigOapChecklistService rigOapChecklistService, IRigOapChecklistWorkflowService rigOapChecklistWorkflowService, IWorkflowService workflowService, IWorkflowEngineService workflowEngineService, IPeopleService peopleService, ILog log)
 {
     WorkflowService                = workflowService;
     RigOapChecklistService         = rigOapChecklistService;
     WorkflowEngineService          = workflowEngineService;
     RigOapChecklistService         = rigOapChecklistService;
     RigOapChecklistWorkflowService = rigOapChecklistWorkflowService;
     PeopleService = peopleService;
     Log           = log;
 }
Пример #3
0
 public ProcessOapAuditWorkFlowHandler(IRigOapChecklistService rigOapChecklistService, IRigOapChecklistWorkflowService rigOapChecklistWorkflowService, IWorkflowService workflowService, IWorkflowEngineService workflowEngineService, IPeopleService peopleService, IOapAuditService auditService, ILog log)
 {
     WorkflowService        = workflowService;
     RigOapChecklistService = rigOapChecklistService;
     WorkflowEngineService  = workflowEngineService;
     //RigOapChecklistService = rigOapChecklistService;
     RigOapChecklistWorkflowService = rigOapChecklistWorkflowService;
     PeopleService   = peopleService;
     OapAuditService = auditService;
     Log             = log;
 }
Пример #4
0
        public static void StartWorkflow(this RigOapChecklist rigOapChecklist, IRigOapChecklistWorkflowService rigOapChecklistWorkflowService, IWorkflowEngineService workflowEngineService, IWorkflowService workflowService, IPeopleService peopleService, ILog log, int ownerId)
        {
            var workflow = workflowService.GetActiveWorkflow(rigOapChecklist.OapChecklist.OapType.ChecklistLayoutId.Value);

            //Create the Workflow Activity
            var workflowActivity = workflow.GetActivity(rigOapChecklist.Id);

            //Create the RigOapChecklistWorkflow instance
            var rigChecklistWorkflow = new RigOapChecklistWorkflow(rigOapChecklist)
            {
                Name     = $"Workflow Instance: {workflow.Name}",
                Workflow = workflow
            };

            var version = new Version(workflow.Major, workflow.Minor);

            //Start the Workflow Instance and All the store the instance details

            //var login =  Thread.CurrentPrincipal.Identity.Name;
            workflowEngineService.Start(workflowActivity, version, rigChecklistWorkflow);

            rigChecklistWorkflow.Id = rigOapChecklistWorkflowService.Add(rigChecklistWorkflow);

            //var owner = PeopleService.GetByLogin(login);
            //var owner = peopleService.Get(ownerId);

            //Get the Current Principal And Assign Him to Workflow to
            workflowEngineService.Process(workflowActivity, version, rigChecklistWorkflow, new AssignmentTransition("Assigned"), new AssignmentRequest()
            {
                Users = new List <AssignedUser> {
                    new AssignedUser()
                    {
                        UserId = ownerId, Role = "Owner"
                    }
                }
            });
        }
Пример #5
0
 public GetRigOapChecklistWorkflowHandler(IRigOapChecklistWorkflowService rigOapChecklistWorkflowService)
 {
     RigOapChecklistWorkflowService = rigOapChecklistWorkflowService;
 }