ABDALLAH31 commited on
Commit
1722de8
·
verified ·
1 Parent(s): a58ecfc

Create report.py

Browse files
Files changed (1) hide show
  1. report.py +22 -0
report.py ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from fpdf import FPDF
2
+
3
+ def sanitize_text(text):
4
+ # Replaces problematic characters with safe equivalents
5
+ return text.replace("●", "*").encode("latin-1", "replace").decode("latin-1")
6
+
7
+ def generate_pdf(results, overall_score, filename="ContractRiskReport.pdf"):
8
+ pdf = FPDF()
9
+ pdf.add_page()
10
+ pdf.set_font("Arial", size=12)
11
+ pdf.cell(200, 10, txt="Contract Risk Analysis Report", ln=True, align="C")
12
+ pdf.ln()
13
+
14
+ pdf.cell(200, 10, txt=f"Overall Risk Score: {overall_score:.2f}", ln=True)
15
+
16
+ for r in results:
17
+ pdf.set_text_color(255, 0, 0) if r['risk_level'] == "High" else pdf.set_text_color(0)
18
+ clause_text = sanitize_text(r['clause']) # 👈 sanitize here
19
+ pdf.multi_cell(0, 10, f"[{r['risk_level']}] {clause_text}")
20
+
21
+ pdf.output(filename)
22
+ return filename