Exemplo n.º 1
0
 /**
  * Task copy: Task_service
  * Fetches the related Task_service for the
  * original task and creates the relation with the new
  * Task created in "copyTaskWithDependencies"
  */
 public static function copyTaskTaskService($caller, $source_task_id, $target_task_id)
 {
     $tsDAO = new \Applications\PMTool\Models\Dao\Task_service();
     $tsDAO->setTask_id($source_task_id);
     $dal = $caller->managers()->getManagerOf("Task");
     $allTSs = $dal->selectMany($tsDAO, "task_id");
     if (count($allTSs) > 0) {
         //TSs found, loop and remap with the new task id
         foreach ($allTSs as $ts) {
             $tsDAO = null;
             $tsDAO = new \Applications\PMTool\Models\Dao\Task_service();
             $tsDAO->setTask_id($target_task_id);
             $tsDAO->setService_id($ts->service_id());
             //Save
             $id = $dal->add($tsDAO);
         }
     }
 }
Exemplo n.º 2
0
 public static function UpdateTaskForms($caller)
 {
     $result = $caller->InitResponseWS();
     // Init result
     $dataPost = $caller->dataPost();
     $result["rows_affected"] = 0;
     $result["forms_ids"] = str_getcsv($dataPost["arrayOfValues"], ',');
     $sessionTask = \Applications\PMTool\Helpers\TaskHelper::GetCurrentSessionTask($caller->user());
     $task_services = array();
     foreach ($result["service_ids"] as $id) {
         $task_service = new \Applications\PMTool\Models\Dao\Task_service();
         $task_service->setService_id($id);
         $task_service->setTask_id($sessionTask[\Library\Enums\SessionKeys::TaskObj]->task_id());
         $dal = $caller->managers()->getManagerOf($caller->module());
         if ($dataPost["action"] === "add") {
             $result["rows_affected"] += $dal->add($task_service) >= 0 ? 1 : 0;
         } else {
             $result["rows_affected"] += $dal->delete($task_service, "service_id") ? 1 : 0;
         }
         array_push($task_services, $task_service);
     }
     $sessionTask[\Library\Enums\SessionKeys::TaskServices] = $task_services;
     \Applications\PMTool\Helpers\TaskHelper::SetSessionTask($caller->user(), $sessionTask);
     return $result;
 }