Implement boxes management module with auto-numbered box creation

- Add boxes_crates database table with BIGINT IDs and 8-digit auto-numbered box_numbers
- Implement boxes CRUD operations (add, edit, update, delete, delete_multiple)
- Create boxes route handlers with POST actions for all operations
- Add boxes.html template with 3-panel layout matching warehouse locations module
- Implement barcode generation and printing with JsBarcode and QZ Tray integration
- Add browser print fallback for when QZ Tray is not available
- Simplify create box form to single button with auto-generation
- Fix JavaScript null reference errors with proper element validation
- Convert tuple data to dictionaries for Jinja2 template compatibility
- Register boxes blueprint in Flask app initialization
This commit is contained in:
Quality App Developer
2026-01-26 22:08:31 +02:00
parent 3c5a273a89
commit e1f3302c6b
37 changed files with 8429 additions and 66 deletions

View File

@@ -0,0 +1,68 @@
{% extends "base.html" %}
{% block title %}Warehouse Reports - Quality App v2{% endblock %}
{% block content %}
<div class="container-fluid py-5">
<div class="row mb-4">
<div class="col-12">
<div class="d-flex justify-content-between align-items-center">
<div>
<h1 class="mb-2">
<i class="fas fa-chart-bar"></i> Warehouse Reports
</h1>
<p class="text-muted">View and export warehouse activity and inventory reports</p>
</div>
<a href="{{ url_for('warehouse.warehouse_index') }}" class="btn btn-secondary">
<i class="fas fa-arrow-left"></i> Back to Warehouse
</a>
</div>
</div>
</div>
<div class="row mb-4">
<div class="col-md-6">
<div class="card shadow-sm">
<div class="card-header bg-light">
<h5 class="mb-0"><i class="fas fa-list"></i> Inventory Report</h5>
</div>
<div class="card-body">
<p class="text-muted">Generate a comprehensive inventory report with location details.</p>
<button class="btn btn-primary btn-sm">
<i class="fas fa-download"></i> Generate Report
</button>
</div>
</div>
</div>
<div class="col-md-6">
<div class="card shadow-sm">
<div class="card-header bg-light">
<h5 class="mb-0"><i class="fas fa-chart-pie"></i> Location Utilization</h5>
</div>
<div class="card-body">
<p class="text-muted">View storage location utilization and capacity statistics.</p>
<button class="btn btn-primary btn-sm">
<i class="fas fa-download"></i> Generate Report
</button>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="card shadow-sm">
<div class="card-header bg-light">
<h5 class="mb-0"><i class="fas fa-history"></i> Activity Report</h5>
</div>
<div class="card-body">
<p class="text-muted">
<i class="fas fa-info-circle"></i> Warehouse reports feature coming soon...
</p>
</div>
</div>
</div>
</div>
</div>
{% endblock %}