Запрос №3

This commit is contained in:
Anton Kamalov
2024-10-24 23:30:57 +03:00
parent 42720af4e2
commit 341c41489c
5 changed files with 38 additions and 10 deletions

View File

@@ -24,7 +24,7 @@ def sklad_zapros():
if request.method == 'GET':
zagotovki = route(session['db_config'], {}, sql_provider, 'zagotovki.sql')
if zagotovki.status:
return render_template('sklad_zapros.html', materials=zagotovki.result)
return render_template('zagotovki.html', materials=zagotovki.result, header='Количество заготовок на складе')
else:
return render_template('error.html', error_message=zagotovki.error_message)
else:
@@ -38,13 +38,13 @@ def sklad_zapros():
@requests_bp.route('/req2', methods=['GET', 'POST'])
@check_auth
def zagotovki_ship():
def sellers_ship():
if request.method == 'GET':
zagotovki = route(session['db_config'], {}, sql_provider, 'sellers.sql')
if zagotovki.status:
min_year = '2000'
max_year = str(date.today().year)
return render_template('zagotovki_ship.html', sellers=zagotovki.result, year_from=min_year, year_to=max_year)
return render_template('sellers_ship.html', sellers=zagotovki.result, year_from=min_year, year_to=max_year)
else:
return render_template('error.html', error_message=zagotovki.error_message)
else:
@@ -53,5 +53,23 @@ def zagotovki_ship():
if zagotovki.status:
header = f'Заготовки, поставленные поставщиком \'{seller['seller']}\''
return render_template('output.html', items=zagotovki.result, object=header)
else:
return render_template('error.html', error_message=zagotovki.error_message)
@requests_bp.route('/req3', methods=['GET', 'POST'])
@check_auth
def zagotovki_ship():
if request.method == 'GET':
zagotovki = route(session['db_config'], {}, sql_provider, 'zagotovki.sql')
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, 'zapros3.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)

View File

@@ -0,0 +1,9 @@
SELECT w.date_of_delivery AS 'Дата поставки',
name AS 'Поставщик',
wl.count AS 'Количество',
wl.price * wl.count AS 'Общая сумма'
FROM waybill w
JOIN waybill_lines wl USING(waybill_id)
JOIN workpiece wp USING(work_id)
JOIN sellers USING(sel_id)
WHERE material = '${material}';

View File

@@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Поставки за год</title>
<title>Поставки поставщиком за год</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
</head>
<body>
@@ -10,7 +10,7 @@
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
</div>
<!-- Input -->
<h1>Поставки за год</h1>
<h1>Поставки поставщиком за год</h1>
<div class="form">
<p>Выберите поставщика</p>
<form action="" method="post">

View File

@@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Материалы заготовок</title>
<title>{{ header }}</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
</head>
<body>
@@ -10,13 +10,13 @@
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
</div>
<!-- Input -->
<h1>Материалы заготовок</h1>
<h1>{{ header }}</h1>
<div class="form">
<form action="" method="post" style="display: inline-block;">
<p>Выберите материал<p></p>
<select name="material">
{% for item in materials %}
<option value="{{ item['material'] }}">{{ item['material'] }}</option>
<option value="{{ item['material'] }}">{{ item['material'] }}</option>
{% endfor %}
</select>
<input type="submit" value="Отправить">

View File

@@ -1,4 +1,5 @@
[
{"name": "Материалы заготовок", "url": "requests_bp.sklad_zapros", "roles" : "admin, user"},
{"name": "Поставки заготовок за год", "url": "requests_bp.zagotovki_ship", "roles" : "admin, user"}
{"name": "Количество заготовок на складе", "url": "requests_bp.sklad_zapros", "roles" : "admin, user"},
{"name": "Поставки заготовок", "url": "requests_bp.zagotovki_ship", "roles" : "admin, user"},
{"name": "Поставки поставщиком за год", "url": "requests_bp.sellers_ship", "roles" : "admin, user"}
]