From 74bbadebba4441d91777407548929397575ff55c Mon Sep 17 00:00:00 2001 From: Horilla Date: Wed, 3 Apr 2024 10:54:34 +0530 Subject: [PATCH] [UPDT] ONBOARDING: Updated onboarding model by adding HorillaModel as abstract class --- onboarding/forms.py | 25 +++---------------- onboarding/models.py | 22 ++++++++-------- .../templates/onboarding/task_form.html | 2 +- .../templates/onboarding/task_update.html | 2 +- 4 files changed, 16 insertions(+), 35 deletions(-) diff --git a/onboarding/forms.py b/onboarding/forms.py index 78b25fbf1..c2f537420 100644 --- a/onboarding/forms.py +++ b/onboarding/forms.py @@ -165,26 +165,7 @@ class OnboardingStageForm(ModelForm): model = OnboardingStage fields = "__all__" - exclude = ("sequence",) - - -class OnboardingTaskForm(forms.ModelForm): - """ - Form for OnboardingTask Model - """ - - class Meta: - """ - Meta class to apply some additional info - """ - - model = OnboardingTask - fields = "__all__" - - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - for visible in self.visible_fields(): - visible.field.widget.attrs["class"] = "form-control" + exclude = ["sequence", "is_active"] class OnboardingCandidateForm(ModelForm): @@ -260,7 +241,7 @@ class OnboardingViewTaskForm(ModelForm): model = CandidateTask fields = "__all__" - exclude = ("status", "candidate_id", "onboarding_task_id") + exclude = ["status", "candidate_id", "onboarding_task_id", "is_active"] def clean(self): for field_name, field_instance in self.fields.items(): @@ -312,7 +293,7 @@ class OnboardingTaskForm(ModelForm): model = OnboardingTask fields = "__all__" - exclude = ("stage_id",) + exclude = ["stage_id", "is_active"] widgets = { "candidates": forms.SelectMultiple( attrs={"class": "oh-select oh-select-2 w-100 select2-hidden-accessible"} diff --git a/onboarding/models.py b/onboarding/models.py index 3c65ebb22..f45bffae5 100644 --- a/onboarding/models.py +++ b/onboarding/models.py @@ -6,20 +6,18 @@ This module is used to register models for onboarding app """ from datetime import datetime -import time -from typing import Any from django.db import models from django.db.models.signals import post_save from django.dispatch import receiver from django.utils.translation import gettext_lazy as _ +from horilla.models import HorillaModel from horilla_audit.models import HorillaAuditInfo, HorillaAuditLog +from base.horilla_company_manager import HorillaCompanyManager from recruitment.models import Recruitment, Candidate from employee.models import Employee -from base.horilla_company_manager import HorillaCompanyManager -from django.contrib.auth.models import User -class OnboardingStage(models.Model): +class OnboardingStage(HorillaModel): """ OnboardingStage models """ @@ -61,7 +59,7 @@ def create_initial_stage(sender, instance, created, **kwargs): initial_stage.save() -class OnboardingTask(models.Model): +class OnboardingTask(HorillaModel): """ OnboardingTask models """ @@ -81,7 +79,7 @@ class OnboardingTask(models.Model): related_name="cand_onboarding_task", ) employee_id = models.ManyToManyField( - Employee, related_name="onboarding_task", verbose_name="Task Assignee" + Employee, related_name="onboarding_task", verbose_name=_("Task Managers") ) objects = HorillaCompanyManager("stage_id__recruitment_id__company_id") @@ -90,7 +88,7 @@ class OnboardingTask(models.Model): return f"{self.task_title}" -class CandidateStage(models.Model): +class CandidateStage(HorillaModel): """ CandidateStage model """ @@ -114,7 +112,9 @@ class CandidateStage(models.Model): super(CandidateStage, self).save(*args, **kwargs) def task_completion_ratio(self): - # function that used for getting the numbers between task completed v/s tasks assigned + """ + function that used for getting the numbers between task completed v/s tasks assigned + """ cans_tasks = self.candidate_id.candidate_task completed_tasks = cans_tasks.filter(status="done") return f"{completed_tasks.count()}/{cans_tasks.count()}" @@ -128,7 +128,7 @@ class CandidateStage(models.Model): ordering = ["sequence"] -class CandidateTask(models.Model): +class CandidateTask(HorillaModel): """ CandidateTask model """ @@ -174,7 +174,7 @@ class CandidateTask(models.Model): # unique_together = ("candidate_id", "onboarding_task_id") -class OnboardingPortal(models.Model): +class OnboardingPortal(HorillaModel): """ OnboardingPortal model """ diff --git a/onboarding/templates/onboarding/task_form.html b/onboarding/templates/onboarding/task_form.html index 0f8c49050..9e7c3a885 100644 --- a/onboarding/templates/onboarding/task_form.html +++ b/onboarding/templates/onboarding/task_form.html @@ -21,7 +21,7 @@
- + {{ form.managers }} {{ form.managers.errors }}
diff --git a/onboarding/templates/onboarding/task_update.html b/onboarding/templates/onboarding/task_update.html index f1e65c26c..82dc51d21 100644 --- a/onboarding/templates/onboarding/task_update.html +++ b/onboarding/templates/onboarding/task_update.html @@ -19,7 +19,7 @@ {{form.task_title.errors}}
- + {{form.employee_id}} {{form.employee_id.errors}}