Создание и первичная инициализация базы даных успешно завершена. Наполнение демо-данными прошло без ошибок
This commit is contained in:
+19
-11
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user