Example #1
0
 public IHttpActionResult bifurcateProcess(BifurcateProcessDTO bifurcateDTO)
 {
     if (!ProcessData.bifurcateProcess(bifurcateDTO))
     {
         return(BadRequest());
     }
     return(Ok());
 }
Example #2
0
        public ActionResult _BifurcateProcess(Model.AddProcessModel model)
        {
            if (ModelState.IsValid)
            {
                ProcessDTO processDTO = new ProcessDTO();
                processDTO.name         = model.name;
                processDTO.categorie_id = model.categorie_id;
                processDTO.template_id  = model.template_id;
                processDTO.userLog      = Request.Cookies["user_id"].Value;

                string id_process;
                if ((id_process = processProvider.postProcess(processDTO).Result) != "-1")
                {
                    //update next and before process
                    BifurcateProcessDTO bifurcateProcessDTO = new BifurcateProcessDTO();
                    bifurcateProcessDTO.previousProcess = model.bifurcateProcess_id;
                    bifurcateProcessDTO.nextProcess     = id_process;
                    bifurcateProcessDTO.userLog         = Request.Cookies["user_id"].Value;
                    if (processProvider.bifurcateProcess(bifurcateProcessDTO).Result)
                    {
                        // completes actual process
                        ProcessDTO actualProcess     = processProvider.getProcess(model.bifurcateProcess_id).Result;
                        ProcessDTO editActualProcess = new ProcessDTO();
                        editActualProcess.id_processManagment = actualProcess.id_processManagment;
                        editActualProcess.state_id            = "2";
                        editActualProcess.userLog             = Request.Cookies["user_id"].Value;
                        bool isProcessEdited = processProvider.putProcess(editActualProcess).Result;
                        //completes cancel next tasks
                        foreach (var stage in processProvider.getStages(actualProcess.id_processManagment).Result)
                        {
                            foreach (var task in new TaskProvider().getTasks(stage.id_stage).Result)
                            {
                                TaskDTO editTask = new TaskDTO();
                                editTask.id_task      = task.id_task;
                                editTask.taskState_id = (task.taskState_id != "2")? "3":"2";
                                editTask.userLog      = Request.Cookies["user_id"].Value;
                                if (editTask.taskState_id == "3")
                                {
                                    bool isTaskEdited = new TaskProvider().putTask(editTask).Result;
                                }
                            }
                        }
                        return(new HttpStatusCodeResult(200));
                    }
                }
            }
            return(new HttpStatusCodeResult(404, "Can't find that"));
        }
Example #3
0
        public async Task <bool> bifurcateProcess(BifurcateProcessDTO bifurcateProcessDTO)
        {
            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(_BaseAddress);
                var         userJson    = new JavaScriptSerializer().Serialize(bifurcateProcessDTO);
                HttpContent contentPost = new StringContent(userJson, Encoding.UTF8, "application/json");
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", getToken());
                HttpResponseMessage response = client.PutAsync("api/process/bifurcate", contentPost).Result;

                if (response.IsSuccessStatusCode)
                {
                    return(true);
                }
                return(false);
            }
        }
        public static bool bifurcateProcess(BifurcateProcessDTO pBifurcateDTO)
        {
            using (SqlConnection connection = new SqlConnection(WebConfigurationManager.ConnectionStrings["connectionRRHHDatabase"].ConnectionString))
            {
                SqlCommand command = new SqlCommand("usp_update_bifurcateProcess", connection);
                command.CommandType = System.Data.CommandType.StoredProcedure;

                command.Parameters.Add("@previousProcess", SqlDbType.BigInt);
                command.Parameters["@previousProcess"].Value = pBifurcateDTO.previousProcess;
                command.Parameters.Add("@nextProcess", SqlDbType.BigInt);
                command.Parameters["@nextProcess"].Value = pBifurcateDTO.nextProcess;
                command.Parameters.Add("@userLog", SqlDbType.Int);
                command.Parameters["@userLog"].Value = pBifurcateDTO.userLog;

                command.Connection.Open();
                int result = command.ExecuteNonQuery();
                if (result != 0)
                {
                    return(true);
                }
                return(false);
            };
        }