[FIX] ONBOARDING: Fix candidate not showing when filtered with recruitment name or stage name
This commit is contained in:
@@ -86,9 +86,27 @@ class OnboardingCandidateFilter(FilterSet):
|
||||
"""
|
||||
|
||||
search_onboarding = filters.CharFilter(
|
||||
field_name="candidate_id__name", lookup_expr="icontains"
|
||||
field_name="candidate_id__name", method="pipeline_search"
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = CandidateStage
|
||||
fields = "__all__"
|
||||
fields = [
|
||||
"candidate_id",
|
||||
"onboarding_stage_id",
|
||||
"sequence",
|
||||
"onboarding_end_date",
|
||||
]
|
||||
|
||||
def pipeline_search(self, queryset, _, value):
|
||||
"""
|
||||
This method is used to search recruitment
|
||||
"""
|
||||
queryset = (
|
||||
queryset.filter(onboarding_stage_id__stage_title__icontains=value)
|
||||
| queryset.filter(candidate_id__name__icontains=value)
|
||||
| queryset.filter(
|
||||
onboarding_stage_id__recruitment_id__title__icontains=value
|
||||
)
|
||||
)
|
||||
return queryset.distinct()
|
||||
|
||||
Reference in New Issue
Block a user