[FIX] ONBOARDING: Fix candidate not showing when filtered with recruitment name or stage name

This commit is contained in:
Horilla
2026-01-02 14:11:30 +05:30
parent 76ba880ab5
commit e0ac754082

View File

@@ -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()