[UPDT] GENERAL: Added kwargs in path

This commit is contained in:
Horilla
2023-11-08 16:16:05 +05:30
parent d65cf748cc
commit 487cb477fa
2 changed files with 38 additions and 24 deletions

View File

@@ -5,6 +5,7 @@ This module is used to map url path with view methods.
"""
from django.urls import path
from employee import views
from employee.models import Employee
urlpatterns = [
path("get-language-code/", views.get_language_code, name="get-language-code"),
@@ -13,6 +14,7 @@ urlpatterns = [
"employee-view/<int:obj_id>/",
views.employee_view_individual,
name="employee-view-individual",
kwargs={"model": Employee},
),
path("edit-profile", views.self_info_update, name="edit-profile"),
path(
@@ -40,12 +42,13 @@ urlpatterns = [
views.employee_profile_bank_details,
name="employee-profile-bank-update",
),
path("employee-view", views.employee_view, name="employee-view"),
path("employee-view/", views.employee_view, name="employee-view"),
path("employee-view-new", views.employee_view_new, name="employee-view-new"),
path(
"employee-view-update/<int:obj_id>/",
views.employee_view_update,
name="employee-view-update",
kwargs={"model": Employee},
),
path(
"employee-create-personal-info",
@@ -156,14 +159,29 @@ urlpatterns = [
),
path("employee-widget-filter", views.widget_filter, name="employee-widget-filter"),
path("asset-tab/<int:emp_id>", views.asset_tab, name="asset-tab"),
path("profile-asset-tab/<int:emp_id>", views.profile_asset_tab, name="profile-asset-tab"),
path("profile-attendance-tab", views.profile_attendance_tab, name="profile-attendance-tab"),
path("asset-request-tab/<int:emp_id>", views.asset_request_tab, name="asset-request-tab"),
path(
"profile-asset-tab/<int:emp_id>",
views.profile_asset_tab,
name="profile-asset-tab",
),
path(
"profile-attendance-tab",
views.profile_attendance_tab,
name="profile-attendance-tab",
),
path(
"asset-request-tab/<int:emp_id>",
views.asset_request_tab,
name="asset-request-tab",
),
path("performance-tab/<int:emp_id>", views.performance_tab, name="performance-tab"),
path("attendance-tab/<int:emp_id>", views.attendance_tab, name="attendance-tab"),
path("shift-tab/<int:emp_id>", views.shift_tab, name="shift-tab"),
path("contract-tab/<int:obj_id>", views.contract_tab, name="contract-tab"),
path('employee-select/', views.employee_select, name='employee-select'),
path('employee-select-filter/', views.employee_select_filter, name='employee-select-filter'),
path("contract-tab/<int:obj_id>", views.contract_tab, name="contract-tab",kwargs={'model':Employee}),
path("employee-select/", views.employee_select, name="employee-select"),
path(
"employee-select-filter/",
views.employee_select_filter,
name="employee-select-filter",
),
]

View File

@@ -145,7 +145,7 @@ def self_info_update(request):
@login_required
@manager_can_enter("employee.view_employee")
def employee_view_individual(request, obj_id):
def employee_view_individual(request, obj_id, **kwargs):
"""
This method is used to view profile of an employee.
"""
@@ -169,7 +169,7 @@ def employee_view_individual(request, obj_id):
@login_required
def contract_tab(request, obj_id):
def contract_tab(request, obj_id, **kwargs):
"""
This method is used to view profile of an employee.
"""
@@ -462,7 +462,7 @@ def employee_view_new(request):
@login_required
@manager_can_enter("employee.change_employee")
def employee_view_update(request, obj_id):
def employee_view_update(request, obj_id, **kwargs):
"""
This method is used to render update form for employee.
"""
@@ -790,7 +790,7 @@ def employee_filter_view(request):
if field != "" and field is not None:
field_copy = field.replace(".", "__")
employees = employees.order_by(field_copy)
employees = employees.exclude(employee_work_info__isnull = True)
employees = employees.exclude(employee_work_info__isnull=True)
template = "employee_personal_info/group_by.html"
filter_obj = EmployeeFilter(request.GET, queryset=employees)
@@ -1204,7 +1204,7 @@ def employee_import(request):
# Convert the DataFrame to a list of dictionaries
employee_dicts = data_frame.to_dict("records")
# Create or update Employee objects from the list of dictionaries
errolist = []
error_list = []
for employee_dict in employee_dicts:
try:
phone = employee_dict["phone"]
@@ -1234,7 +1234,7 @@ def employee_import(request):
employee.phone = phone
employee.save()
except Exception:
errolist.append(employee_dict)
error_list.append(employee_dict)
return HttpResponse(
"""
<div class='alert-success p-3 border-rounded'>
@@ -1724,7 +1724,7 @@ def employee_select(request):
page_number = request.GET.get("page")
if page_number == "all":
employees = Employee.objects.filter(is_active = True)
employees = Employee.objects.filter(is_active=True)
employee_ids = [str(emp.id) for emp in employees]
total_count = employees.count()
@@ -1736,23 +1736,19 @@ def employee_select(request):
@login_required
def employee_select_filter(request):
page_number = request.GET.get('page')
filtered = request.GET.get('filter')
page_number = request.GET.get("page")
filtered = request.GET.get("filter")
filters = json.loads(filtered) if filtered else {}
if page_number == 'all':
if page_number == "all":
employee_filter = EmployeeFilter(filters, queryset=Employee.objects.all())
# Get the filtered queryset
filtered_employees = employee_filter.qs
employee_ids = [str(emp.id) for emp in filtered_employees]
total_count = filtered_employees.count()
context = {
'employee_ids': employee_ids,
'total_count': total_count
}
context = {"employee_ids": employee_ids, "total_count": total_count}
return JsonResponse(context)