iisadia commited on
Commit
ef7d92e
·
verified ·
1 Parent(s): 073b529

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -32
app.py CHANGED
@@ -85,58 +85,40 @@ def generate_pdf_report(results):
85
 
86
  # Add watermark
87
  pdf.set_font("Arial", 'B', 50)
88
- pdf.set_text_color(230, 230, 230)
89
- pdf.rotate(45)
90
  pdf.text(60, 150, "AI Powered Requirement Analysis")
91
- pdf.rotate(0)
92
 
93
  # Add title and date/time
94
  pdf.set_font("Arial", 'B', 16)
95
- pdf.set_text_color(0, 0, 0)
96
  pdf.cell(200, 10, txt="AI Powered Requirement Analysis and Defect Detection", ln=True, align='C')
97
  pdf.set_font("Arial", size=12)
98
  pdf.cell(200, 10, txt=f"Report Generated on: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}", ln=True, align='C')
99
- pdf.ln(10)
100
 
101
  # Add requirements analysis
102
  pdf.set_font("Arial", size=12)
103
  for i, result in enumerate(results, start=1):
104
- if pdf.get_y() > 250:
105
- pdf.add_page()
106
  pdf.set_font("Arial", 'B', 16)
107
  pdf.cell(200, 10, txt="AI Powered Requirement Analysis and Defect Detection", ln=True, align='C')
108
  pdf.set_font("Arial", size=12)
109
  pdf.cell(200, 10, txt=f"Report Generated on: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}", ln=True, align='C')
110
- pdf.ln(10)
111
 
 
112
  pdf.set_font("Arial", 'B', 14)
113
  pdf.multi_cell(200, 10, txt=f"Requirement R{i}: {result['Requirement']}", align='L')
114
  pdf.set_font("Arial", size=12)
115
-
116
- # Add Type with colored background
117
- pdf.set_fill_color(232, 245, 233) # Light green for functional
118
- if "non-functional" in result['Type'].lower():
119
- pdf.set_fill_color(255, 243, 224) # Light orange for non-functional
120
- pdf.cell(40, 10, txt="Type:", ln=0, fill=True)
121
- pdf.cell(0, 10, txt=f" {result['Type']}", ln=True)
122
-
123
- # Add Domain
124
- pdf.set_fill_color(227, 242, 253) # Light blue
125
- pdf.cell(40, 10, txt="Domain:", ln=0, fill=True)
126
- pdf.cell(0, 10, txt=f" {result['Domain']}", ln=True)
127
-
128
- # Add Defects
129
- pdf.set_fill_color(255, 235, 238) # Light red
130
- pdf.cell(40, 10, txt="Defects:", ln=0, fill=True)
131
- pdf.multi_cell(0, 10, txt=f" {result['Defects']}")
132
-
133
- # Add Rewritten version
134
- pdf.set_fill_color(220, 237, 200) # Light green
135
- pdf.cell(40, 10, txt="Improved:", ln=0, fill=True)
136
- pdf.multi_cell(0, 10, txt=f" {result['Rewritten']}")
137
-
138
  pdf.multi_cell(200, 10, txt="-" * 50, align='L')
139
- pdf.ln(5)
140
 
141
  pdf_output = "requirements_report.pdf"
142
  pdf.output(pdf_output)
 
85
 
86
  # Add watermark
87
  pdf.set_font("Arial", 'B', 50)
88
+ pdf.set_text_color(230, 230, 230) # Light gray color for watermark
89
+ pdf.rotate(45) # Rotate the text for watermark effect
90
  pdf.text(60, 150, "AI Powered Requirement Analysis")
91
+ pdf.rotate(0) # Reset rotation
92
 
93
  # Add title and date/time
94
  pdf.set_font("Arial", 'B', 16)
95
+ pdf.set_text_color(0, 0, 0) # Black color for title
96
  pdf.cell(200, 10, txt="AI Powered Requirement Analysis and Defect Detection", ln=True, align='C')
97
  pdf.set_font("Arial", size=12)
98
  pdf.cell(200, 10, txt=f"Report Generated on: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}", ln=True, align='C')
99
+ pdf.ln(10) # Add some space
100
 
101
  # Add requirements analysis
102
  pdf.set_font("Arial", size=12)
103
  for i, result in enumerate(results, start=1):
104
+ if pdf.get_y() > 250: # If the content is near the bottom of the page
105
+ pdf.add_page() # Add a new page
106
  pdf.set_font("Arial", 'B', 16)
107
  pdf.cell(200, 10, txt="AI Powered Requirement Analysis and Defect Detection", ln=True, align='C')
108
  pdf.set_font("Arial", size=12)
109
  pdf.cell(200, 10, txt=f"Report Generated on: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}", ln=True, align='C')
110
+ pdf.ln(10) # Add some space
111
 
112
+ # Add requirement details
113
  pdf.set_font("Arial", 'B', 14)
114
  pdf.multi_cell(200, 10, txt=f"Requirement R{i}: {result['Requirement']}", align='L')
115
  pdf.set_font("Arial", size=12)
116
+ pdf.multi_cell(200, 10, txt=f"Type: {result['Type']}", align='L')
117
+ pdf.multi_cell(200, 10, txt=f"Domain: {result['Domain']}", align='L')
118
+ pdf.multi_cell(200, 10, txt=f"Defects: {result['Defects']}", align='L')
119
+ pdf.multi_cell(200, 10, txt=f"Rewritten: {result['Rewritten']}", align='L')
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
120
  pdf.multi_cell(200, 10, txt="-" * 50, align='L')
121
+ pdf.ln(5) # Add some space between requirements
122
 
123
  pdf_output = "requirements_report.pdf"
124
  pdf.output(pdf_output)