/** * Task copy: Task_lab_analyte * Fetches the related Task_lab_analyte for the * original task and creates the relation with the new * Task created in "copyTaskWithDependencies" */ public static function copyTaskTaskLabAnalyte($caller, $source_task_id, $target_task_id) { $tlaDAO = new \Applications\PMTool\Models\Dao\Task_lab_analyte(); $tlaDAO->setTask_id($source_task_id); $dal = $caller->managers()->getManagerOf("Task"); $allTlas = $dal->selectMany($tlaDAO, "task_id"); if (count($allTlas) > 0) { //fals found, loop and remap with the new task id foreach ($allTlas as $tla) { $tlaDAO = null; $tlaDAO = new \Applications\PMTool\Models\Dao\Task_lab_analyte(); $tlaDAO->setTask_id($target_task_id); $tlaDAO->setLab_analyte_id($tla->lab_analyte_id()); //Save $dal->add($tlaDAO); } } }
/** * Gets all TaskLabAnalytes from the relevant table * and sets the same to Session */ public static function GetAndStoreTaskLabAnalytes($caller, $sessionTask) { $sessionTasks = $caller->user()->getAttribute(\Library\Enums\SessionKeys::SessionTasks); $taskLabAnalyte = new \Applications\PMTool\Models\Dao\Task_lab_analyte(); $taskLabAnalyte->setTask_id($sessionTask[\Library\Enums\SessionKeys::TaskObj]->task_id()); // if (!(count($sessionProject[\Library\Enums\SessionKeys::ProjectServices]) > 0)) { $dal = $caller->managers()->getManagerOf("TaskLabAnalyte"); $sessionTask[\Library\Enums\SessionKeys::TaskLabAnalytes] = $dal->selectMany($taskLabAnalyte, "task_id"); // } TaskHelper::SetSessionTask($caller->user(), $sessionTask); TaskHelper::SetCurrentSessionTask($caller->user(), $sessionTask); return self::GetLabAnalytesFromTaskLabAnalytes($caller->user(), $sessionTask); }