Example #1
0
 public static function getList($parameters = array())
 {
     $query = new Query(static::getEntity());
     if (isset($parameters['select'])) {
         $query->setSelect($parameters['select']);
     } else {
         $query->setSelect(array('*'));
     }
     if (isset($parameters['filter'])) {
         $query->setFilter($parameters['filter']);
     }
     if (isset($parameters['group'])) {
         $query->setGroup($parameters['group']);
     }
     if (isset($parameters['order'])) {
         $query->setOrder($parameters['order']);
     }
     if (isset($parameters['limit'])) {
         $query->setLimit($parameters['limit']);
     }
     if (isset($parameters['offset'])) {
         $query->setOffset($parameters['offset']);
     }
     if (isset($parameters['count_total'])) {
         $query->countTotal($parameters['count_total']);
     }
     if (isset($parameters['options'])) {
         $query->setOptions($parameters['options']);
     }
     if (isset($parameters['runtime'])) {
         foreach ($parameters['runtime'] as $name => $fieldInfo) {
             $query->registerRuntimeField($name, $fieldInfo);
         }
     }
     if (isset($parameters['data_doubling'])) {
         $parameters['data_doubling'] ? $query->enableDataDoubling() : $query->disableDataDoubling();
     }
     return $query->exec();
     // return array?
 }