Exemplo n.º 1
0
 public function loadList($usr_uid, $filters = array(), $callbackRecord = null)
 {
     $resp = array();
     $criteria = new Criteria();
     $criteria->addSelectColumn(ListUnassignedPeer::APP_UID);
     $criteria->addSelectColumn(ListUnassignedPeer::DEL_INDEX);
     $criteria->addSelectColumn(ListUnassignedPeer::TAS_UID);
     $criteria->addSelectColumn(ListUnassignedPeer::PRO_UID);
     $criteria->addSelectColumn(ListUnassignedPeer::APP_NUMBER);
     $criteria->addSelectColumn(ListUnassignedPeer::APP_TITLE);
     $criteria->addSelectColumn(ListUnassignedPeer::APP_PRO_TITLE);
     $criteria->addSelectColumn(ListUnassignedPeer::APP_TAS_TITLE);
     $criteria->addSelectColumn(ListUnassignedPeer::APP_PREVIOUS_USR_USERNAME);
     $criteria->addSelectColumn(ListUnassignedPeer::APP_PREVIOUS_USR_FIRSTNAME);
     $criteria->addSelectColumn(ListUnassignedPeer::APP_PREVIOUS_USR_LASTNAME);
     $criteria->addSelectColumn(ListUnassignedPeer::DEL_PREVIOUS_USR_UID);
     $criteria->addSelectColumn(ListUnassignedPeer::DEL_DELEGATE_DATE);
     $criteria->addSelectColumn(ListUnassignedPeer::DEL_DUE_DATE);
     $criteria->addSelectColumn(ListUnassignedPeer::DEL_PRIORITY);
     $aConditions = array();
     $aConditions[] = array(ListUnassignedPeer::UNA_UID, ListUnassignedGroupPeer::UNA_UID);
     $aConditions[] = array(ListUnassignedGroupPeer::USR_UID, "'" . $usr_uid . "'");
     $criteria->addJoinMC($aConditions, Criteria::INNER_JOIN);
     self::loadFilters($criteria, $filters);
     $sort = !empty($filters['sort']) ? $filters['sort'] : "LIST_UNASSIGNED.DEL_DELEGATE_DATE";
     $dir = isset($filters['dir']) ? $filters['dir'] : "ASC";
     $start = isset($filters['start']) ? $filters['start'] : "0";
     $limit = isset($filters['limit']) ? $filters['limit'] : "25";
     $paged = isset($filters['paged']) ? $filters['paged'] : 1;
     $count = isset($filters['count']) ? $filters['count'] : 1;
     if ($count == 1) {
         $criteriaTotal = clone $criteria;
         $resp['total'] = ListUnassignedPeer::doCount($criteriaTotal);
     }
     if ($dir == "DESC") {
         $criteria->addDescendingOrderByColumn($sort);
     } else {
         $criteria->addAscendingOrderByColumn($sort);
     }
     if ($paged == 1) {
         $criteria->setLimit($limit);
         $criteria->setOffset($start);
     }
     $dataset = ListUnassignedPeer::doSelectRS($criteria);
     $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
     $data = array();
     $aPriorities = array('1' => 'VL', '2' => 'L', '3' => 'N', '4' => 'H', '5' => 'VH');
     while ($dataset->next()) {
         $aRow = is_null($callbackRecord) ? $dataset->getRow() : $callbackRecord($dataset->getRow());
         $aRow['DEL_PRIORITY'] = G::LoadTranslation("ID_PRIORITY_{$aPriorities[$aRow['DEL_PRIORITY']]}");
         $data[] = $aRow;
     }
     if ($count == 1) {
         $resp['data'] = $data;
     } else {
         $resp = $data;
     }
     return $resp;
 }