Example #1
0
        public async Task <IActionResult> UserRegistration(RegistrationModel request)
        {
            _logger.LogInformation("Registering new user...");
            _logger.LogInformation($"name: {request.Name}");

            try
            {
                // Starting camunda client
                CamundaClient camunda = CamundaClient.Create("http://localhost:8080/engine-rest");

                // New process defintion
                StartProcessInstance newProcessInstance = new StartProcessInstance();
                newProcessInstance.SetVariable("name", VariableValue.FromObject(request.Name));
                newProcessInstance.SetVariable("password", VariableValue.FromObject(request.Password));

                // Sending process to camunda
                await camunda.ProcessDefinitions.ByKey("user_registration").StartProcessInstance(newProcessInstance);

                return(StatusCode(StatusCodes.Status200OK));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, $"Error calling user registration for user {request.Name}");
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
        }
        public async Task <string> StartProcessFor(Order order)
        {
            var processParams = new StartProcessInstance()
                                .SetVariable("orderId", VariableValue.FromObject(order.Id.Value.ToString()))
                                .SetVariable("orderStatus", VariableValue.FromObject(order.Status.ToString()))
                                .SetVariable("customerCode", VariableValue.FromObject(order.Customer.Code));

            processParams.BusinessKey = order.Id.Value.ToString();

            var processStartResult = await
                                     camunda.ProcessDefinitions.ByKey("Process_Hire_Hero").StartProcessInstance(processParams);

            return(processStartResult.Id);
        }
        public async Task <string> StartProcessFor(Report report)
        {
            var processParams = new StartProcessInstance()
                                .SetVariable("reportId", VariableValue.FromObject(report.ReportId.ToString()))
                                .SetVariable("reportName", VariableValue.FromObject(report.ReportName.ToString()))
                                .SetVariable("reportStatus", VariableValue.FromObject(report.ReportStatus.ToString()))
                                .SetVariable("reportDate", VariableValue.FromObject(report.ReportDateAndTime.ToString()));

            processParams.BusinessKey = report.ReportId.ToString();

            var processStartResult = await
                                     camunda.ProcessDefinitions.ByKey("Report_Creation_Def_Key").StartProcessInstance(processParams);

            return(processStartResult.Id);
        }
Example #4
0
        public async Task <string> StartProcessFor(ProjectWf projectWf)
        {
            var processParams = new StartProcessInstance()
                                .SetVariable("objectWfId", VariableValue.FromObject(projectWf.Id.ToString()))
                                .SetVariable("objectId", VariableValue.FromObject(projectWf.ObjectId.ToString()))
                                .SetVariable("objectName", VariableValue.FromObject(projectWf.ObjectName))
                                .SetVariable("objectStatus", VariableValue.FromObject(projectWf.Status.ToString()));

            processParams.BusinessKey = projectWf.Id.ToString();

            var processStartResult = await
                                     camunda.ProcessDefinitions.ByKey("Process_Project").StartProcessInstance(processParams);

            return(processStartResult.Id);
        }