30 lines
869 B
Python
30 lines
869 B
Python
import os
|
|
from dataclasses import dataclass
|
|
|
|
from Database.sql_provider import SQLProvider
|
|
from Database.work import select_list
|
|
from flask import current_app
|
|
|
|
sql_provider = SQLProvider(os.path.join(os.path.dirname(__file__), "sql"))
|
|
|
|
|
|
@dataclass
|
|
class InfoRespronse:
|
|
result: tuple
|
|
error_message: str
|
|
status: bool
|
|
|
|
|
|
def auth_model(input_data) -> InfoRespronse:
|
|
db_config = current_app.config["db_config"]
|
|
|
|
_sql = sql_provider.get("auth.sql", input_data)
|
|
user = select_list(db_config, _sql)
|
|
if user is None:
|
|
return InfoRespronse(
|
|
(), error_message="Ошибка при подключении к БД", status=False
|
|
)
|
|
elif len(user) == 0:
|
|
return InfoRespronse((), error_message="Пользователь не найден", status=False)
|
|
return InfoRespronse(user, error_message="", status=True)
|