added client RA bill wise download report

This commit is contained in:
2026-01-13 15:58:52 +05:30
parent 844dcbee81
commit 2cbb565380
3 changed files with 191 additions and 61 deletions

View File

@@ -1,11 +1,8 @@
{% extends "base.html" %}
{% block content %}
<div class="container mt-4">
<div class="container-fluid mt-4"> <h2 class="mb-4">File Comparison</h2>
<h2 class="mb-4">File Comparison </h2>
<!-- FLASH MESSAGES -->
{% with messages = get_flashed_messages(with_categories=true) %}
{% if messages %}
{% for category, message in messages %}
@@ -17,27 +14,57 @@
{% endif %}
{% endwith %}
<div class="card p-4 shadow-sm">
<div class="card p-4 shadow-sm mb-5">
<form method="POST">
<label class="form-label fw-bold">RA Bill No</label>
<input type="text" name="RA_Bill_No" class="form-control mb-3" value="{{ ra_val }}" required>
<!-- SELECT SUBCONTRACTOR -->
<!-- <label class="form-label fw-semibold">Select Subcontractor</label>
<select name="subcontractor_id" id="subcontractor_id" class="form-select mb-3" required>
<option value="">-- Select Subcontractor --</option>
{% for sc in subcontractors %}
<option value="{{ sc.id }}">{{ sc.subcontractor_name }}</option>
{% endfor %}
</select> -->
<label class="form-label">RA Bill No</label>
<input type="text" name="RA_Bill_No" class="form-control mb-3" required>
<button class="btn btn-primary w-100">Generate Report</button>
<div class="row">
<div class="col-md-6">
<button type="submit" name="action" value="preview" class="btn btn-secondary w-100">Preview Data</button>
</div>
<div class="col-md-6">
<button type="submit" name="action" value="download" class="btn btn-primary w-100">Download Excel Report</button>
</div>
</div>
</form>
</div>
{% if tables.tr or tables.mh or tables.dc %}
<div class="card shadow-sm p-3">
<h4 class="mb-3">Comparison Preview</h4>
<ul class="nav nav-tabs" id="reportTabs" role="tablist">
<li class="nav-item">
<button class="nav-link active" id="tr-tab" data-bs-toggle="tab" data-bs-target="#tr" type="button">Tr.Ex Comparison</button>
</li>
<li class="nav-item">
<button class="nav-link" id="mh-tab" data-bs-toggle="tab" data-bs-target="#mh" type="button">Mh.Ex Comparison</button>
</li>
<li class="nav-item">
<button class="nav-link" id="dc-tab" data-bs-toggle="tab" data-bs-target="#dc" type="button">MH & DC Comparison</button>
</li>
</ul>
<div class="tab-content mt-3" id="reportTabsContent">
<div class="tab-pane fade show active" id="tr" role="tabpanel">
<div class="table-responsive" style="max-height: 500px;">
{{ tables.tr|safe }}
</div>
</div>
<div class="tab-pane fade" id="mh" role="tabpanel">
<div class="table-responsive" style="max-height: 500px;">
{{ tables.mh|safe }}
</div>
</div>
<div class="tab-pane fade" id="dc" role="tabpanel">
<div class="table-responsive" style="max-height: 500px;">
{{ tables.dc|safe }}
</div>
</div>
</div>
</div>
{% endif %}
</div>
{% endblock %}

View File

@@ -2,7 +2,7 @@
{% block content %}
<div class="container mt-4">
<h2 class="mb-4">Generate Subcontractor Report</h2>
<h2 class="mb-4 text-center">Generate Subcontractor Report</h2>
{% with messages = get_flashed_messages(with_categories=true) %}
{% if messages %}
@@ -11,12 +11,11 @@
{{ message }}
<button type="button" class="btn-close" data-bs-dismiss="alert"></button>
</div>
)
{% endfor %}
{% endif %}
{% endwith %}
<div class="card p-4 shadow-sm">
<div class="card p-4 shadow-sm mx-auto" style="max-width: 600px;">
<form method="POST">
<div class="mb-3">
<label class="form-label fw-semibold">Select Subcontractor</label>
@@ -28,13 +27,38 @@
</select>
</div>
<div class="mb-3">
<label class="form-label fw-semibold">RA Bill Number</label>
<input type="text" name="ra_bill_no" class="form-control" placeholder="e.g. 01" required>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" name="download_all" value="true" id="downloadAllSwitch" onchange="toggleRAInput(this)">
<label class="form-check-label fw-bold text-primary" for="downloadAllSwitch">
Download All RA Bills for this Contractor
</label>
</div>
<button type="submit" class="btn btn-primary w-100">Generate Excel Report</button>
<div class="mb-4" id="ra_bill_container">
<label class="form-label fw-semibold">RA Bill Number</label>
<input type="text" name="ra_bill_no" id="ra_bill_input" class="form-control" placeholder="e.g. 01">
<small class="text-muted">Required if "Download All" is off.</small>
</div>
<button type="submit" class="btn btn-primary w-100 py-2">
<i class="fas fa-download me-2"></i>Generate Excel Report
</button>
</form>
</div>
</div>
<script>
function toggleRAInput(checkbox) {
const input = document.getElementById('ra_bill_input');
const container = document.getElementById('ra_bill_container');
if (checkbox.checked) {
input.value = "";
input.disabled = true;
container.style.opacity = "0.5";
} else {
input.disabled = false;
container.style.opacity = "1";
}
}
</script>
{% endblock %}