src/Repository/DivisaConversionRepository.php line 28
<?phpnamespace App\Repository;use Doctrine\ORM\EntityRepository;/*** DivisaConversionRepository** This class was generated by the Doctrine ORM. Add your own custom* repository methods below.*/class DivisaConversionRepository extends EntityRepository{/*SELECT slug, da.shortName AS origen, df.shortName as destino, visitasFROM divisa_conversion , divisa_conversion_idioma , divisa as da, divisa as dfWHERE divisaOrigen !=1AND divisaDestino !=1AND divisa_conversion_idioma.divisaConversion = divisa_conversion.idAND divisa_conversion_idioma.idioma =1AND divisaOrigen = da.idAND divisaDestino= df.idORDER BY visitas DESCLIMIT 0 , 30*/public function findTop5($divisaActual=0,$idioma){$idActual=$divisaActual->getId();$em = $this->getEntityManager();$q = $em->createQuery("SELECT p.slug,di1.nombre AS origen,di2.nombre AS destino,d.visitas AS visitas,d.id AS idFROM App\Entity\DivisaConversion d,App\Entity\DivisaConversionIdioma p,App\Entity\Divisa d1,App\Entity\Divisa d2,App\Entity\DivisaIdioma di1,App\Entity\DivisaIdioma di2WHEREd.divisaDestino!= :divisa ANDd.divisaOrigen!= :divisa ANDp.divisaConversion = d.id ANDp.idioma= :idioma ANDd.divisaDestino= d1.id ANDd.divisaOrigen= d2.id ANDd1.id=di1.divisa ANDdi1.idioma=:idioma ANDd2.id=di2.divisa ANDdi2.idioma=:idiomaORDER BY d.visitas DESC")->setParameter('divisa', $idActual)->setParameter('idioma', $idioma->getId())->setMaxResults(5);return $q->getResult();}public function findTopRand($divisaActual ,$idioma, $notin){$idActual=$divisaActual->getId();$em = $this->getEntityManager();$q = $em->createQuery("SELECT p.slug,di1.nombre AS origen,di2.nombre AS destino,d.visitas AS visitasFROM App\Entity\DivisaConversion d,App\Entity\DivisaConversionIdioma p,App\Entity\Divisa d1,App\Entity\Divisa d2,App\Entity\DivisaIdioma di1,App\Entity\DivisaIdioma di2WHEREd.divisaDestino!= :divisa ANDd.divisaOrigen!= :divisa ANDp.divisaConversion = d.id ANDp.idioma= :idioma ANDd.divisaDestino= d1.id ANDd.divisaOrigen= d2.id ANDd1.id=di1.divisa ANDdi1.idioma=:idioma ANDd2.id=di2.divisa ANDdi2.idioma=:idioma ANDd.id NOT IN ('".implode("','",$notin)."')ORDER BY RAND()")->setParameter('divisa', $idActual)->setParameter('idioma', $idioma->getId())->setMaxResults(3);return $q->getResult();}public function findTop5Full($idioma){$em = $this->getEntityManager();$q = $em->createQuery("SELECT dci.slug,di1.nombre AS origen,di2.nombre AS destino,dc.visitas AS visitasFROM App\Entity\DivisaConversion dc,App\Entity\DivisaConversionIdioma dci,App\Entity\DivisaIdioma di1,App\Entity\DivisaIdioma di2,App\Entity\Divisa d1,App\Entity\Divisa d2,App\Entity\Idioma lngWHEREdc.divisaOrigen=d1.id ANDdc.divisaDestino=d2.id ANDdc.id=dci.divisaConversion ANDdi1.divisa=d1.id ANDdi2.divisa=d2.id ANDdi1.idioma=lng.id ANDdi2.idioma=lng.id ANDdci.idioma= lng.id ANDlng.url= :idiomaORDER BY dc.visitas DESC")->setParameter('idioma', $idioma)->setMaxResults(5);return $q->getResult();}}