Files
quality_app-v2/app/templates/modules/warehouse/index.html
Quality App Developer e1f3302c6b 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
2026-01-26 22:08:31 +02:00

152 lines
6.1 KiB
HTML

{% extends "base.html" %}
{% block title %}Warehouse Module - Quality App v2{% endblock %}
{% block content %}
<div class="container-fluid py-5">
<div class="row mb-4">
<div class="col-12">
<h1 class="mb-2">
<i class="fas fa-warehouse"></i> Warehouse Module
</h1>
<p class="text-muted">Manage warehouse operations, inventory, and locations</p>
</div>
</div>
<div class="row">
<!-- Set Boxes Locations Card -->
<div class="col-md-6 col-lg-4 mb-4">
<div class="card shadow-sm h-100 module-launcher">
<div class="card-body text-center">
<div class="launcher-icon mb-3">
<i class="fas fa-cube text-danger"></i>
</div>
<h5 class="card-title">Set Boxes Locations</h5>
<p class="card-text text-muted">Add or update articles in the warehouse inventory.</p>
<a href="{{ url_for('warehouse.set_boxes_locations') }}" class="btn btn-danger btn-sm">
<i class="fas fa-arrow-right"></i> Go to Set Boxes
</a>
</div>
</div>
</div>
<!-- Create Warehouse Locations Card -->
<div class="col-md-6 col-lg-4 mb-4">
<div class="card shadow-sm h-100 module-launcher">
<div class="card-body text-center">
<div class="launcher-icon mb-3">
<i class="fas fa-map-pin text-primary"></i>
</div>
<h5 class="card-title">Create Warehouse Locations</h5>
<p class="card-text text-muted">Define and manage storage locations in the warehouse.</p>
<a href="{{ url_for('warehouse.locations') }}" class="btn btn-primary btn-sm">
<i class="fas fa-arrow-right"></i> Go to Locations
</a>
</div>
</div>
</div>
<!-- Manage Boxes/Crates Card -->
<div class="col-md-6 col-lg-4 mb-4">
<div class="card shadow-sm h-100 module-launcher">
<div class="card-body text-center">
<div class="launcher-icon mb-3">
<i class="fas fa-box text-success"></i>
</div>
<h5 class="card-title">Manage Boxes/Crates</h5>
<p class="card-text text-muted">Track and manage boxes and crates in the warehouse.</p>
<a href="{{ url_for('boxes.manage_boxes') }}" class="btn btn-success btn-sm">
<i class="fas fa-arrow-right"></i> Go to Boxes
</a>
</div>
</div>
</div>
<!-- View Inventory Card -->
<div class="col-md-6 col-lg-4 mb-4">
<div class="card shadow-sm h-100 module-launcher">
<div class="card-body text-center">
<div class="launcher-icon mb-3">
<i class="fas fa-list text-info"></i>
</div>
<h5 class="card-title">View Inventory</h5>
<p class="card-text text-muted">Search and view products, boxes, and their warehouse locations.</p>
<a href="{{ url_for('warehouse.inventory') }}" class="btn btn-info btn-sm">
<i class="fas fa-arrow-right"></i> View Inventory
</a>
</div>
</div>
</div>
<!-- Warehouse Reports Card -->
<div class="col-md-6 col-lg-4 mb-4">
<div class="card shadow-sm h-100 module-launcher">
<div class="card-body text-center">
<div class="launcher-icon mb-3">
<i class="fas fa-chart-bar text-warning"></i>
</div>
<h5 class="card-title">Warehouse Reports</h5>
<p class="card-text text-muted">View and export warehouse activity and inventory reports.</p>
<a href="{{ url_for('warehouse.reports') }}" class="btn btn-warning btn-sm">
<i class="fas fa-arrow-right"></i> Go to Reports
</a>
</div>
</div>
</div>
</div>
<!-- Module Overview Section -->
<div class="row mt-5">
<div class="col-12">
<div class="card shadow-sm">
<div class="card-header bg-light">
<h5 class="mb-0"><i class="fas fa-info-circle"></i> Module Overview</h5>
</div>
<div class="card-body">
<div class="row">
<div class="col-md-6">
<h6><i class="fas fa-check-circle text-success"></i> Key Features:</h6>
<ul class="text-muted">
<li>Create and manage warehouse locations</li>
<li>Track boxes and crates</li>
<li>Assign products to boxes</li>
<li>Search inventory by location</li>
</ul>
</div>
<div class="col-md-6">
<h6><i class="fas fa-chart-pie text-primary"></i> Reports & Analytics:</h6>
<ul class="text-muted">
<li>Inventory reports</li>
<li>Location utilization</li>
<li>Box status tracking</li>
<li>Export data to CSV</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<style>
.module-launcher {
transition: transform 0.2s, box-shadow 0.2s;
}
.module-launcher:hover {
transform: translateY(-5px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}
.launcher-icon {
font-size: 48px;
line-height: 1;
}
.launcher-icon i {
display: inline-block;
}
</style>
{% endblock %}