Jag skulle ändra alla var av whereIn gillar:
if($userid){
$q->andWhereIn('a.userid', $userid);
}
if($catID){
$q->andWhereIn('ca.categorie_id', $catID);
}
Jag tror att detta händer för att när du använder resultaten i vyn kan paginatorn inte hämta alla poster i rad, så för varje objekt måste du göra frågan för att få alla fält.