feat(reports): add quarterly and technique HTML templates [FASE-2.2]
Introduce quarterly_summary and technique_detail Jinja layouts; use SVG logo asset across report covers.
This commit is contained in:
62
backend/app/templates/reports/technique_detail.html
Normal file
62
backend/app/templates/reports/technique_detail.html
Normal file
@@ -0,0 +1,62 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" href="styles/report.css">
|
||||
<title>Technique Detail — {{ technique.mitre_id }}</title>
|
||||
</head>
|
||||
<body>
|
||||
<section class="cover-page">
|
||||
<img src="assets/logo.svg" class="logo" alt="Logo">
|
||||
<h1>Technique Assessment</h1>
|
||||
<h2>{{ technique.mitre_id }} — {{ technique.name }}</h2>
|
||||
<p class="date">{{ generated_at }}</p>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2>1. Technique Profile</h2>
|
||||
<table class="data-table">
|
||||
<tbody>
|
||||
<tr><th>MITRE ID</th><td>{{ technique.mitre_id }}</td></tr>
|
||||
<tr><th>Name</th><td>{{ technique.name }}</td></tr>
|
||||
<tr><th>Tactic</th><td>{{ technique.tactic or 'N/A' }}</td></tr>
|
||||
<tr><th>Status</th><td>{{ technique_status }}</td></tr>
|
||||
<tr><th>Review required</th><td>{{ 'Yes' if technique.review_required else 'No' }}</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
{% if technique.description %}
|
||||
<p>{{ technique.description }}</p>
|
||||
{% endif %}
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2>2. Test History</h2>
|
||||
<table class="data-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Test</th>
|
||||
<th>State</th>
|
||||
<th>Detection</th>
|
||||
<th>Created</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for test in tests %}
|
||||
<tr class="result-{{ test.detection_result }}">
|
||||
<td>{{ test.name }}</td>
|
||||
<td>{{ test.state }}</td>
|
||||
<td>{{ test.detection_result }}</td>
|
||||
<td>{{ test.created_at }}</td>
|
||||
</tr>
|
||||
{% else %}
|
||||
<tr><td colspan="4">No tests recorded for this technique.</td></tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
|
||||
<footer>
|
||||
<p>{{ company_name }} — Confidential</p>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user