feat(inventory): implement inter-project material transfer backend

- 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
This commit is contained in:
2026-09-23 22:30:31 +03:30
parent da883a28c0
commit b326cf64bf
9 changed files with 868 additions and 0 deletions
+2
View File
@@ -14,6 +14,7 @@ from app.routers import (
material_categories,
materials,
pm,
project_transfers,
projects,
quote_events,
quotes,
@@ -50,5 +51,6 @@ ROUTERS = [
standard_conversions.router,
inventory.router,
pm.router,
project_transfers.router,
users.router,
]