Создание и первичная инициализация базы даных успешно завершена. Наполнение демо-данными прошло без ошибок

This commit is contained in:
2025-12-06 12:58:42 +03:00
parent f378de38da
commit f07843de5a
49 changed files with 734 additions and 353 deletions
+19 -11
View File
@@ -2,7 +2,8 @@ from datetime import datetime, timedelta
from sqlalchemy import select
from db.schemas import StocksRecords, ServicesRecords
from db.handlers.stock import StockHandler
from db.schemas.records import StocksRecords, ServicesRecords
from utils import logger
@@ -44,28 +45,37 @@ class StocksRecordsHandler:
logger.error(f"Ошибка создания записи: {str(e)}")
return False
async def accept(
async def decide(
record_id: int,
accept_user_id: int,
decision_user_id: int,
source_stock_id: int,
quantity: int,
price: float,
accept: bool = True,
):
try:
logger.info(f"Принятие записи {record_id} от {accept_user_id}")
record = await StocksRecords.get(id=record_id)
record.accept_user_id = accept_user_id
record.accepted_at = datetime.now()
logger.info(
f"{'Принятие' if accept else 'Отклонение'} записи {record_id} от {decision_user_id}"
)
record = await StocksRecordsHandler.getById(record_id, record=True)
if not record:
logger.error(f"Запись {record_id} не найдена")
return False
record.decision_user_id = decision_user_id
record.decided_at = datetime.now()
record.source_stock_id = source_stock_id
record.quantity = quantity
record.price = price
record.accepted = accept
await record.save()
logger.info(
f"Запись {record_id} успешно принята {accept_user_id} в {record.accepted_at.strftime('%Y-%m-%d %H:%M:%S')}"
f"Запись {record_id} успешно {'принята' if accept else 'отклонена'} {decision_user_id} в {record.decided_at.strftime('%Y-%m-%d %H:%M:%S')}"
)
return True
except Exception as e:
logger.error(f"Ошибка принятия записи: {str(e)}")
logger.error(
f"Ошибка {'принятия' if accept else 'отклонения'} записи: {str(e)}"
)
return False
async def edit(record_id: int, edit_user_id: int, **kwargs):
@@ -77,8 +87,6 @@ class StocksRecordsHandler:
return recordDB
try:
from db.handlers.stock import StockHandler
logger.info(f"Обновление записи {record_id} от {edit_user_id}")
record = await StocksRecords.get(id=record_id)