eternoaprendiz gracias por responder  voy a usar modelos de eloquent pero me tengo que construir la consulta hasta el momento llevo lo siguiente
 
$turns = DB::table('tipos_turnos')
        ->join('turns', 'tipos_turnos.id','=', 'turns.tipos_turnos_id')
        ->join('users', 'users.id' ,'=' ,'turns.users_id')
        ->leftjoin('AS users2 ON users2.id','=','turns.aprobo')
        ->select('turns.aprobo','turns.id AS id_turn','turns.inicio_turno','turns.fin_turno','t  ipos_turnos.id','tipos_turnos.nombre AS turno','users.nombre','users.apellidos')
        ->orderBy('turns.id','asc')->paginate(50); 
pero obtengo este error  
 Cita:  SQLSTATE[42601]: Syntax error: 7 ERROR: error de sintaxis en o cerca de «turns» LINE 1: ...s_id" left join "AS users2 ON users2"."id" on "=" turns.apro... ^ (SQL: select count(*) as aggregate from "tipos_turnos" inner join "turns" on "tipos_turnos"."id" = "turns"."tipos_turnos_id" inner join "users" on "users"."id" = "turns"."users_id" left join "AS users2 ON users2"."id" on "=" turns.aprobo "") (Bindings: array ( ))