From 487cb477faf31211096576a4213f50fd70d38550 Mon Sep 17 00:00:00 2001 From: Horilla Date: Wed, 8 Nov 2023 16:16:05 +0530 Subject: [PATCH] [UPDT] GENERAL: Added kwargs in path --- employee/urls.py | 34 ++++++++++++++++++++++++++-------- employee/views.py | 28 ++++++++++++---------------- 2 files changed, 38 insertions(+), 24 deletions(-) diff --git a/employee/urls.py b/employee/urls.py index 52cc05c83..05c9198b6 100644 --- a/employee/urls.py +++ b/employee/urls.py @@ -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//", 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//", 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/", views.asset_tab, name="asset-tab"), - path("profile-asset-tab/", views.profile_asset_tab, name="profile-asset-tab"), - path("profile-attendance-tab", views.profile_attendance_tab, name="profile-attendance-tab"), - path("asset-request-tab/", views.asset_request_tab, name="asset-request-tab"), + path( + "profile-asset-tab/", + views.profile_asset_tab, + name="profile-asset-tab", + ), + path( + "profile-attendance-tab", + views.profile_attendance_tab, + name="profile-attendance-tab", + ), + path( + "asset-request-tab/", + views.asset_request_tab, + name="asset-request-tab", + ), path("performance-tab/", views.performance_tab, name="performance-tab"), path("attendance-tab/", views.attendance_tab, name="attendance-tab"), path("shift-tab/", views.shift_tab, name="shift-tab"), - path("contract-tab/", 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/", 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", + ), ] diff --git a/employee/views.py b/employee/views.py index a5125bf47..d76950983 100755 --- a/employee/views.py +++ b/employee/views.py @@ -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( """
@@ -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)