From f7a0313894c5e732a475ddd64674a5c4a614a610 Mon Sep 17 00:00:00 2001 From: Horilla Date: Tue, 3 Dec 2024 14:09:59 +0530 Subject: [PATCH] [FIX] EMPLOYEE: Fixed the issue in employee creation with and without selecting a company (#399 & #408) --- employee/forms.py | 3 ++- employee/models.py | 8 +++++--- .../templates/employee/update_form/personal_info.html | 4 ++-- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/employee/forms.py b/employee/forms.py index 28d85eb56..154375c00 100644 --- a/employee/forms.py +++ b/employee/forms.py @@ -246,7 +246,8 @@ class EmployeeForm(ModelForm): """ badge_id = self.cleaned_data["badge_id"] if badge_id: - queryset = Employee.objects.filter(badge_id=badge_id).exclude( + all_employees = Employee.objects.get_all() + queryset = all_employees.filter(badge_id=badge_id).exclude( pk=self.instance.pk if self.instance else None ) if queryset.exists(): diff --git a/employee/models.py b/employee/models.py index 26e73b675..5a6e45e56 100644 --- a/employee/models.py +++ b/employee/models.py @@ -489,9 +489,11 @@ class Employee(models.Model): # Create user if no corresponding user exists username = self.email password = self.phone - user = User.objects.create_user( - username=username, email=username, password=password - ) + user = User.objects.filter(username=username).first() + if not user: + user = User.objects.create_user( + username=username, email=username, password=password + ) self.employee_user_id = user # default permissions change_ownprofile = Permission.objects.get(codename="change_ownprofile") diff --git a/employee/templates/employee/update_form/personal_info.html b/employee/templates/employee/update_form/personal_info.html index f8e40b6af..33f1f4ee5 100644 --- a/employee/templates/employee/update_form/personal_info.html +++ b/employee/templates/employee/update_form/personal_info.html @@ -42,7 +42,7 @@
-