- Add ProjectTransfer database model and migration - Implement project transfer service with immediate stock deduction on creation - Support 100% full delivery receipt logic across destination warehouses - Enforce canonical_specs_hash matching for cross-project stock merge - Add RBAC guards and status lock on received transfers (409 Conflict) - Register API router for transfers with on-the-way integration
57 lines
1.1 KiB
Python
57 lines
1.1 KiB
Python
"""All API routers, re-exported for main.py assembly."""
|
|
from app.routers import (
|
|
attribute_definitions,
|
|
auth,
|
|
brand_materials,
|
|
brands,
|
|
files,
|
|
inventory,
|
|
item_decisions,
|
|
item_receipts,
|
|
item_termsheets,
|
|
line_item_specs,
|
|
line_items,
|
|
material_categories,
|
|
materials,
|
|
pm,
|
|
project_transfers,
|
|
projects,
|
|
quote_events,
|
|
quotes,
|
|
schedule_steps,
|
|
standard_conversions,
|
|
supplier_materials,
|
|
suppliers,
|
|
termsheets,
|
|
units,
|
|
users,
|
|
)
|
|
|
|
ROUTERS = [
|
|
auth.router,
|
|
units.router,
|
|
brands.router,
|
|
material_categories.router,
|
|
attribute_definitions.router,
|
|
materials.router,
|
|
brand_materials.router,
|
|
suppliers.router,
|
|
supplier_materials.router,
|
|
projects.router,
|
|
quotes.router,
|
|
line_items.router,
|
|
line_item_specs.router,
|
|
termsheets.router,
|
|
schedule_steps.router,
|
|
item_termsheets.router,
|
|
item_decisions.router,
|
|
item_receipts.router,
|
|
quote_events.router,
|
|
files.router,
|
|
standard_conversions.router,
|
|
inventory.router,
|
|
pm.router,
|
|
project_transfers.router,
|
|
users.router,
|
|
]
|