select
distinct workorder0_.id as col_0_0_,
workorder0_.assigned_to as col_1_0_,
party6_.id as id1_66_,
....
....
party6_2_.name as name4_64_,
case when party6_1_.id is not null then 1 when party6_2_.id is not null then 2 when party6_.id is not null then 0 end as clazz_
from public.work_order workorder0_ left outer
.....
....
left outer join public.party party6_ on workorder0_.assigned_to=party6_.id
inner join public.person party6_1_ on party6_.id=party6_1_.id
inner join public.organization party6_2_ on party6_.id=party6_2_.id
where ....
or lower(party6_1_.first_name) like ?1
or lower(party6_1_.last_name) like ?1
or lower(party6_2_.name) like ?1