Второй запрос про поставки заготовок

This commit is contained in:
Anton Kamalov
2024-10-24 12:55:01 +03:00
parent 48ec45708a
commit 54e0091687
6 changed files with 78 additions and 17 deletions

View File

@@ -32,8 +32,26 @@ def sklad_zapros():
material = dict(request.form)
zagotovki = route(session['db_config'], material, sql_provider, 'zapros1.sql')
if zagotovki.status:
categories = ['Вес (в кг.)', 'Цена (в руб.)', 'Количество', 'Дата последнего обновления']
header = f'Заготовки на складе из материала \'{material["material"]}\''
return render_template('output.html', items=zagotovki.result, titles = categories, object=header)
return render_template('output.html', items=zagotovki.result, object=header)
else:
return zagotovki.error_message
@requests_bp.route('/req2', 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_ship.html', materials=zagotovki.result)
else:
return zagotovki.error_message
else:
material = dict(request.form)
zagotovki = route(session['db_config'], material, sql_provider, 'zapros2.sql')
print(zagotovki)
if zagotovki.status:
header = f'Поставленные заготовки из материала \'{material["material"]}\''
return render_template('output.html', items=zagotovki.result, object=header)
else:
return zagotovki.error_message

View File

@@ -1,3 +1,4 @@
SELECT weight, price, count, last_update
SELECT weight AS 'Вес', price AS 'Цена',
count AS 'Количество', last_update AS 'Дата последнего обновления'
FROM workpiece
WHERE material = '${material}'

View File

@@ -0,0 +1,10 @@
SELECT sellers.name AS 'Поставщик',
w.date_of_delivery AS 'Дата поставки',
SUM(wl.count) AS 'Общее количество заготовок',
SUM(wl.price) AS 'Общая стоимость поставленных заготовок'
FROM waybill w
JOIN waybill_lines wl ON w.waybill_id = wl.waybill_id
JOIN workpiece USING(work_id)
JOIN sellers USING(sel_id)
WHERE workpiece.material = '${material}'
GROUP BY sellers.name, w.date_of_delivery;

View File

@@ -11,20 +11,24 @@
</div>
<h1>{{ object }}</h1>
<!-- Output -->
<table>
<tr>
{% for title in titles %}
<th>{{ title }}</th>
{% if items %}
<table>
<tr>
{% for key in items[0].keys() %}
<th>{{ key }}</th>
{% endfor %}
</tr>
{% for item in items %}
<tr>
{% for value in item.values() %}
<td>{{ value }}</td>
{% endfor %}
</tr>
{% endfor %}
</tr>
{% for item in items %}
<tr>
{% for value in item.values() %}
<td>{{ value }}</td>
{% endfor %}
</tr>
{% endfor %}
</table>
</table>
{% else %}
<p>Информации не найдено</p>
{% endif %}
<div class="return">
<a href="{{ url_for('requests_bp.requests') }}"><button>Обратно в меню запросов</button></a>
</div></body>

View File

@@ -0,0 +1,27 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Заготовки на складе</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
</head>
<body>
<div class="logout">
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
</div>
<!-- Input -->
<h1>Выберите материал</h1>
<form action="" method="post">
<select name="material">
{% for item in materials %}
<option value="{{ item['material'] }}">{{ item['material'] }}</option>
{% endfor %}
</select>
<input type="submit" value="Отправить">
</form>
<div class="return">
<a href="{{ url_for('requests_bp.requests') }}"><button>Обратно в меню запросов</button></a>
</div>
</body>
</html>

View File

@@ -1,3 +1,4 @@
[
{"name": "Материалы заготовок", "url": "requests_bp.sklad_zapros"}
{"name": "Материалы заготовок", "url": "requests_bp.sklad_zapros"},
{"name": "Поставки заготовок", "url": "requests_bp.zagotovki_ship"}
]