Add email template for request status update, fix admin view for request unit view, and add initial app for questionnaires

This commit is contained in:
Keannu Christian Bernasol 2024-11-24 02:56:36 +08:00
parent ba19412d31
commit 8bd8df9042
15 changed files with 79 additions and 7 deletions

View file

@ -12,7 +12,7 @@ class DocumentRequestUnitAdmin(ModelAdmin):
list_display = ["id", "get_document_title", "copies"]
def get_document_title(self, obj):
return obj.documents.title # Assuming the Document model has a 'title' field
return obj.document.name
get_document_title.short_description = "Document"

View file

@ -2,6 +2,7 @@ from rest_framework import serializers
from documents.models import Document
from documents.serializers import DocumentSerializer, DocumentFileSerializer
from accounts.models import CustomUser
from emails.templates import RequestUpdateEmail
from .models import DocumentRequest, DocumentRequestUnit
@ -116,4 +117,13 @@ class DocumentRequestUpdateSerializer(serializers.ModelSerializer):
{"error": "Request form status provided is the same as current status"}
)
return super().update(instance, validated_data)
representation = super().update(instance, validated_data)
# Send an email on request status update
email = RequestUpdateEmail()
email.context = {
"request_status": instance.status
}
email.send(to=[instance.requester.email])
return representation