Files
Payment_Reconciliation/controllers/pmc_report_controller.py

40 lines
1.2 KiB
Python
Raw Normal View History

2026-03-23 11:37:15 +05:30
from flask import Blueprint, render_template, send_from_directory
2026-03-23 14:15:11 +05:30
from flask_login import login_required
2026-03-23 11:37:15 +05:30
from model.PmcReport import PmcReport
pmc_report_bp = Blueprint("pmc_report", __name__)
2026-03-23 14:15:11 +05:30
# ---------------- Contractor Report by pmc no ----------------
2026-03-23 11:37:15 +05:30
@pmc_report_bp.route("/pmc_report/<pmc_no>")
@login_required
def pmc_report(pmc_no):
data = PmcReport.get_pmc_report(pmc_no)
if not data:
return "No PMC found with this number", 404
return render_template(
"pmc_report.html",
info=data["info"],
invoices=data["invoices"],
hold_types=data["hold_types"],
gst_rel=data["gst_rel"],
payments=data["payments"],
credit_note=data["credit_note"],
hold_release=data["hold_release"],
total=data["total"]
)
2026-03-23 14:15:11 +05:30
# ---------------- Contractor Download Report by pmc no ----------------
2026-03-23 11:37:15 +05:30
@pmc_report_bp.route("/download_pmc_report/<pmc_no>")
@login_required
def download_pmc_report(pmc_no):
result = PmcReport.download_pmc_report(pmc_no)
if not result:
return "No contractor found for this PMC No", 404
output_folder, file_name = result
return send_from_directory(output_folder, file_name, as_attachment=True)