Register warehouse blueprint and update dashboard for warehouse module integration.

This commit is contained in:
2025-09-10 21:48:51 +03:00
parent a7e331aa38
commit 2b84b13524
3 changed files with 29 additions and 6 deletions

View File

@@ -6,8 +6,20 @@ from .models import User
from . import db
from reportlab.lib.pagesizes import letter
from reportlab.pdfgen import canvas
from flask import Blueprint, render_template, request, redirect, url_for, flash
import csv
from .warehouse import add_location
bp = Blueprint('main', __name__)
warehouse_bp = Blueprint('warehouse', __name__)
@bp.route('/store_articles')
def store_articles():
return render_template('store_articles.html')
@bp.route('/warehouse_reports')
def warehouse_reports():
return render_template('warehouse_reports.html')
def get_db_connection():
"""Reads the external_server.conf file and returns a MariaDB database connection."""
@@ -83,7 +95,7 @@ def warehouse():
if 'role' not in session or session['role'] not in ['superadmin', 'warehouse']:
flash('Access denied: Warehouse users only.')
return redirect(url_for('main.dashboard'))
return render_template('warehouse.html')
return render_template('main_page_warehouse.html')
@bp.route('/scan', methods=['GET', 'POST'])
def scan():
@@ -307,7 +319,7 @@ def get_report_data():
elif report == "4": # Logic for the report with non-zero quality_code (5 days)
five_days_ago = datetime.now() - timedelta(days=5)
cursor.execute("""
SELECT Id, operator_code, CP_full_code, OC1_code, OC2_code, quality_code, date, time, approved_quantity, rejected_quantity
SELECT Id, operator_code, CP_full_code, OC1_code, OC2 Code, quality_code, date, time, approved_quantity, rejected_quantity
FROM scan1_orders
WHERE date >= ? AND quality_code != 0
ORDER BY date DESC, time DESC
@@ -420,4 +432,14 @@ def generate_pdf():
# Save the PDF
c.save()
return jsonify({'message': 'PDF generated successfully!', 'pdf_path': f'/static/label_templates/label_template.pdf'})
return jsonify({'message': 'PDF generated successfully!', 'pdf_path': f'/static/label_templates/label_template.pdf'})
@warehouse_bp.route('/create_locations', methods=['GET', 'POST'])
def create_locations():
from app.warehouse import create_locations_handler
return create_locations_handler()
@warehouse_bp.route('/import_locations_csv', methods=['GET', 'POST'])
def import_locations_csv():
from app.warehouse import import_locations_csv_handler
return import_locations_csv_handler()