Example #1
0
 /**
  * Retorna um array de objetos do tipo Model referente à entidade
  * @param SQLCriteria $criteria
  * @return array
  */
 public function fetchAll(SQLCriteria $criteria)
 {
     $repo = new Repository($this->getClass());
     return $repo->load($criteria);
 }
Example #2
0
 /**
  * Método load()
  * Recuperar um conjunto de objetos (collection) da base de dados
  * através de um  critério de seleção, e instanciá-los em memória
  * @return Model[] Retorna um array com os objetos do tipo passado como parâmetro
  * ou false caso a criteria não retorne nenhum conteúdo
  * @throws Exception Caso o Model não seja definido
  */
 public function load()
 {
     if ($this->model) {
         $repository = new Repository($this->model);
     } else {
         throw new Exception("ModelClass não definido");
     }
     if (!$this->criteria) {
         $this->criteria = new SQLCriteria();
     }
     $this->total = $repository->count($this->criteria);
     $this->setTotalRecords($this->limit, $this->total);
     if (!is_null($this->order)) {
         $this->criteria->setOrderBy($this->order);
     }
     if (!is_null($this->group)) {
         $this->criteria->setGroupBy($this->group);
     }
     $this->criteria->setLimit(($this->page - 1) * $this->limit . "," . $this->limit);
     $this->records = $repository->load($this->criteria);
     return $this->records;
 }