fix(db): fill item_receipts.confirmed_by in office paths; resilient per-statement v2.6 upgrade (root cause of 500 on receipt)

This commit is contained in:
ali_mohaghegh
2026-08-27 15:04:25 +03:30
parent eb2a50eee1
commit 068c51909c
3 changed files with 65 additions and 40 deletions
+2
View File
@@ -7,6 +7,7 @@ from app.db.engine import get_db
from app.models.procurement import ItemDecision, ItemReceipt, LineItem
from app.schemas.procurement import ReceiptCreate, ReceiptUpdate
from app.services.expand_service import receipt_full
from app.services.quote_service import _fallback_confirmer_id
from app.utils.errors import ConflictError, NotFoundError
router = APIRouter(
@@ -52,6 +53,7 @@ async def create_receipt(quote_id, line_item_id, payload: ReceiptCreate, db: Asy
raise ConflictError("رسید این خط آیتم قبلاً ثبت شده است")
receipt = ItemReceipt(
item_decision_id=decision.id,
confirmed_by=await _fallback_confirmer_id(db),
received_at=payload.received_at,
received_qty=payload.received_qty,
on_time=payload.on_time,