[FIX] ONBOARDING: Fixed onboarding permsissions for onboarding pipeline
This commit is contained in:
@@ -25,7 +25,7 @@
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% if employees.has_previous or employees.has_next %}
|
||||
<div class="oh-wrapper w-100">
|
||||
<div class="oh-pagination">
|
||||
<span class="oh-pagination__page" data-toggle="modal" data-target="#addEmployeeModal">{% trans 'Page' %} {{ employees.number }} {% trans 'of' %} {{ employees.paginator.num_pages }}.</span>
|
||||
@@ -59,3 +59,4 @@
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
@@ -409,4 +409,4 @@ class BankDetailsCreationForm(ModelForm):
|
||||
|
||||
model = EmployeeBankDetails
|
||||
fields = "__all__"
|
||||
exclude = ("employee_id", "additional_info")
|
||||
exclude = ["employee_id", "additional_info", "is_active"]
|
||||
|
||||
@@ -48,9 +48,12 @@ def task_manages(user, recruitment):
|
||||
"""
|
||||
try:
|
||||
employee = user.employee_get
|
||||
employee_tasks = employee.onboarding_task.all()
|
||||
for task in employee_tasks:
|
||||
if task.stage_id and task.stage_id.recruitment_id == recruitment:
|
||||
return True
|
||||
return (
|
||||
recruitment.onboarding_task.filter(employee_id=employee).exists()
|
||||
or recruitment.onboardingstage_set.filter(employee_id=employee).exists()
|
||||
recruitment.onboardingstage_set.filter(employee_id=employee).exists()
|
||||
or recruitment.recruitment_managers.filter(id=user.employee_get.id).exists()
|
||||
)
|
||||
except Exception:
|
||||
|
||||
@@ -783,8 +783,16 @@ def onboarding_view(request):
|
||||
"""
|
||||
filter_obj = RecruitmentFilter(request.GET)
|
||||
# is active filteration not providing on pipeline
|
||||
recruitments = filter_obj.qs.filter(is_active=True)
|
||||
|
||||
recruitments = filter_obj.qs
|
||||
recruitments = recruitments.filter(
|
||||
is_active=True, recruitment_managers__in=[request.user.employee_get]
|
||||
) | recruitments.filter(onboarding_stage__employee_id__in=[request.user.employee_get]
|
||||
)
|
||||
employee_tasks = request.user.employee_get.onboarding_task.all()
|
||||
for task in employee_tasks:
|
||||
if task.stage_id and task.stage_id.recruitment_id not in recruitments:
|
||||
recruitments = recruitments | filter_obj.qs.filter(id=task.stage_id.recruitment_id.id)
|
||||
recruitments = recruitments.filter(is_active =True).distinct()
|
||||
status = request.GET.get("closed")
|
||||
|
||||
onboarding_stages = OnboardingStage.objects.all()
|
||||
|
||||
Reference in New Issue
Block a user