diff --git a/employee/views.py b/employee/views.py
index 8fa45ee6e..1b17d4102 100755
--- a/employee/views.py
+++ b/employee/views.py
@@ -34,6 +34,7 @@ from django.http import HttpResponse, HttpResponseRedirect, JsonResponse, QueryD
from django.forms import CharField, ChoiceField, DateInput, Select
from asset.models import AssetAssignment, AssetRequest
from django.utils.translation import gettext_lazy as _
+from attendance.methods.group_by import group_by_queryset
from attendance.models import Attendance, AttendanceOverTime
from employee.methods.methods import get_ordered_badge_ids
from leave.models import LeaveRequest
@@ -519,20 +520,27 @@ def document_request_view(request):
Returns: return document_request template
"""
+ previous_data = request.GET.urlencode()
f = DocumentRequestFilter()
document_requests = DocumentRequest.objects.all()
- documents = Document.objects.filter(document_request_id__isnull=False).order_by(
- "-document_request_id"
- )
+ documents = Document.objects.filter(document_request_id__isnull=False)
documents = filtersubordinates(
request=request,
perm="attendance.view_attendance",
queryset=documents,
)
+ documents = group_by_queryset(
+ documents, "document_request_id", request.GET.get("page"), "page"
+ )
+ # documents = paginator_qry(documents,request.GET.get("page"))
+ data_dict = parse_qs(previous_data)
+ get_key_instances(Document, data_dict)
context = {
"document_requests": document_requests,
"documents": documents,
"f": f,
+ "pd": previous_data,
+ "filter_dict": data_dict,
}
return render(request, "documents/document_requests.html", context=context)
@@ -549,6 +557,10 @@ def document_filter_view(request):
documents = documents.exclude(document_request_id__isnull=True).order_by(
"-document_request_id"
)
+ documents = group_by_queryset(
+ documents, "document_request_id", request.GET.get("page"), "page"
+ )
+ # documents = paginator_qry(documents,request.GET.get("page"))
data_dict = parse_qs(previous_data)
get_key_instances(Document, data_dict)
@@ -584,7 +596,20 @@ def document_request_create(request):
request, form, "horilla_documents.add_documentrequest"
)
if form.is_valid():
- form.save()
+ form = form.save()
+ employees = [user.employee_user_id for user in form.employee_id.all()]
+
+ notify.send(
+ request.user.employee_get,
+ recipient=employees,
+ verb=f"{request.user.employee_get} requested a document.",
+ verb_ar=f"طلب {request.user.employee_get} مستنداً.",
+ verb_de=f"{request.user.employee_get} hat ein Dokument angefordert.",
+ verb_es=f"{request.user.employee_get} solicitó un documento.",
+ verb_fr=f"{request.user.employee_get} a demandé un document.",
+ redirect="/employee/employee-profile",
+ icon="chatbox-ellipses",
+ )
return HttpResponse("")
context = {
@@ -735,6 +760,17 @@ def file_upload(request, id):
form = DocumentUpdateForm(request.POST, request.FILES, instance=document_item)
if form.is_valid():
form.save()
+ notify.send(
+ request.user.employee_get,
+ recipient=request.user.employee_get.get_reporting_manager().employee_user_id,
+ verb=f"{request.user.employee_get} uploaded a document",
+ verb_ar=f"قام {request.user.employee_get} بتحميل مستند",
+ verb_de=f"{request.user.employee_get} hat ein Dokument hochgeladen",
+ verb_es=f"{request.user.employee_get} subió un documento",
+ verb_fr=f"{request.user.employee_get} a téléchargé un document",
+ redirect=f"/employee/employee-view/{request.user.employee_get.id}/",
+ icon="chatbox-ellipses",
+ )
return HttpResponse("")
context = {"form": form, "document": document_item}
diff --git a/horilla_documents/forms.py b/horilla_documents/forms.py
index 0cd6e5cd4..53553e8fd 100644
--- a/horilla_documents/forms.py
+++ b/horilla_documents/forms.py
@@ -49,6 +49,7 @@ class DocumentForm(ModelForm):
class DocumentUpdateForm(ModelForm):
""" form to Update a Document"""
verbose_name = "Document"
+ expiry_date = forms.DateField(widget=forms.DateInput(attrs={"type": "date"}),required=False,)
class Meta:
model = Document