Cashier creates an ETTN receipt in Checkbox bound to the TTN with payment control; Checkbox fiscalizes it itself when the parcel is paid for. - cash_registers (Fernet-encrypted license key / PIN) and receipts tables - Checkbox HTTP client + stub (ETTN does not work on test registers) - two-phase create via ARQ job, timeout reconciliation, cron status polling - /receipts and /cash-registers API, audit records - dashboard: per-order and bulk create, prepayment, cancel; cash registers page Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 lines
774 B
Python
26 lines
774 B
Python
"""Реестр моделей.
|
|
|
|
Alembic автогенерирует миграции по `Base.metadata`, поэтому каждая модель
|
|
обязана быть импортирована здесь — иначе её таблица молча не попадёт в миграцию.
|
|
"""
|
|
|
|
from app.db.base import Base
|
|
from app.db.models.audit import AuditAction, AuditLog
|
|
from app.db.models.cash_register import CashRegister
|
|
from app.db.models.order import Order
|
|
from app.db.models.receipt import Receipt, ReceiptStatus
|
|
from app.db.models.user import RefreshToken, User, UserRole
|
|
|
|
__all__ = [
|
|
"AuditAction",
|
|
"AuditLog",
|
|
"Base",
|
|
"CashRegister",
|
|
"Order",
|
|
"Receipt",
|
|
"ReceiptStatus",
|
|
"RefreshToken",
|
|
"User",
|
|
"UserRole",
|
|
]
|