PMC-1106
This commit is contained in:
@@ -956,52 +956,6 @@ class Process extends BaseProcess
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function refreshUserAllCountersByProcessesGroupUid($proUidArray)
|
|
||||||
{
|
|
||||||
$aTypes = array(
|
|
||||||
'to_do',
|
|
||||||
'draft',
|
|
||||||
'cancelled',
|
|
||||||
'sent',
|
|
||||||
'paused',
|
|
||||||
'completed',
|
|
||||||
'selfservice'
|
|
||||||
);
|
|
||||||
$usersArray = array();
|
|
||||||
$users = new Users();
|
|
||||||
$oCase = new Cases();
|
|
||||||
$oCriteria = new Criteria();
|
|
||||||
$oCriteria->addSelectColumn(AppDelegationPeer::APP_UID);
|
|
||||||
$oCriteria->addSelectColumn(AppDelegationPeer::USR_UID);
|
|
||||||
$oCriteria->setDistinct();
|
|
||||||
$oCriteria->add(AppDelegationPeer::PRO_UID, $proUidArray, Criteria::IN);
|
|
||||||
$oRuleSet = AppDelegationPeer::doSelectRS($oCriteria);
|
|
||||||
$oRuleSet->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
|
||||||
while ($oRuleSet->next()) {
|
|
||||||
$row = $oRuleSet->getRow();
|
|
||||||
if (isset($row['USR_UID']) && $row['USR_UID'] != '') {
|
|
||||||
$usersArray[$row['USR_UID']] = $row['USR_UID'];
|
|
||||||
}
|
|
||||||
$oCase->deleteDelegation($row['APP_UID']);
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach ($usersArray as $value) {
|
|
||||||
$oAppCache = new AppCacheView();
|
|
||||||
$aCount = $oAppCache->getAllCounters($aTypes, $value);
|
|
||||||
$newData = array(
|
|
||||||
'USR_UID' => $value,
|
|
||||||
'USR_TOTAL_INBOX' => $aCount['to_do'],
|
|
||||||
'USR_TOTAL_DRAFT' => $aCount['draft'],
|
|
||||||
'USR_TOTAL_CANCELLED' => $aCount['cancelled'],
|
|
||||||
'USR_TOTAL_PARTICIPATED' => $aCount['sent'],
|
|
||||||
'USR_TOTAL_PAUSED' => $aCount['paused'],
|
|
||||||
'USR_TOTAL_COMPLETED' => $aCount['completed'],
|
|
||||||
'USR_TOTAL_UNASSIGNED' => $aCount['selfservice']
|
|
||||||
);
|
|
||||||
$users->update($newData);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Load a process object by PRO_ID
|
* Load a process object by PRO_ID
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -1,14 +1,21 @@
|
|||||||
<?php
|
<?php
|
||||||
|
/**
|
||||||
|
* processes_DeleteCases.php
|
||||||
|
*
|
||||||
|
* Deleting all Cases of a Process
|
||||||
|
*
|
||||||
|
* @link https://wiki.processmaker.com/3.2/Processes#Deleting_all_Cases_of_a_Process
|
||||||
|
*/
|
||||||
|
|
||||||
global $RBAC;
|
global $RBAC;
|
||||||
$RBAC->requirePermissions( 'PM_DELETE_PROCESS_CASES', 'PM_FACTORY' );
|
$RBAC->requirePermissions('PM_DELETE_PROCESS_CASES', 'PM_FACTORY');
|
||||||
$resp = new StdClass();
|
$resp = new stdClass();
|
||||||
try {
|
try {
|
||||||
$uids = explode(',', $_POST['PRO_UIDS']);
|
$uids = explode(',', $_POST['PRO_UIDS']);
|
||||||
$oProcess = new Process();
|
$process = new Process();
|
||||||
foreach ($uids as $uid) {
|
foreach ($uids as $uid) {
|
||||||
$oProcess->deleteProcessCases($uid);
|
$process->deleteProcessCases($uid);
|
||||||
}
|
}
|
||||||
$oProcess->refreshUserAllCountersByProcessesGroupUid($uids);
|
|
||||||
|
|
||||||
$resp->status = true;
|
$resp->status = true;
|
||||||
$resp->msg = G::LoadTranslation('ID_ALL_RECORDS_DELETED_SUCESSFULLY');
|
$resp->msg = G::LoadTranslation('ID_ALL_RECORDS_DELETED_SUCESSFULLY');
|
||||||
@@ -22,4 +29,3 @@ try {
|
|||||||
echo G::json_encode($resp);
|
echo G::json_encode($resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user