Подводка к MVC + исправление кодировки (в основном приложении и запросах)

This commit is contained in:
2024-12-04 12:14:14 +03:00
parent 0b6af28ff3
commit 8caa72d2fd
4 changed files with 19 additions and 20 deletions

View File

@@ -4,7 +4,7 @@ from checker import check_auth
from .requests_model import sklad, materials_per_seller, sellers_names, materials_names from .requests_model import sklad, materials_per_seller, sellers_names, materials_names
import json import json
with open(path.join(path.dirname(__file__), 'zapros_menu.json')) as f: with open(path.join(path.dirname(__file__), 'zapros_menu.json'), encoding='utf-8') as f:
requests_list = json.load(f) requests_list = json.load(f)
requests_bp = Blueprint('requests_bp', __name__, template_folder='templates') requests_bp = Blueprint('requests_bp', __name__, template_folder='templates')
@@ -19,11 +19,9 @@ def requests():
@check_auth @check_auth
def sklad_zapros(): def sklad_zapros():
if request.method == 'GET': if request.method == 'GET':
materials = materials_names() return render_template('zagotovki.html')
return render_template('zagotovki.html', materials=materials.result)
else: else:
material = dict(request.form) zagotovki = sklad(request)
zagotovki = sklad(material)
if zagotovki.status: if zagotovki.status:
header = f'Заготовки на складе из материала \"{material["material"]}\"' header = f'Заготовки на складе из материала \"{material["material"]}\"'
return render_template('output.html', items=zagotovki.result, header=header) return render_template('output.html', items=zagotovki.result, header=header)
@@ -34,11 +32,9 @@ def sklad_zapros():
@check_auth @check_auth
def sellers_ship(): def sellers_ship():
if request.method == 'GET': if request.method == 'GET':
sellers = sellers_names() return render_template('sellers_ship.html')
return render_template('sellers_ship.html', sellers=sellers.result)
else: else:
seller = dict(request.form) zagotovki = materials_per_seller(request)
zagotovki = materials_per_seller(seller)
if zagotovki.status: if zagotovki.status:
header = f'Поставки от поставщика \"{seller["seller"]}\"' header = f'Поставки от поставщика \"{seller["seller"]}\"'
return render_template('output.html', items=zagotovki.result, header=header, link=url_for('requests_bp.requests')) return render_template('output.html', items=zagotovki.result, header=header, link=url_for('requests_bp.requests'))

View File

@@ -29,9 +29,9 @@ def materials_names() -> InfoRespronse:
status=False) status=False)
return InfoRespronse(result, error_message='', status=True) return InfoRespronse(result, error_message='', status=True)
def sklad(input_data) -> InfoRespronse: def sklad(request) -> InfoRespronse:
_sql = sql_provider.get('sklad_material.sql', input_data) material = dict(request.form)
print("sql = ", _sql) _sql = sql_provider.get('sklad_material.sql', material)
result = select_list(current_app.config['db_config'], _sql) result = select_list(current_app.config['db_config'], _sql)
if result is None: if result is None:
return InfoRespronse((), return InfoRespronse((),
@@ -40,8 +40,9 @@ def sklad(input_data) -> InfoRespronse:
return InfoRespronse(result, error_message='', status=True) return InfoRespronse(result, error_message='', status=True)
def materials_per_seller(input_data) -> InfoRespronse: def materials_per_seller(request) -> InfoRespronse:
_sql = sql_provider.get('ship_seller.sql', input_data) seller = dict(request.form)
_sql = sql_provider.get('ship_seller.sql', seller)
result = select_list(current_app.config['db_config'], _sql) result = select_list(current_app.config['db_config'], _sql)
if result is None: if result is None:
return InfoRespronse((), return InfoRespronse((),

View File

@@ -33,9 +33,11 @@
<form action="" method="post" style="display: inline-block;"> <form action="" method="post" style="display: inline-block;">
<label>Выберите поставщика</label> <label>Выберите поставщика</label>
<select class="form-select" name="seller"> <select class="form-select" name="seller">
{% for seller in sellers %} <option value="Alpha Supplies">Alpha Supplies</option>
<option value="{{ seller['name'] }}">{{ seller['name'] }}</option> <option value="Beta Materials">Beta Materials</option>
{% endfor %} <option value="Gamma Parts">Gamma Parts</option>
<option value="Delta Components">Delta Components</option>
<option value="Epsilon Goods">Epsilon Goods</option>
</select> </select>
<button type="submit" class="btn btn-primary">Отправить</button> <button type="submit" class="btn btn-primary">Отправить</button>
</form> </form>

View File

@@ -9,9 +9,9 @@ app = Flask(__name__)
app.secret_key = 'suplex' app.secret_key = 'suplex'
app.config.update( app.config.update(
db_config=json.load(open(os.path.join(os.path.dirname(__file__), 'data/config.json'))), db_config=json.load(open(os.path.join(os.path.dirname(__file__), 'data/config.json'), encoding='utf-8')),
db_access=json.load(open(os.path.join(os.path.dirname(__file__), 'data/db_access.json'))), db_access=json.load(open(os.path.join(os.path.dirname(__file__), 'data/db_access.json'), encoding='utf-8')),
cache_config=json.load(open(os.path.join(os.path.dirname(__file__), 'data/redis_config.json'))) cache_config=json.load(open(os.path.join(os.path.dirname(__file__), 'data/redis_config.json'), encoding='utf-8'))
) )
app.register_blueprint(requests_bp, url_prefix='/requests') app.register_blueprint(requests_bp, url_prefix='/requests')