本文整理汇总了PHP中Tasks::deleteAllGatewayOfTask方法的典型用法代码示例。如果您正苦于以下问题:PHP Tasks::deleteAllGatewayOfTask方法的具体用法?PHP Tasks::deleteAllGatewayOfTask怎么用?PHP Tasks::deleteAllGatewayOfTask使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Tasks
的用法示例。
在下文中一共展示了Tasks::deleteAllGatewayOfTask方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: deleteTask
/**
* Delete a task
* @param string $sTaskUID
* @return void
*/
function deleteTask($sTaskUID = '')
{
try {
//Instance classes
$oTask = new Task();
$oTasks = new Tasks();
$oTaskUser = new TaskUser();
$oStep = new Step();
$oStepTrigger = new StepTrigger();
//Get task information
$aFields = $oTask->load($sTaskUID);
//Delete routes
$oTasks->deleteAllRoutesOfTask($aFields['PRO_UID'], $sTaskUID, true);
//Delete gateways
$oTasks->deleteAllGatewayOfTask($aFields['PRO_UID'], $sTaskUID, true);
//Delete the users assigned to task
$oCriteria = new Criteria('workflow');
$oCriteria->add(TaskUserPeer::TAS_UID, $sTaskUID);
$oDataset1 = TaskUserPeer::doSelectRS($oCriteria);
$oDataset1->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$oDataset1->next();
while ($aRow1 = $oDataset1->getRow()) {
$oTaskUser->remove($aRow1['TAS_UID'], $aRow1['USR_UID'], $aRow1['TU_TYPE'], $aRow1['TU_RELATION']);
$oDataset1->next();
}
//Delete the steps of task
$oCriteria = new Criteria('workflow');
$oCriteria->add(StepPeer::TAS_UID, $sTaskUID);
$oDataset1 = StepPeer::doSelectRS($oCriteria);
$oDataset1->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$oDataset1->next();
while ($aRow1 = $oDataset1->getRow()) {
//Delete the triggers assigned to step
/*$oCriteria = new Criteria('workflow');
$oCriteria->add(StepTriggerPeer::STEP_UID, $aRow1['STEP_UID']);
$oDataset2 = StepTriggerPeer::doSelectRS($oCriteria);
$oDataset2->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$oDataset2->next();
while ($aRow2 = $oDataset2->getRow()) {
$oStepTrigger->remove($aRow2['STEP_UID'], $aRow2['TAS_UID'], $aRow2['TRI_UID'], $aRow2['ST_TYPE']);
$oDataset2->next();
}*/
$oStep->remove($aRow1['STEP_UID']);
$oDataset1->next();
}
//Delete step triggers
$oCriteria = new Criteria('workflow');
$oCriteria->add(StepTriggerPeer::TAS_UID, $sTaskUID);
StepTriggerPeer::doDelete($oCriteria);
//Delete permissions
$oCriteria = new Criteria('workflow');
$oCriteria->add(ObjectPermissionPeer::TAS_UID, $sTaskUID);
ObjectPermissionPeer::doDelete($oCriteria);
$oCriteria = new Criteria('workflow');
$oCriteria->add(ObjectPermissionPeer::OP_TASK_SOURCE, $sTaskUID);
ObjectPermissionPeer::doDelete($oCriteria);
//Delete task
$oTask->remove($sTaskUID);
//Delete cases schedulers added by krlos
$oCriteria = new Criteria('workflow');
$oCriteria->add(CaseSchedulerPeer::TAS_UID, $sTaskUID);
CaseSchedulerPeer::doDelete($oCriteria);
} catch (Exception $oError) {
throw $oError;
}
}
示例2: die
$titleNextTask=G::LoadTranslation("ID_END_OF_PROCESS");
}
G::auditLog("DerivationRule",'PROCESS NAME : '.$titleProcess.' : '.$oData->pro_uid.' Routing rule : '.$sType.' from -> '.$titleTask.' : '.$oData->tas_uid.' To -> '.$titleNextTask.' : '.$oData->next_task);
break;
}
if (($oData->type != 0) && ($oData->type != 5) && ($oData->type != 8)) {
if ($oProcessMap->getNumberOfRoutes($oData->pro_uid, $oData->tas_uid, $oData->next_task, $sType) > 0) {
die();
}
unset($aRow);
}
if (($oData->delete) || ($oData->type == 0) || ($oData->type == 5) || ($oData->type == 8)) {
G::LoadClass('tasks');
$oTasks = new Tasks();
$oTasks->deleteAllRoutesOfTask($oData->pro_uid, $oData->tas_uid);
$oTasks->deleteAllGatewayOfTask($oData->pro_uid, $oData->tas_uid);
}
$oProcessMap->saveNewPattern($oData->pro_uid, $oData->tas_uid, $oData->next_task, $sType, $oData->delete);
break;
case 'deleteAllRoutes':
G::LoadClass('tasks');
$oTaskNewPattern = new Task();
$taskInfo=$oTaskNewPattern->load($oData->tas_uid);
$titleTask=$taskInfo['TAS_TITLE'];
G::auditlog("DeleteRoutes",'Delete All Routes From Task -> '.$titleTask.' : '.$oData->tas_uid);
$oTasks = new Tasks();
$oTasks->deleteAllRoutesOfTask($oData->pro_uid, $oData->tas_uid);
break;
case 'objectPermissions':
$oProcessMap->objectsPermissionsList($oData->pro_uid);
break;
示例3: defineRoute
/**
* Create Route
*
* @param string $processUid
* @param string $taskUid
* @param string $nextTaskUid
* @param string $type
* @param bool $delete
*
* return string Return UID of new Route
*
* @access public
*/
public function defineRoute($processUid, $taskUid, $nextTaskUid, $type, $delete = false)
{
//Copy of processmaker/workflow/engine/methods/processes/processes_Ajax.php //case 'saveNewPattern':
$processMap = new \processMap();
if ($type != "SEQUENTIAL" && $type != "SEC-JOIN" && $type != "DISCRIMINATOR") {
if ($processMap->getNumberOfRoutes($processUid, $taskUid, $nextTaskUid, $type) > 0) {
//die();
throw (new \Exception());
}
//unset($aRow);
}
if ($delete || $type == "SEQUENTIAL" || $type == "SEC-JOIN" || $type == "DISCRIMINATOR") {
//\G::LoadClass("tasks");
$tasks = new \Tasks();
$tasks->deleteAllRoutesOfTask($processUid, $taskUid);
$tasks->deleteAllGatewayOfTask($processUid, $taskUid);
}
return $processMap->saveNewPattern($processUid, $taskUid, $nextTaskUid, $type, $delete);
}