Вы можете использовать when
в качестве условного предложения :
public function test (Request $request)
{
$apartments = DB::table('apartments')
->when($request->filled('bathrooms'), function ($query) use ($request) {
return $query->where('bathrooms', '=', $request->input('bathrooms'));
})
->when($request->filled('rooms_number'), function ($query) use ($request) {
return $query->where('rooms_number', '=', $request->input('rooms_number'));
})
->get();
return view('pages.test2' , compact('apartments'));
}