Lançado Adianti Framework 8.1!
Clique aqui para saber mais
Filtro em uma chamada REST Como construo um parâmetro de filtro com o operador OR (ou outro) em uma chamada REST? Fiz como a figura abaixo, mas não rodou. ...
JF
Filtro em uma chamada REST  
Como construo um parâmetro de filtro com o operador OR (ou outro) em uma chamada REST? Fiz como a figura abaixo, mas não rodou.
  1. <?php
  2. // ...
  3. $location 'http://localhost/imobik/rest.php';
  4. $parameters = array();
  5. $parameters['class'] = 'ImovelService';
  6. $parameters['method'] = 'loadAll';
  7. $parameters['filters'] = [ ['situacao''='1,'OR_OPERATOR'], ['situacao''='5] ];
  8. $url $location '?' http_build_query($parameters);
  9. ?>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (2)


NR

Tem que analisar como os filtros estão sendo tratados pela classe ImovelService(que deve herdar de AdiantiRecordService):
  1. <?php
  2. if (isset($param['filters']))
  3. {
  4.       foreach ($param['filters'] as $filter)
  5.       {
  6.              $criteria->add(new TFilter($filter[0], $filter[1], $filter[2]));
  7.       }
  8. }
  9. ?>

Veja que não há tratamento inicial para "OR". Nesse caso, se não quiser modificar o código, tente usar o "IN":
  1. <?php
  2. $parameters['filters'] = [ ['situacao''in', [1,5]]];
  3. ?>
JF

Sim, claro, agora entendo o porquê do filtro não estar tratando o quarto elemento do vetor. Obrigado, VALEU!