diff --git a/db/jtDB.db b/db/jtDB.db index 649277a..7c311cc 100644 Binary files a/db/jtDB.db and b/db/jtDB.db differ diff --git a/widgets/main_window.py b/widgets/main_window.py index f37d0ef..d71188d 100644 --- a/widgets/main_window.py +++ b/widgets/main_window.py @@ -3679,21 +3679,40 @@ class MainWindow(MainWindowUI): # 获取API返回的新值 new_value = "" if field_key and field_key in order_info: - new_value = str(order_info[field_key]) + raw_value = order_info[field_key] + # 处理None值,将其转换为空字符串 + if raw_value is None: + new_value = "" + else: + new_value = str(raw_value) # 特殊处理线径公差 if field_name == "线径公差" and "bccd" in order_info and "tccd" in order_info: bccd = order_info.get("bccd") tccd = order_info.get("tccd") + # 处理None值,只有两个值都不为None时才组合 if bccd is not None and tccd is not None: new_value = f"{bccd} - {tccd}" + elif bccd is not None: + new_value = str(bccd) + elif tccd is not None: + new_value = str(tccd) + else: + new_value = "" # 特殊处理强度范围 if field_name == "强度范围" and "bqd" in order_info and "tqd" in order_info: bqd = order_info.get("bqd") tqd = order_info.get("tqd") + # 处理None值,只有两个值都不为None时才组合 if bqd is not None and tqd is not None: new_value = f"{bqd} - {tqd}" + elif bqd is not None: + new_value = str(bqd) + elif tqd is not None: + new_value = str(tqd) + else: + new_value = "" # 智能更新逻辑:如果新值不为空且与当前值不同,则更新;如果新值为空但当前值不为空,则保持当前值 if new_value and new_value != current_value: