Initial version
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
"""adjust_inventory and stock reads."""
|
||||
|
||||
from mcp_server.config import Settings
|
||||
from mcp_server.elabftw import ElabftwClient
|
||||
from mcp_server.journal import SagaJournal
|
||||
from mcp_server.models import ContainerStock, InventoryResult
|
||||
from mcp_server.resolve import ResourceResolver
|
||||
|
||||
|
||||
class InventoryWorkflow:
|
||||
def __init__(
|
||||
self,
|
||||
client: ElabftwClient,
|
||||
resolver: ResourceResolver,
|
||||
journal: SagaJournal,
|
||||
settings: Settings,
|
||||
) -> None:
|
||||
self.client = client
|
||||
self.resolver = resolver
|
||||
self.journal = journal
|
||||
self.settings = settings
|
||||
|
||||
async def stock_for_resource(self, resource_key: str) -> list[ContainerStock]:
|
||||
"""Containers holding the resolved resource with compatible units and current stock."""
|
||||
raise NotImplementedError
|
||||
|
||||
async def adjust_inventory(
|
||||
self,
|
||||
*,
|
||||
amount: float,
|
||||
unit: str,
|
||||
resource_key: str | None = None,
|
||||
container_id: int | None = None,
|
||||
note: str | None = None,
|
||||
) -> InventoryResult:
|
||||
"""Restock/correct a container (voice: “add 500 mL to …”); journaled."""
|
||||
raise NotImplementedError
|
||||
Reference in New Issue
Block a user