Added expert review/edit document
This commit is contained in:
@@ -6,8 +6,8 @@ import time
|
||||
|
||||
from django.shortcuts import render, redirect , get_object_or_404
|
||||
from .forms import OrganizationForm
|
||||
from .models import Organization,Document, DocumentTemplate, DemoCode
|
||||
from backend.accounts.utils import send_confirmation_email, send_document_email
|
||||
from .models import Organization,Document, DocumentTemplate, DemoCode, DocumentRiskControl, Risk, Control
|
||||
from backend.accounts.utils import send_confirmation_email, send_document_email, send_documet_to_expert
|
||||
from django.contrib.admin.views.decorators import staff_member_required
|
||||
from .utils import generate_pdf, generate_risk_graph, generate_residual_risk_graph
|
||||
from .tables import risk_matrix_table ,get_risk_table, get_safeguard_summary_table
|
||||
@@ -20,6 +20,7 @@ from django.utils import timezone
|
||||
from weasyprint import HTML
|
||||
from django.template.loader import render_to_string
|
||||
from django.views.decorators.csrf import csrf_exempt
|
||||
from backend.accounts.models import ExpertAnalysisEmails
|
||||
|
||||
|
||||
# @login_required
|
||||
@@ -134,7 +135,23 @@ def payment_page(request):
|
||||
payment_code.save()
|
||||
document = Document.objects.get(organization = org)
|
||||
url = f"{site_domain}/pdf/{document.id}/"
|
||||
if org.expert_analysis:
|
||||
document.status = Document.STATUS_WAITING
|
||||
document.save(update_fields=['status', 'modified_at'])
|
||||
expert_emails_qs = ExpertAnalysisEmails.objects.values_list('email', flat=True).distinct()
|
||||
expert_emails = [e for e in expert_emails_qs if e]
|
||||
if expert_emails:
|
||||
for email_addr in expert_emails:
|
||||
try:
|
||||
send_documet_to_expert(email_addr, document)
|
||||
except Exception:
|
||||
logger.exception("Failed to send expert analysis email to %s", email_addr)
|
||||
else:
|
||||
logger.info("No expert emails configured; skipping expert notifications.")
|
||||
return render(request, 'payment_expert_analysis.html', {'email': email, 'document': document})
|
||||
send_document_email(email, url, document)
|
||||
document.status = Document.STATUS_DONE
|
||||
document.save(update_fields=['status', 'modified_at'])
|
||||
return redirect(url)
|
||||
except DemoCode.DoesNotExist:
|
||||
error = "❌ Invalid code"
|
||||
|
||||
Reference in New Issue
Block a user