Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -508,20 +508,28 @@ class TextToSQLSystem:
|
|
| 508 |
# ==============================================================================
|
| 509 |
entity_match_data = None
|
| 510 |
entity_patterns = [
|
| 511 |
-
|
| 512 |
-
|
| 513 |
-
|
| 514 |
-
|
| 515 |
-
|
| 516 |
-
|
| 517 |
-
|
| 518 |
-
|
| 519 |
-
|
| 520 |
-
|
| 521 |
-
|
| 522 |
-
|
| 523 |
-
|
| 524 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 525 |
]
|
| 526 |
|
| 527 |
for p in entity_patterns:
|
|
|
|
| 508 |
# ==============================================================================
|
| 509 |
entity_match_data = None
|
| 510 |
entity_patterns = [
|
| 511 |
+
# 模式1: 匹配 "类型 + ID" (e.g., "买家ID C0761N") - 最高优先级
|
| 512 |
+
# 增加了繁體的 "買家", "代號", "代碼"
|
| 513 |
+
{'pattern': r"(買家|买家|buyer)\s*(?:id|代號|代碼|代号|代码)\s*'\"?\b([A-Z]\d{4}[A-Z])\b'\"?", 'column': 'sd.BuyerID', 'type': '買家ID'},
|
| 514 |
+
# 增加了繁體的 "申請方", "申請廠商"
|
| 515 |
+
{'pattern': r"(申請方|申请方|申請廠商|申请厂商|applicant)\s*(?:id|代號|代碼|代号|代码)\s*'\"?\b([A-Z]\d{4}[A-Z])\b'\"?", 'column': 'sd.ApplicantID', 'type': '申請方ID'},
|
| 516 |
+
# 增加了繁體的 "付款方", "付款廠商"
|
| 517 |
+
{'pattern': r"(付款方|付款厂商|invoiceto)\s*(?:id|代號|代碼|代号|代码)\s*'\"?\b([A-Z]\d{4}[A-Z])\b'\"?", 'column': 'sd.InvoiceToID', 'type': '付款方ID'},
|
| 518 |
+
# 增加了繁體的 "代理商"
|
| 519 |
+
{'pattern': r"(代理商|agent)\s*(?:id|代號|代碼|代号|代码)\s*'\"?\b([A-Z]\d{4}[A-Z])\b'\"?", 'column': 'sd.AgentID', 'type': '代理商ID'},
|
| 520 |
+
|
| 521 |
+
# 模式2: 匹配 "類型 + 名稱" (e.g., "買家 Gap")
|
| 522 |
+
# 增加了繁體的 "買家"
|
| 523 |
+
{'pattern': r"(買家|买家|buyer|客戶)\s*'\"?([a-zA-Z0-9&.\s-]+?)(?:\s*的|\s+|$|有)", 'column': 'sd.BuyerName', 'type': '買家'},
|
| 524 |
+
# 增加了繁體的 "申請方", "申請廠商"
|
| 525 |
+
{'pattern': r"(申請方|申请方|申請廠商|申请厂商|applicant)\s*'\"?([a-zA-Z0-9&.\s-]+?)(?:\s*的|\s+|$|有)", 'column': 'sd.ApplicantName', 'type': '申請方'},
|
| 526 |
+
# 增加了繁體的 "付款方", "付款廠商"
|
| 527 |
+
{'pattern': r"(付款方|付款厂商|invoiceto)\s*'\"?([a-zA-Z0-9&.\s-]+?)(?:\s*的|\s+|$|有)", 'column': 'sd.InvoiceToName', 'type': '付款方'},
|
| 528 |
+
# 增加了繁體的 "代理商"
|
| 529 |
+
{'pattern': r"(代理商|agent)\s*'\"?([a-zA-Z0-9&.\s-]+?)(?:\s*的|\s+|$|有)", 'column': 'sd.AgentName', 'type': '代理商'},
|
| 530 |
+
|
| 531 |
+
# 模式3: 单独匹配一个 ID (e.g., "c0761n") - 较低优先级
|
| 532 |
+
{'pattern': r"\b([A-Z]\d{4}[A-Z])\b", 'column': 'sd.ApplicantID', 'type': 'ID'}
|
| 533 |
]
|
| 534 |
|
| 535 |
for p in entity_patterns:
|