Merge pull request 'feat(client): add merge_bom_json method for assembly BOM merge' (#20) from feat/bom-sync-and-manifest into main
Reviewed-on: #20
This commit was merged in pull request #20.
This commit is contained in:
@@ -803,6 +803,24 @@ class SiloClient:
|
||||
pn = urllib.parse.quote(part_number, safe="")
|
||||
return self._upload_ods(f"/items/{pn}/bom/merge", ods_bytes, filename)
|
||||
|
||||
def merge_bom_json(self, part_number: str, entries: list) -> Dict[str, Any]:
|
||||
"""Submit a JSON BOM merge from assembly extraction.
|
||||
|
||||
Calls ``POST /api/items/{partNumber}/bom/merge`` with a JSON body
|
||||
containing assembly-derived BOM entries. The server applies adds
|
||||
and quantity changes, flags removed items as unreferenced, and
|
||||
returns the diff.
|
||||
|
||||
Not used by Phase 1 (which calls add/update individually).
|
||||
Ready for Phase 2 when the server endpoint ships.
|
||||
"""
|
||||
pn = urllib.parse.quote(part_number, safe="")
|
||||
return self._request(
|
||||
"POST",
|
||||
f"/items/{pn}/bom/merge",
|
||||
{"source": "assembly", "entries": entries},
|
||||
)
|
||||
|
||||
# -- Schemas ------------------------------------------------------------
|
||||
|
||||
def list_schemas(self) -> list:
|
||||
|
||||
Reference in New Issue
Block a user