[RMV] RECRUITMENT: Unused code

This commit is contained in:
Horilla
2024-06-27 14:51:04 +05:30
parent f164bbad3c
commit 3a48c41fec
2 changed files with 9 additions and 47 deletions

View File

@@ -1,19 +1,21 @@
"""
recruitment/cache.py
"""
import time
from threading import Lock
class ThreadSafeCache:
def __init__(self):
self.cache = {}
self.lock = Lock()
def set(self, session_key, data, timeout=None):
expire_at = time.time() + timeout if timeout else None
with self.lock:
self.cache[session_key] = (data, expire_at)
def get(self, session_key):
with self.lock:
if session_key in self.cache:
@@ -23,11 +25,12 @@ class ThreadSafeCache:
else:
del self.cache[session_key]
return None
def delete(self, session_key):
with self.lock:
if session_key in self.cache:
del self.cache[session_key]
# Instantiate the thread-safe cache
thread_safe_cache = ThreadSafeCache()

View File

@@ -51,6 +51,7 @@ from horilla.decorators import (
)
from horilla.group_by import group_by_queryset
from notifications.signals import notify
from recruitment.cache import ThreadSafeCache
from recruitment.decorators import manager_can_enter, recruitment_manager_can_enter
from recruitment.filters import (
CandidateFilter,
@@ -94,6 +95,8 @@ from recruitment.models import (
)
from recruitment.views.paginator_qry import paginator_qry
CACHE = ThreadSafeCache()
def is_stagemanager(request, stage_id=False):
"""
@@ -357,26 +360,13 @@ def recruitment_pipeline(request):
"""
This method is used to filter out candidate through pipeline structure
"""
view = request.GET.get("view")
filter_obj = RecruitmentFilter(
request.GET,
)
rec = filter_obj.qs.filter(is_active=True)
# user_recruitments[request.user.id] = {
# "recruitments": rec,
# }
if filter_obj.qs.exists():
template = "pipeline/pipeline.html"
else:
template = "pipeline/pipeline_empty.html"
context = {
"candidates": Candidate.objects.none(),
"stages": Stage.objects.none(),
"recruitments": Recruitment.objects.none(),
"filter_dict": {},
"filter_query": request.GET,
}
CACHE.set(request.session.session_key, context)
stage_filter = StageFilter(request.GET)
candidate_filter = CandidateFilter(request.GET)
recruitments = paginator_qry_recruitment_limited(
@@ -398,12 +388,6 @@ def recruitment_pipeline(request):
)
# Instantiate the thread-safe cache
from recruitment.cache import ThreadSafeCache
CACHE = ThreadSafeCache()
@login_required
@hx_request_required
@manager_can_enter(perm="recruitment.view_recruitment")
@@ -432,13 +416,6 @@ def filter_pipeline(request):
filter_dict = parse_qs(request.GET.urlencode())
filter_dict = get_key_instances(Recruitment, filter_dict)
# CACHE[request.session.session_key] = {
# "candidates": candidate_filter.qs.filter(is_active=True).order_by("sequence"),
# "stages": stage_filter.qs.order_by("sequence"),
# "recruitments": recruitments,
# "filter_dict": filter_dict,
# "filter_query": request.GET,
# }
CACHE.set(
request.session.session_key,
{
@@ -496,9 +473,6 @@ def stage_component(request, view: str = "list"):
"""
recruitment_id = request.GET["rec_id"]
recruitment = Recruitment.objects.get(id=recruitment_id)
# ordered_stages = CACHE[request.session.session_key]["stages"].filter(
# recruitment_id__id=recruitment_id
# )
ordered_stages = CACHE.get(request.session.session_key)["stages"].filter(
recruitment_id__id=recruitment_id
)
@@ -547,7 +521,6 @@ def update_candidate_sequence(request):
order_list = request.GET.getlist("order")
stage_id = request.GET["stage_id"]
stage = CACHE.get(request.session.session_key)["stages"].filter(id=stage_id).first()
message = "No message"
data = {}
for index, cand_id in enumerate(order_list):
candidate = CACHE.get(request.session.session_key)["candidates"].filter(
@@ -557,20 +530,6 @@ def update_candidate_sequence(request):
return JsonResponse(data)
# @login_required
# @manager_can_enter(perm="recruitment.change_candidate")
# def update_candidate_stage(request):
# """
# Update candidate stage
# """
# stage_id = request.GET["stage_id"]
# candidate_id = request.GET["candidate_id"]
# stage = Stage.objects.get(id=stage_id)
# candidate = CACHE[request.session.session_key]["candidates"].filter(id=candidate_id)
# candidate.update(stage_id=stage)
# return update_candidate_sequence(request)
def limited_paginator_qry(queryset, page):
"""
Limited pagination