陆运多条线路按段展示 TMS 费用名和时效,选定后再写回该条成本。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-22 18:28:29 +08:00
co-authored by Cursor
parent e769eb9c1d
commit 49faa35f47
23 changed files with 2323 additions and 55 deletions
+15
View File
@@ -74,6 +74,21 @@ class HttpLedgerParseTests(unittest.TestCase):
self.assertEqual(body["workOrderNo"], "WO202609220001")
self.assertEqual(body["facts"]["起运港"], "深圳")
def test_upsert_quote_posts_replace_tms(self) -> None:
fake = _FakeLedgerClient()
out = HttpLedger(client=fake).upsert_quote(
work_order_no="WO202609220015",
quote={"total": "17100", "currency": "CNY", "route_line": "上海-谅山-胡志明"},
to_status="已报价",
)
self.assertTrue(out.get("ok"))
self.assertEqual(len(fake.calls), 1)
method, path, body = fake.calls[0]
self.assertEqual(method, "POST")
self.assertEqual(path, "/inquiry/agent/ticket/replaceTmsQuote")
self.assertEqual(body["workOrderNo"], "WO202609220015")
self.assertEqual(body["quote"]["total"], "17100")
def test_void_quote_files_posts_agent_path(self) -> None:
fake = _FakeLedgerClient()
out = HttpLedger(client=fake).void_quote_files(work_order_no="WO202609220001")