Skip to content

Instantly share code, notes, and snippets.

@dmsysop
Created October 15, 2015 21:00
Show Gist options
  • Save dmsysop/6edeff1877e387322395 to your computer and use it in GitHub Desktop.
Save dmsysop/6edeff1877e387322395 to your computer and use it in GitHub Desktop.
/* BUSCA PAGINATE */
$this->Profissional->recursive = -1;
$joins = array();
$joins[] = array(
'table' => 'profissionais_subcategorias',
'alias' => 'ProfissionaisSubcategorias',
'type' => 'INNER',
'foreignKey' => false,
'conditions' => array(
'ProfissionaisSubcategorias.profissional_id = Profissional.id'
)
);
$joins[] = array(
'table' => 'profissionais_telefones',
'alias' => 'ProfissionaisTelefones',
'type' => 'LEFT',
'foreignKey' => false,
'conditions' => array(
'ProfissionaisTelefones.profissional_id = Profissional.id'
)
);
$joins[] = array(
'table' => 'subcategorias',
'alias' => 'Subcategorias',
'type' => 'LEFT',
'foreignKey' => false,
'conditions' => array(
'Subcategorias.id = ProfissionaisSubcategorias.subcategoria_id'
)
);
$joins[] = array(
'table' => 'profissionais_especialidades',
'alias' => 'ProfissionaisEspecialidade',
'type' => 'LEFT',
'foreignKey' => false,
'conditions' => array(
'ProfissionaisEspecialidade.profissional_id = Profissional.id',
'ProfissionaisEspecialidade.parent_id = Subcategorias.id',
)
);
$joins[] = array(
'table' => 'acl_usuarios',
'alias' => 'Usuarios',
'type' => 'LEFT',
'foreignKey' => true,
'conditions' => array(
'Usuarios.id = Profissional.acl_usuario_id'
)
);
$fields = array(
'Profissional.id',
'Profissional.nome',
'Profissional.texto',
'Profissional.url',
'Profissional.email',
'Profissional.cidade',
'Profissional.estado',
'Profissional.facebook',
'Profissional.twitter',
'Profissional.gplus',
'Profissional.assinante',
'ProfissionaisEspecialidade.especialidade',
'ProfissionaisTelefones.ddd',
'ProfissionaisTelefones.numero',
'Subcategorias.nome',
'Usuarios.id',
'Usuarios.arquivo',
);
$conditions = array(
'Profissional.cidade LIKE ' => '%' . $cidade . '%',
'Profissional.estado' => $estado,
'Subcategorias.id' => $Subcategoria['Subcategoria']['id']
);
$group = 'Profissional.id';
$order = 'Profissional.assinante DESC';
$this->paginate = compact('fields', 'joins', 'conditions', 'group', 'order');
$retorno = $this->paginate('Profissional');
/* FIM DA BUSCA PAGINATE */
$this->set(compact('retorno', 'profissao'));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment