diff --git a/recruitment/cbv/candidates.py b/recruitment/cbv/candidates.py
index 61f5a916f..58d38a477 100644
--- a/recruitment/cbv/candidates.py
+++ b/recruitment/cbv/candidates.py
@@ -989,6 +989,7 @@ class RejectReasonFormView(HorillaFormView):
form_class = RejectedCandidateForm
new_display_title = "Rejected Candidate"
dynamic_create_fields = [("reject_reason_id", DynamicRejectReasonFormView)]
+ template_name = "candidate/candidate_rejection_form.html"
def get_initial(self) -> dict:
initial = super().get_initial()
diff --git a/recruitment/templates/candidate/candidate_rejection_form.html b/recruitment/templates/candidate/candidate_rejection_form.html
new file mode 100644
index 000000000..856e9185a
--- /dev/null
+++ b/recruitment/templates/candidate/candidate_rejection_form.html
@@ -0,0 +1,23 @@
+{% load i18n %}
+{% include "generic/horilla_form.html" %}
+
\ No newline at end of file
diff --git a/recruitment/urls.py b/recruitment/urls.py
index 62a79f482..99fa2488f 100644
--- a/recruitment/urls.py
+++ b/recruitment/urls.py
@@ -660,6 +660,11 @@ urlpatterns = [
candidates.RejectReasonFormView.as_view(),
name="add-to-rejected-candidates",
),
+ path(
+ "delete-candidate-rejection//",
+ views.delete_candidate_rejection,
+ name="delete-candidate-rejection",
+ ),
path(
"skill-zone-cand-delete/",
views.skill_zone_cand_delete,
diff --git a/recruitment/views/views.py b/recruitment/views/views.py
index f462e8e86..218ac5164 100644
--- a/recruitment/views/views.py
+++ b/recruitment/views/views.py
@@ -111,6 +111,7 @@ from recruitment.models import (
Recruitment,
RecruitmentGeneralSetting,
RecruitmentSurvey,
+ RejectedCandidate,
RejectReason,
Resume,
Skill,
@@ -3861,3 +3862,22 @@ def employee_profile_interview_tab(request):
).order_by("is_today", "-interview_date", "interview_time")
return render(request, "tabs/scheduled_interview.html", {"interviews": interviews})
+
+
+@login_required
+@hx_request_required
+@permission_required("recruitment.delete_rejectedcandidate")
+def delete_candidate_rejection(request, rej_id):
+ """
+ This method is used to delete candidate rejection
+ """
+ try:
+ instance = RejectedCandidate.objects.filter(id=rej_id).first()
+ if instance:
+ instance.delete()
+ messages.success(request, "Candidate rejection deleted successfully")
+ else:
+ messages.error(request, "Candidate rejection not found")
+ except Exception as e:
+ messages.error(request, "Error occurred while deleting candidate rejection")
+ return HttpResponse("")