dodil/erp-brick-purchasing
DODIL ERP brick: purchasing
src/brick_purchasing/application/use_cases.py
"""The use cases — what a person (or their agent, or a neighbouring brick) can do with purchasing.
Each is declared ONCE (in its module under application/) and served as an API route and as an MCP tool. This module only gathers them onto the
one Brick, PURCHASING, which `app.py` and a composition load: `brick_purchasing.application.use_cases:PURCHASING`.
requests asking, approving (release levels), raised by sales-order and inventory PUR-01..03, 38, 65
orders pricing in the supplier's unit, confirming, amending PUR-04..09, 23, 24, 35, 37, 44, 55, 57, 62
receipts recording what arrived, returns, the hand-over to inventory PUR-07, 25, 26, 53, 58
bills the supplier's claim, the three-way match, approval, posting PUR-10..12, 17, 18, 20, 27, 28, 36, 52
payments runs, the bank file (pain.001, BACS Standard 18), confirming, CIS PUR-14..16, 19, 29, 59..61, 66
master settings, limits, strategies, tolerances, supplier prices, profiles, bank details PUR-13, 23, 30, 31, 52
"""
from brick_purchasing.application import ( # noqa: F401 (each registers its use cases)
agreements,
assets,
bill_drafts,
bills,
consignment,
down_payments,
evaluation,
intercompany,
master,
migration,
orders,
payments,
receipts,
requests,
self_billing,
sourcing,
subcontract,
)
from brick_purchasing.application.base import PURCHASING, _repository_default # noqa: F401
repository = _repository_default # erp-platform's composition swaps this one; base.repository reads it per call