Правка проверки на пользователя + корректировка содержаний модулей

This commit is contained in:
2024-11-05 15:46:40 +03:00
parent cf4c1d2162
commit f9ea3c56cd
7 changed files with 20 additions and 35 deletions

View File

@@ -16,6 +16,7 @@ def auth():
'login': auth_data.result[0]['login'],
'role': auth_data.result[0]['user_role'],
'db_config': current_app.config['db_config'],
'access_user': 'in' if 'internal' in data else 'ext',
'permanent': True
})
return redirect(url_for('index'))

View File

@@ -1,6 +1,6 @@
from flask import request, Blueprint, render_template
from os import path
from checker import check_auth, group_required
from checker import check_auth
from .requests_model import sklad, get_goods, get_sellers, materials_per_seller
from datetime import date
import json
@@ -12,14 +12,12 @@ requests_bp = Blueprint('requests_bp', __name__, template_folder='templates')
@requests_bp.route('/', methods=['GET', 'POST'])
@check_auth
@group_required
def requests():
if request.method == 'GET':
return render_template('zapros_menu.html', options=requests_list)
@requests_bp.route('/sklad', methods=['GET', 'POST'])
@check_auth
@group_required
def sklad_zapros():
if request.method == 'GET':
zagotovki = get_goods()
@@ -39,7 +37,6 @@ def sklad_zapros():
# Под вопросом
""" @requests_bp.route('/req2', methods=['GET', 'POST'])
@check_auth
@group_required
def zagotovki_ship():
if request.method == 'GET':
zagotovki = get_goods()
@@ -58,7 +55,6 @@ def zagotovki_ship():
@requests_bp.route('/shipments', methods=['GET', 'POST'])
@check_auth
@group_required
def sellers_ship():
if request.method == 'GET':
zagotovki = get_sellers()

View File

@@ -1,7 +1,6 @@
from flask import Flask, render_template, session
from Requests.requests import requests_bp
from Auth.auth import auth_bp
from checker import check_auth
from Requests import requests_bp
from Auth import auth_bp
import os, json
app = Flask(__name__)
@@ -20,8 +19,7 @@ def index():
return render_template('main_menu.html', ses=session)
@app.route('/logout')
@check_auth
def logout():
session.clear()
return render_template('exit.html')
return render_template('main_menu.html', ses=session)
app.run(port=5001, debug=True)

View File

@@ -7,12 +7,6 @@ def check_auth(func):
def wrapper(*args, **kwargs):
if 'login' not in session:
return redirect(url_for('auth_bp.auth'))
return func(*args, **kwargs)
return wrapper
def group_required(func):
@wraps(func)
def wrapper(*args, **kwargs):
user_role = session.get('role')
user_request = request.endpoint
print('request_endpoint=', user_request)
@@ -22,5 +16,4 @@ def group_required(func):
return func(*args, **kwargs)
else:
return render_template('error.html', error_message='Недостаточно прав')
return wrapper

View File

@@ -1,5 +1,5 @@
{
"manager": ["auth_bp", "requests_bp"],
"admin": ["auth_bp", "requests_bp"],
"sellers": ["auth_bp", "requests_bp"]
"boss": ["auth_bp", "requests_bp"],
"sellers": ["auth_bp", "requests_bp", "waybill_bp"]
}

View File

@@ -1,12 +0,0 @@
<!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>
<h2>До свидания!</h2>
<a href="{{ url_for('index') }}"><button>На главную страницу</button></a>
</body>
</html>

View File

@@ -11,15 +11,24 @@
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
</div>
<h1>Здравствуйте, {{ ses['login'] }}!</h1>
{% if ses['access_user'] == 'in' %}
<!-- Not implemented -->
<nav class="menu">
<a href="{{ url_for('requests_bp.requests') }}"><button>Запросы</button></a>
</nav>
{% else %}
<nav class="menu">
<!-- Not implemented -->
<!-- <a href="{{ url_for('requests_bp.requests') }}"><button>Запросы</button></a> -->
<a href="{{ url_for('waybill_bp.waybill') }}"><button>Новая накладная</button></a>
</nav>
{% endif %}
{% else %}
<div class="login">
<a href="{{ url_for('auth_bp.auth') }}"><button>Авторизация</button></a>
</div>
<h1>Здравствуйте!</h1>
<p>Для использования системы, пожалуйста, пройдите процедуру авторизации</p>
{% endif %}
<nav class="menu">
<a href="{{ url_for('requests_bp.requests') }}"><button>Запросы</button></a>
</nav>
</body>
</html>