BY-195 Agregando validacion para obtener los datos del proceso hijo al enviar el mail
BY-195 Agregando validacion para obtener los datos del proceso hijo al enviar el mail BY-195 Agregando validacion para obtener los datos del proceso hijo al enviar el mail BY-195 Agregando validacion para obtener los datos del proceso hijo al enviar el mail Adding validation to get the data of the last task in the parent subprocess when the thread is going back from the son threat. Fixing merge conflicts
This commit is contained in:
@@ -95,6 +95,7 @@ class Pmgmail {
|
||||
|
||||
$frmData = unserialize($formData['APP_DATA']);
|
||||
$dataFormToShowString = "";
|
||||
|
||||
foreach ($frmData as $field => $value) {
|
||||
if (($field != 'SYS_LANG') &&
|
||||
($field != 'SYS_SKIN') &&
|
||||
@@ -135,48 +136,99 @@ class Pmgmail {
|
||||
}
|
||||
|
||||
if ((string)$mailToAddresses === "") {
|
||||
if ($arrayTask) {
|
||||
$oCases = new \Cases();
|
||||
if ($arrayTask) {
|
||||
$oCases = new \Cases();
|
||||
|
||||
foreach ($arrayTask as $aTask) {
|
||||
if(!isset($aTask["USR_UID"])){
|
||||
$aTask["USR_UID"] = "";
|
||||
}
|
||||
$respTo = $oCases->getTo($aTask["TAS_ASSIGN_TYPE"], $aTask["TAS_UID"], $aTask["USR_UID"], $arrayData);
|
||||
$mailToAddresses = $respTo['to'];
|
||||
$mailCcAddresses = $respTo['cc'];
|
||||
|
||||
if($aTask["TAS_ASSIGN_TYPE"] === "SELF_SERVICE"){
|
||||
$labelID = "PMUASS";
|
||||
if ((string)$mailToAddresses === ""){ // Self Service Value Based
|
||||
$criteria = new \Criteria("workflow");
|
||||
$criteria->addSelectColumn(\AppAssignSelfServiceValuePeer::GRP_UID);
|
||||
$criteria->add(\AppAssignSelfServiceValuePeer::APP_UID, $app_uid);
|
||||
|
||||
$rsCriteria = \AppAssignSelfServiceValuePeer::doSelectRs($criteria);
|
||||
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
|
||||
while ($rsCriteria->next()) {
|
||||
$row = $rsCriteria->getRow();
|
||||
}
|
||||
$taskUsers = unserialize($row['GRP_UID']);
|
||||
|
||||
foreach ($arrayTask as $aTask) {
|
||||
if (!isset($aTask["USR_UID"])) {
|
||||
$aTask["USR_UID"] = "";
|
||||
}
|
||||
$respTo = $oCases->getTo($aTask["TAS_ASSIGN_TYPE"], $aTask["TAS_UID"], $aTask["USR_UID"],
|
||||
$arrayData);
|
||||
$mailToAddresses = $respTo['to'];
|
||||
$mailCcAddresses = $respTo['cc'];
|
||||
foreach ($taskUsers as $user) {
|
||||
$oUsers = new \Users();
|
||||
$usrData = $oUsers->loadDetails($user);
|
||||
$nextMail = $usrData['USR_EMAIL'];
|
||||
$mailToAddresses .= ($mailToAddresses == '') ? $nextMail : ',' . $nextMail;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (!$aTask["TAS_PARENT"]){
|
||||
$aTask["TAS_PARENT"] = $tasUid;
|
||||
}
|
||||
$oTask = new \Task();
|
||||
$aTaskInfo = $oTask->load($aTask["TAS_PARENT"]);
|
||||
|
||||
if ($aTask["TAS_ASSIGN_TYPE"] === "SELF_SERVICE") {
|
||||
$labelID = "PMUASS";
|
||||
if ((string)$mailToAddresses === "") { // Self Service Value Based
|
||||
$criteria = new \Criteria("workflow");
|
||||
$criteria->addSelectColumn(\AppAssignSelfServiceValuePeer::GRP_UID);
|
||||
$criteria->add(\AppAssignSelfServiceValuePeer::APP_UID, $app_uid);
|
||||
$oSubPro = new \SubApplication();
|
||||
if( ($aTaskInfo["TAS_TYPE"] === "SUBPROCESS") ){
|
||||
$subProAppUid = $oSubPro->loadSubProUidByParent($app_uid, $index, $index+1);
|
||||
$index = 1;
|
||||
} else if($aTask['TAS_UID'] == -1 && $aTask['TAS_ASSIGN_TYPE'] == "nobody"){
|
||||
$subProAppUid = $oSubPro->loadSubProUidBySon($app_uid, $index, $index+1);
|
||||
|
||||
$rsCriteria = \AppAssignSelfServiceValuePeer::doSelectRs($criteria);
|
||||
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
$appDel = new \AppDelegation();
|
||||
$actualThread = $appDel->Load($subProAppUid, $index+1);
|
||||
$index = $actualThread['DEL_INDEX'];
|
||||
|
||||
$aCriteria = new \Criteria("workflow");
|
||||
$aCriteria->addSelectColumn(\RoutePeer::ROU_NEXT_TASK);
|
||||
$aCriteria->add(\RoutePeer::TAS_UID, $actualThread['TAS_UID']);
|
||||
|
||||
$roCriteria = \RoutePeer::doSelectRs($aCriteria);
|
||||
$roCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
|
||||
while ($roCriteria->next()) {
|
||||
$rowTas = $roCriteria->getRow();
|
||||
}
|
||||
|
||||
while ($rsCriteria->next()) {
|
||||
$row = $rsCriteria->getRow();
|
||||
}
|
||||
$taskUsers = unserialize($row['GRP_UID']);
|
||||
$aTaskInfo = $oTask->load($rowTas['ROU_NEXT_TASK']);
|
||||
$newTask = new \Tasks();
|
||||
$aTaskUsers = $newTask->getUsersOfTask($rowTas['ROU_NEXT_TASK'],1);
|
||||
|
||||
foreach ($taskUsers as $user) {
|
||||
$oUsers = new \Users();
|
||||
$usrData = $oUsers->loadDetails($user);
|
||||
$nextMail = $usrData['USR_EMAIL'];
|
||||
$mailToAddresses .= ($mailToAddresses == '') ? $nextMail : ',' . $nextMail;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$oUsers = new \Users();
|
||||
foreach ($aTaskUsers as $user) {
|
||||
$nextMail = $user['USR_EMAIL'];
|
||||
$mailToAddresses .= ($mailToAddresses == '') ? $nextMail : ',' . $nextMail;
|
||||
}
|
||||
}
|
||||
|
||||
$usrData = $oUsers->loadDetails($nextUsr);
|
||||
$mailToAddresses = $usrData['USR_EMAIL'];
|
||||
}
|
||||
if($subProAppUid !== ""){
|
||||
$subProData = $oApplication->Load($subProAppUid);
|
||||
$oProcess = new \Processes();
|
||||
$proInfo = $oProcess->getProcessRow($subProData['PRO_UID']);
|
||||
|
||||
$appNumber = $subProData['APP_NUMBER'];
|
||||
$app_uid = $subProAppUid;
|
||||
$tasName = $aTaskInfo["TAS_TITLE"];
|
||||
$appStatus = $subProData['APP_STATUS'];
|
||||
$prvUsr = $nextUsr;
|
||||
$delegateDate = $subProData['APP_CREATE_DATE'];
|
||||
$proName = $proInfo['PRO_TITLE'];
|
||||
}
|
||||
}
|
||||
}
|
||||
}else {
|
||||
$oUsers = new \Users();
|
||||
|
||||
$usrData = $oUsers->loadDetails($nextUsr);
|
||||
$mailToAddresses = $usrData['USR_EMAIL'];
|
||||
}
|
||||
}
|
||||
|
||||
//first template
|
||||
|
||||
Reference in New Issue
Block a user