20160116
This commit is contained in:
54
backend/debug_lab_logic.py
Normal file
54
backend/debug_lab_logic.py
Normal file
@@ -0,0 +1,54 @@
|
||||
|
||||
from app.services.fuzzy_matcher import normalize_customer_name, normalize_pn_for_matching
|
||||
from app.routers.lab import parse_date
|
||||
from datetime import datetime
|
||||
|
||||
def debug_lab_logic():
|
||||
print("--- Debugging Lab Logic Normalization ---")
|
||||
|
||||
# Test Data from User Scenario
|
||||
sample_cust = "Semisales Co., LTD"
|
||||
sample_pn = "PSMQC098N10LS2-AU_R2_002A1"
|
||||
sample_date_str = "20250913" # From previous debug output
|
||||
|
||||
order_cust = "SEMISALES"
|
||||
order_pn = "PSMQC098N10LS2-AU_R2_002A1"
|
||||
order_date_str = "2025-06-05" # From previous debug output
|
||||
|
||||
# Normalization
|
||||
norm_sample_cust = normalize_customer_name(sample_cust)
|
||||
norm_order_cust = normalize_customer_name(order_cust)
|
||||
|
||||
norm_sample_pn = normalize_pn_for_matching(sample_pn)
|
||||
norm_order_pn = normalize_pn_for_matching(order_pn)
|
||||
|
||||
print(f"Sample Customer '{sample_cust}' -> '{norm_sample_cust}'")
|
||||
print(f"Order Customer '{order_cust}' -> '{norm_order_cust}'")
|
||||
print(f"Customer Match: {norm_sample_cust == norm_order_cust}")
|
||||
|
||||
print(f"Sample PN '{sample_pn}' -> '{norm_sample_pn}'")
|
||||
print(f"Order PN '{order_pn}' -> '{norm_order_pn}'")
|
||||
print(f"PN Match: {norm_sample_pn == norm_order_pn}")
|
||||
|
||||
# Key Check
|
||||
sample_key = (norm_sample_cust, norm_sample_pn)
|
||||
order_key = (norm_order_cust, norm_order_pn)
|
||||
print(f"Sample Key: {sample_key}")
|
||||
print(f"Order Key: {order_key}")
|
||||
print(f"Key Match: {sample_key == order_key}")
|
||||
|
||||
# Date Parsing Check
|
||||
print("\n--- Date Parsing Check ---")
|
||||
s_date = parse_date(sample_date_str)
|
||||
o_date = parse_date(order_date_str)
|
||||
print(f"Sample Date Raw: '{sample_date_str}' -> Parsed: {s_date}")
|
||||
print(f"Order Date Raw: '{order_date_str}' -> Parsed: {o_date}")
|
||||
|
||||
if s_date and o_date:
|
||||
diff = (o_date - s_date).days
|
||||
print(f"Date Diff (Order - Sample): {diff} days")
|
||||
if diff < 0:
|
||||
print("WARNING: Order is BEFORE Sample. Velocity calculation might filter this out if checking diff >= 0.")
|
||||
|
||||
if __name__ == "__main__":
|
||||
debug_lab_logic()
|
||||
Reference in New Issue
Block a user