Edit on GitHub

src.db.utils.reports

Функционал для работы с БД. Отчеты и обращения

 1"""Функционал для работы с БД. Отчеты и обращения"""
 2
 3import logging
 4
 5from sqlalchemy import insert
 6
 7from core.metric import async_speed_metric
 8from db.database import execute_query
 9from db.models import Reports
10
11logger = logging.getLogger()
12
13
14@async_speed_metric
15async def add_report(report: dict):
16    """Добавляет новый отчет в базу данных.
17
18    Эта функция принимает словарь, представляющий отчет, и добавляет его в таблицу Reports.
19    Возвращает добавленный отчет или None, если добавление не удалось.
20
21    Args:
22        report (dict): Словарь, содержащий информацию об отчете, который нужно добавить.
23
24    Returns:
25        Reports: Добавленный отчет, если он успешно добавлен, иначе None.
26    """
27    query = insert(Reports).values(report).returning(Reports)
28    result: Reports = (await execute_query(query)).scalar_one_or_none()
29    return result
logger = <RootLogger root (DEBUG)>
@async_speed_metric
async def add_report(report: dict):
15@async_speed_metric
16async def add_report(report: dict):
17    """Добавляет новый отчет в базу данных.
18
19    Эта функция принимает словарь, представляющий отчет, и добавляет его в таблицу Reports.
20    Возвращает добавленный отчет или None, если добавление не удалось.
21
22    Args:
23        report (dict): Словарь, содержащий информацию об отчете, который нужно добавить.
24
25    Returns:
26        Reports: Добавленный отчет, если он успешно добавлен, иначе None.
27    """
28    query = insert(Reports).values(report).returning(Reports)
29    result: Reports = (await execute_query(query)).scalar_one_or_none()
30    return result

Добавляет новый отчет в базу данных.

Эта функция принимает словарь, представляющий отчет, и добавляет его в таблицу Reports. Возвращает добавленный отчет или None, если добавление не удалось.

Arguments:
  • report (dict): Словарь, содержащий информацию об отчете, который нужно добавить.
Returns:

Reports: Добавленный отчет, если он успешно добавлен, иначе None.