chore: snapshot workflow migration progress

This commit is contained in:
2026-04-12 11:49:04 +02:00
parent 0cd02513d5
commit 3e810c74a3
163 changed files with 31774 additions and 2753 deletions
+8 -3
View File
@@ -1,5 +1,5 @@
"""Order service — order number generation and business logic."""
from datetime import datetime
from datetime import datetime, timezone
from sqlalchemy.ext.asyncio import AsyncSession
from sqlalchemy import select, func, create_engine, update as sql_update
from sqlalchemy.orm import Session
@@ -9,9 +9,14 @@ import logging
logger = logging.getLogger(__name__)
def _utcnow_naive() -> datetime:
"""Return UTC as a naive datetime for legacy TIMESTAMP WITHOUT TIME ZONE columns."""
return datetime.now(timezone.utc).replace(tzinfo=None)
async def generate_order_number(db: AsyncSession) -> str:
"""Generate next sequential order number: SA-2026-XXXXX."""
year = datetime.utcnow().year
year = datetime.now(timezone.utc).year
prefix = f"SA-{year}-"
# Use MAX to find the highest existing sequence number this year.
@@ -68,7 +73,7 @@ def check_order_completion(order_id: str) -> bool:
return False
# Auto-advance to completed
now = datetime.utcnow()
now = _utcnow_naive()
session.execute(
sql_update(Order)
.where(Order.id == order_id)