Hello Kinomej,
Thanks for your reply.
I have a query like below in which I want to apply search on First name fields which data is encrypted into a database table
$query = User::select('users.id', 'first_name', 'last_name', 'address_line_1', 'cell_phone', 'specialities.name as primary_speciality')
->where('role_id', '3')
->leftJoin('provider_primary_specialities', 'users.id', '=', 'provider_primary_specialities.user_id', 'left')
->join('specialities', 'provider_primary_specialities.speciality_id', '=', 'specialities.id', 'left')
->where(function ($query) use ($data) {
if (isset($data['search'])) {
$query->orWhere('first_name', 'LIKE', '%' . $data['search'] . '%');
}
if (isset($data['search'])) {
$query->orWhere('address_line_1', 'LIKE', '%' . $data['search'] . '%');
}
if (isset($data['search'])) {
$query->orWhere('cell_phone', 'LIKE', '%' . $data['search'] . '%');
}
});
return $query->orderBy($data['orderColumn'] ?? 'users.created_at', $data['orderDirection'] ?? 'desc')
->paginate($data['per_page'] ?? 10);
How can I apply Laravel query builder filter on it?