空运成交后可在本群继续锁舱;调价同步舱位费用桶;出单按空运段骨架落费并保留陆运车型尺寸;导出文件名乱码修复。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1392,8 +1392,41 @@ class SeaGroupCollabFieldTests(unittest.TestCase):
|
||||
self.assertEqual(str(rows["空运费"].get("amount") or ""), "9900.00")
|
||||
self.assertEqual(str(rows["空运费"].get("unit_price") or ""), "99.00")
|
||||
self.assertEqual(str(rows["空运费"].get("quantity") or ""), "100")
|
||||
self.assertEqual(str(rows["空运费"].get("unit") or "").upper(), "KG")
|
||||
self.assertEqual(str(rows["空运费"].get("project") or ""), "空运段")
|
||||
self.assertEqual(str(quote.get("total") or ""), "9900.0")
|
||||
|
||||
def test_air_origin_fee_underscore_unit_board(self) -> None:
|
||||
"""WO008:起运港、增值费_板,单价… — 单位是板,不能落成票;项目是起运港。"""
|
||||
from agent.llm.extract_text import extract_product_quote
|
||||
|
||||
quote = extract_product_quote(
|
||||
"起运港、增值费_板,单价CNY10,数量100,金额CNY1000@询价小助手",
|
||||
business_line="AIR",
|
||||
)
|
||||
rows = {str(x.get("name") or ""): x for x in (quote.get("fee_rows") or [])}
|
||||
self.assertIn("增值费", rows)
|
||||
self.assertEqual(str(rows["增值费"].get("unit") or ""), "板")
|
||||
self.assertEqual(str(rows["增值费"].get("unit_price") or ""), "10")
|
||||
self.assertEqual(str(rows["增值费"].get("quantity") or ""), "100")
|
||||
self.assertEqual(str(rows["增值费"].get("amount") or ""), "1000")
|
||||
self.assertEqual(str(rows["增值费"].get("project") or ""), "起运港")
|
||||
self.assertEqual(str(quote.get("total") or ""), "1000.0")
|
||||
|
||||
def test_air_origin_fee_mention_prefix_keeps_project_and_unit(self) -> None:
|
||||
"""WO009:句首 @询价小助手 不能挡住起运港分段;逗号单位「板」不能丢。"""
|
||||
from agent.llm.extract_text import extract_product_quote
|
||||
|
||||
quote = extract_product_quote(
|
||||
"@询价小助手 起运港、增值费,板,单价CNY10,数量100,金额CNY1000",
|
||||
business_line="AIR",
|
||||
)
|
||||
rows = {str(x.get("name") or ""): x for x in (quote.get("fee_rows") or [])}
|
||||
self.assertIn("增值费", rows)
|
||||
self.assertEqual(str(rows["增值费"].get("unit") or ""), "板")
|
||||
self.assertEqual(str(rows["增值费"].get("project") or ""), "起运港")
|
||||
self.assertEqual(str(rows["增值费"].get("amount") or ""), "1000")
|
||||
|
||||
def test_fee_line_text_is_a_product_quote(self) -> None:
|
||||
"""产品按行改价:码头操作费100CNY / 报关费改为300CNY,必须抽出费用名,不能只当海运费合计。"""
|
||||
from agent.llm.extract_text import extract_product_quote
|
||||
|
||||
Reference in New Issue
Block a user