产品调价继承工单币种(港币不再默成美元);陆运集拼空分档只填询价重量那一档,跨境整车按已选线路写起讫。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -374,6 +374,48 @@ class LandGroupCollabTests(unittest.TestCase):
|
||||
air = extract_product_quote("价格为1RMB/KG", business_line="AIR")
|
||||
self.assertEqual(str((air.get("fee_rows") or [{}])[0].get("name") or ""), "空运费")
|
||||
|
||||
def test_land_adjust_without_currency_inherits_tms_hkd(self) -> None:
|
||||
"""WO202610090107:TMS 港币,产品只写「运输费调整为1100」时继承 HKD,禁止默认 USD。"""
|
||||
from agent.llm.extract_text import extract_product_quote
|
||||
from agent.policy.sea_group_ops import _quote_currency_hint, merge_quote_fees
|
||||
|
||||
tms = {
|
||||
"currency": "HKD",
|
||||
"cost": "HKD 1000",
|
||||
"total": "1000",
|
||||
"source": "TMS",
|
||||
"fee_lines": [
|
||||
{
|
||||
"name": "运输费",
|
||||
"amount": "1000",
|
||||
"currency": "HKD",
|
||||
}
|
||||
],
|
||||
"landSegments": [
|
||||
{
|
||||
"origin": "广东省-深圳市-福田区",
|
||||
"destination": "香港特别行政区",
|
||||
"currency": "HKD",
|
||||
"costPrice": "1000",
|
||||
}
|
||||
],
|
||||
}
|
||||
self.assertEqual(_quote_currency_hint(tms), "HKD")
|
||||
# 旧行为:无 baseline 会落到 USD
|
||||
legacy = extract_product_quote("运输费调整为1100", business_line="LAND")
|
||||
self.assertNotEqual(str(legacy.get("currency") or ""), "USD")
|
||||
quote = extract_product_quote(
|
||||
"运输费调整为1100",
|
||||
business_line="LAND",
|
||||
baseline_currency=_quote_currency_hint(tms),
|
||||
)
|
||||
self.assertEqual(str(quote.get("currency") or ""), "HKD")
|
||||
self.assertEqual(str((quote.get("fee_lines") or [{}])[0].get("currency") or ""), "HKD")
|
||||
self.assertEqual(str((quote.get("fee_lines") or [{}])[0].get("amount") or ""), "1100")
|
||||
merged = merge_quote_fees(tms, quote)
|
||||
self.assertEqual(str((merged.get("fee_lines") or [{}])[0].get("currency") or ""), "HKD")
|
||||
self.assertEqual(str(merged.get("currency") or ""), "HKD")
|
||||
|
||||
def test_land_requote_replaces_wrong_sea_fee_name(self) -> None:
|
||||
"""旧陆运产品价误落海运费时,重报陆运费应盖掉而不是并排两行。"""
|
||||
from agent.policy.sea_group_ops import _align_wrong_default_freight, merge_quote_fees
|
||||
|
||||
Reference in New Issue
Block a user