This commit is contained in:
2024-11-04 21:57:55 +03:00
parent b0924ae0bc
commit cf4c1d2162
10 changed files with 1381 additions and 63 deletions

View File

@@ -1,15 +1,13 @@
from flask import request, Blueprint, render_template, session
from flask import request, Blueprint, render_template
from os import path
from Database.sql_provider import SQLProvider
from checker import check_auth, group_required
from .requests_route import route
from .requests_model import sklad, get_goods, get_sellers, materials_per_seller
from datetime import date
import json
with open(path.join(path.dirname(__file__), 'zapros_menu.json')) as f:
requests_list = json.load(f)
sql_provider = SQLProvider(path.join(path.dirname(__file__), 'sql'))
requests_bp = Blueprint('requests_bp', __name__, template_folder='templates')
@requests_bp.route('/', methods=['GET', 'POST'])
@@ -19,59 +17,58 @@ def requests():
if request.method == 'GET':
return render_template('zapros_menu.html', options=requests_list)
@requests_bp.route('/req1', methods=['GET', 'POST'])
@requests_bp.route('/sklad', methods=['GET', 'POST'])
@check_auth
@group_required
def sklad_zapros():
if request.method == 'GET':
zagotovki = route(session['db_config'], {}, sql_provider, 'zagotovki.sql')
zagotovki = get_goods()
if zagotovki.status:
return render_template('zagotovki.html', materials=zagotovki.result, header='Количество заготовок на складе')
else:
return render_template('error.html', error_message=zagotovki.error_message)
else:
material = dict(request.form)
zagotovki = route(session['db_config'], material, sql_provider, 'zapros1.sql')
zagotovki = sklad(material)
if zagotovki.status:
header = f'Заготовки на складе из материала \'{material["material"]}\''
return render_template('output.html', items=zagotovki.result, object=header)
else:
return render_template('error.html', error_message=zagotovki.error_message)
@requests_bp.route('/req2', methods=['GET', 'POST'])
# Под вопросом
""" @requests_bp.route('/req2', methods=['GET', 'POST'])
@check_auth
@group_required
def zagotovki_ship():
if request.method == 'GET':
zagotovki = route(session['db_config'], {}, sql_provider, 'zagotovki.sql')
zagotovki = get_goods()
if zagotovki.status:
return render_template('zagotovki.html', materials=zagotovki.result, header='Поставки заготовок')
else:
return render_template('error.html', error_message=zagotovki.error_message)
else:
material = dict(request.form)
zagotovki = route(session['db_config'], material, sql_provider, 'zapros2.sql')
zagotovki = route(material, 'zapros2.sql')
if zagotovki.status:
header = f'Поставки заготовок из материала \'{material['material']}\''
return render_template('output.html', items=zagotovki.result, object=header)
else:
return render_template('error.html', error_message=zagotovki.error_message)
return render_template('error.html', error_message=zagotovki.error_message) """
@requests_bp.route('/req3', methods=['GET', 'POST'])
@requests_bp.route('/shipments', methods=['GET', 'POST'])
@check_auth
@group_required
def sellers_ship():
if request.method == 'GET':
zagotovki = route(session['db_config'], {}, sql_provider, 'sellers.sql')
zagotovki = get_sellers()
if zagotovki.status:
min_year = '2000'
max_year = str(date.today().year)
return render_template('sellers_ship.html', sellers=zagotovki.result, year_from=min_year, year_to=max_year)
return render_template('sellers_ship.html', sellers=zagotovki.result, year_from='2000', year_to=str(date.today().year))
else:
return render_template('error.html', error_message=zagotovki.error_message)
else:
seller = dict(request.form)
zagotovki = route(session['db_config'], seller, sql_provider, 'zapros3.sql')
zagotovki = materials_per_seller(seller)
if zagotovki.status:
header = f'Поставки от поставщика \'{seller['seller']}\''
return render_template('output.html', items=zagotovki.result, object=header)