PM-3590 "La bandeja participated no actualiza la columna..." SOLVED

Issue:
    La bandeja participated no actualiza la columna "Case" cuando se deriva el caso a otro usuario
Cause:
    No se actualiza los datos en la tabla LIST_PARTICIPATED_LAST cuando el caso es creado y luego derivado
Solution:
    Se actualiza los datos en la tabla LIST_PARTICIPATED_LAST cuando el caso es creado y luego derivado
This commit is contained in:
Victor Saisa Lopez
2015-09-26 15:06:52 -04:00
parent e93d5edbce
commit 7cb37f9720

View File

@@ -104,27 +104,45 @@ class ListInbox extends BaseListInbox
$listParticipatedLast = new ListParticipatedLast();
$listParticipatedLast->remove($data['APP_UID'], $data['USR_UID'], $data['DEL_INDEX']);
//Update
//Update - SET
$criteriaSet = new Criteria("workflow");
$criteriaSet->add(ListParticipatedLastPeer::USR_UID, $data["USR_UID"]);
//Update - WHERE
$criteriaWhere = new Criteria("workflow");
$criteriaWhere->add(ListParticipatedLastPeer::APP_UID, $data["APP_UID"], Criteria::EQUAL);
$criteriaWhere->add(ListParticipatedLastPeer::USR_UID, 'SELF_SERVICES', Criteria::EQUAL);
$criteriaWhere->add(ListParticipatedLastPeer::USR_UID, "SELF_SERVICES", Criteria::EQUAL);
$criteriaWhere->add(ListParticipatedLastPeer::DEL_INDEX, $data["DEL_INDEX"], Criteria::EQUAL);
//Update - SET
$criteriaSet = new Criteria("workflow");
$criteriaSet->add(ListParticipatedLastPeer::USR_UID, $data['USR_UID']);
BasePeer::doUpdate($criteriaWhere, $criteriaSet, Propel::getConnection("workflow"));
//Update
$listParticipatedLast = new ListParticipatedLast();
$listParticipatedLast->refresh($data);
$users = new Users();
$users->refreshTotal($data['USR_UID'], 'add', 'participated');
} else {
if (isset($data["APP_UID"]) && isset($data["USER_UID"]) && isset($data["DEL_INDEX"]) && isset($data["APP_TITLE"])) {
//Update
//Update - SET
$criteriaSet = new Criteria("workflow");
$criteriaSet->add(ListParticipatedLastPeer::APP_TITLE, $data["APP_TITLE"]);
//Update - WHERE
$criteriaWhere = new Criteria("workflow");
$criteriaWhere->add(ListParticipatedLastPeer::APP_UID, $data["APP_UID"], Criteria::EQUAL);
$criteriaWhere->add(ListParticipatedLastPeer::USR_UID, $data["USER_UID"], Criteria::EQUAL);
$criteriaWhere->add(ListParticipatedLastPeer::DEL_INDEX, $data["DEL_INDEX"], Criteria::EQUAL);
$result = BasePeer::doUpdate($criteriaWhere, $criteriaSet, Propel::getConnection("workflow"));
}
}
if((array_key_exists('TAS_UID', $data) && isset($data['TAS_UID'])) && (array_key_exists('TAS_UID', $data) && isset($data['PRO_UID'])) && isset($data['APP_UID'])) {
$data['DEL_PRIORITY'] = $this->getTaskPriority($data['TAS_UID'], $data['PRO_UID'], $data["APP_UID"]);
}
$con = Propel::getConnection( ListInboxPeer::DATABASE_NAME );
try {
$con->begin();
@@ -206,7 +224,7 @@ class ListInbox extends BaseListInbox
if (isset($data['DEL_TASK_DUE_DATE'])) {
$data['DEL_DUE_DATE'] = $data['DEL_TASK_DUE_DATE'];
}
if(!isset($data['DEL_DUE_DATE'])) {
$filters = array("APP_UID" => $data["APP_UID"], "DEL_INDEX" => $data['DEL_INDEX']);
$data['DEL_DUE_DATE'] = $this->getAppDelegationInfo($filters,'DEL_TASK_DUE_DATE');
@@ -257,8 +275,8 @@ class ListInbox extends BaseListInbox
$dataset->next();
$aRow = $dataset->getRow();
$data['APP_TAS_TITLE'] = $aRow['CON_VALUE'];
$data['DEL_PRIORITY'] = $this->getTaskPriority($data['TAS_UID'], $data['PRO_UID'], $data["APP_UID"]);
@@ -487,7 +505,7 @@ class ListInbox extends BaseListInbox
}
return $data;
}
public function getTaskPriority($taskUid, $proUid, $appUid)
{
$criteria = new Criteria();
@@ -509,7 +527,7 @@ class ListInbox extends BaseListInbox
}
return $priority != "" ? $priority : 3;
}
public function getAppDelegationInfo($filters, $fieldName)
{
$criteria = new Criteria();
@@ -521,7 +539,7 @@ class ListInbox extends BaseListInbox
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$dataset->next();
$aRow = $dataset->getRow();
return isset($aRow[$fieldName]) ? $aRow[$fieldName] : NULL;
return isset($aRow[$fieldName]) ? $aRow[$fieldName] : NULL;
}
}