function createTest($aTestData, $aFields) { $oTaskUser = new TaskUser(); try { return $oTaskUser->create($aFields); } catch (Exception $oError) { return $oError; } }
/** * Assign a Adhoc user or group to an activity * * @param string $sProcessUID {@min 32} {@max 32} * @param string $sTaskUID {@min 32} {@max 32} * @param string $sAssigneeUID {@min 32} {@max 32} * @param string $assType {@choice user,group} * * return array * * @access public */ public function addTaskAdhocAssignee($sProcessUID, $sTaskUID, $sAssigneeUID, $assType) { try { Validator::proUid($sProcessUID, '$prj_uid'); $this->validateActUid($sTaskUID); $iType = 2; $iRelation = ''; $oCriteria = new \Criteria('workflow'); $oCriteria->addSelectColumn(\TaskUserPeer::TU_RELATION); $oCriteria->add(\TaskUserPeer::USR_UID, $sAssigneeUID); $oCriteria->add(\TaskUserPeer::TAS_UID, $sTaskUID); $oCriteria->add(\TaskUserPeer::TU_TYPE, $iType); $oTaskUser = \TaskUserPeer::doSelectRS($oCriteria); $oTaskUser->setFetchmode(\ResultSet::FETCHMODE_ASSOC); while ($oTaskUser->next()) { $aRow = $oTaskUser->getRow(); $iRelation = $aRow['TU_RELATION']; } $oTaskUser = \TaskUserPeer::retrieveByPK($sTaskUID, $sAssigneeUID, $iType, $iRelation); if (!is_null($oTaskUser)) { throw new \Exception(\G::LoadTranslation("ID_ALREADY_ASSIGNED", array($sAssigneeUID, $sTaskUID))); } else { $oTypeAssigneeG = \GroupwfPeer::retrieveByPK($sAssigneeUID); $oTypeAssigneeU = \UsersPeer::retrieveByPK($sAssigneeUID); if (is_null($oTypeAssigneeG) && is_null($oTypeAssigneeU)) { throw new \Exception(\G::LoadTranslation("ID_DOES_NOT_CORRESPOND", array($sAssigneeUID, $assType))); } if (is_null($oTypeAssigneeG) && !is_null($oTypeAssigneeU)) { $type = "user"; if ($type != $assType) { throw new \Exception(\G::LoadTranslation("ID_DOES_NOT_CORRESPOND", array($sAssigneeUID, $assType))); } } if (!is_null($oTypeAssigneeG) && is_null($oTypeAssigneeU)) { $type = "group"; if ($type != $assType) { throw new \Exception(\G::LoadTranslation("ID_DOES_NOT_CORRESPOND", array($sAssigneeUID, $assType))); } } $oTaskUser = new \TaskUser(); if ($assType == "user") { $oTaskUser->create(array('TAS_UID' => $sTaskUID, 'USR_UID' => $sAssigneeUID, 'TU_TYPE' => $iType, 'TU_RELATION' => 1)); } else { $oTaskUser->create(array('TAS_UID' => $sTaskUID, 'USR_UID' => $sAssigneeUID, 'TU_TYPE' => $iType, 'TU_RELATION' => 2)); } $task = new \Task(); $result = $task->update(array("TAS_UID" => $sTaskUID, "TAS_TYPE" => "ADHOC")); } } catch (\Exception $e) { throw $e; } }
/** * Get Task User Rows from an array of data * * @param array $aTaskUser * @return array $aStepTrigger */ public function createTaskUserRows ($aTaskUser) { if (is_array($aTaskUser)) { foreach ($aTaskUser as $key => $row) { $oTaskUser = new TaskUser(); if ($oTaskUser->TaskUserExists( $row['TAS_UID'], $row['USR_UID'], $row['TU_TYPE'], $row['TU_RELATION'] )) { $oTaskUser->remove( $row['TAS_UID'], $row['USR_UID'], $row['TU_TYPE'], $row['TU_RELATION'] ); } $res = $oTaskUser->create( $row ); } } return; }
/** * Assign actors to task * * @param unknown_type $param */ public function assignActorsTask($param) { require_once 'classes/model/TaskUser.php'; require_once 'classes/model/Task.php'; $oTaskUser = new TaskUser(); $UIDS = explode(',', $param->UIDS); $TU_TYPE = $param->TU_TYPE; $TAS_UID = $param->TAS_UID; foreach ($UIDS as $UID) { if ($param->TU_RELATION == '1') { $res[] = $oTaskUser->create(array('TAS_UID' => $TAS_UID, 'USR_UID' => $UID, 'TU_TYPE' => $TU_TYPE, 'TU_RELATION' => 1)); } else { $res[] = $oTaskUser->create(array('TAS_UID' => $TAS_UID, 'USR_UID' => $UID, 'TU_TYPE' => $TU_TYPE, 'TU_RELATION' => 2)); } } $task = TaskPeer::retrieveByPk($TAS_UID); $this->success = true; if (!in_array('-1', $res)) { if (count($UIDS) == 1) { $this->msg = __('ID_ACTOR_ASSIGNED_SUCESSFULLY', SYS_LANG, array('tas_title' => $task->getTasTitle())); } else { $this->msg = __('ID_ACTORS_ASSIGNED_SUCESSFULLY', SYS_LANG, array(count($UIDS), $task->getTasTitle())); } } else { if (count($UIDS) == 1) { $this->msg = __('ID_ACTOR_ALREADY_ASSIGNED', SYS_LANG, array($task->getTasTitle())); } else { $this->msg = __('ID_SOME_ACTORS_ALREADY_ASSIGNED', SYS_LANG, array($task->getTasTitle())); } } }
public function assignUsersTask($param) { try { require_once 'classes/model/TaskUser.php'; require_once 'classes/model/Task.php'; $oTaskUser = new TaskUser(); $UIDS = explode(',', $param['UIDS']); $TU_TYPE = 1; foreach ($UIDS as $UID) { if ($_POST['TU_RELATION'] == 1) { $oTaskUser->create(array('TAS_UID' => $param['TAS_UID'], 'USR_UID' => $UID, 'TU_TYPE' => $TU_TYPE, 'TU_RELATION' => 1)); } else { $oTaskUser->create(array('TAS_UID' => $param['TAS_UID'], 'USR_UID' => $UID, 'TU_TYPE' => $TU_TYPE, 'TU_RELATION' => 2)); } } $task = TaskPeer::retrieveByPk($param['TAS_UID']); $result->success = true; if (count($UIDS) > 1) { $result->msg = __('ID_ACTORS_ASSIGNED_SUCESSFULLY', SYS_LANG, array(count($UIDS), $task->getTasTitle())); } else { $result->msg = __('ID_ACTOR_ASSIGNED_SUCESSFULLY', SYS_LANG, array('tas_title' => $task->getTasTitle())); } } catch (Exception $e) { $result->success = false; $result->msg = $e->getMessage(); } print G::json_encode($result); }
/** * Assign a group to task * @param string $sTaskUID * @param string $sGroupUID * @param string $iType * @return integer */ public function assignGroup($sTaskUID = '', $sGroupUID = '', $iType = '') { try { $oTaskUser = new TaskUser(); /*$oCriteria = new Criteria('workflow'); $oCriteria->add(GroupUserPeer::GRP_UID, $sGroupUID); $oDataset = GroupUserPeer::doSelectRS($oCriteria); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset->next(); while ($aGroupUser = $oDataset->getRow()) { $oCriteria = new Criteria('workflow'); $oCriteria->add(TaskUserPeer::TAS_UID, $sTaskUID); $oCriteria->add(TaskUserPeer::USR_UID, $aGroupUser['USR_UID']); $oDataset2 = TaskUserPeer::doSelectRS($oCriteria); $oDataset2->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset2->next(); $aRow = $oDataset2->getRow(); if (!is_array($aRow)) { $this->assignUser($sTaskUID, $aGroupUser['USR_UID'], $iType); } $oDataset->next(); }*/ return $oTaskUser->create(array('TAS_UID' => $sTaskUID, 'USR_UID' => $sGroupUID, 'TU_TYPE' => $iType, 'TU_RELATION' => 2)); } catch (Exception $oError) { throw $oError; } }