feat: 更新InspectionDAO以支持更多字段,重构主窗口UI以使用统一字段映射,优化信息表格更新逻辑
This commit is contained in:
parent
f1540ec0c3
commit
94f8ae054c
@ -116,6 +116,7 @@
|
||||
}
|
||||
},
|
||||
"electricity": {
|
||||
"auto_start": true
|
||||
"auto_start": true,
|
||||
"interval_minutes": 30
|
||||
}
|
||||
}
|
||||
@ -763,8 +763,8 @@ class InspectionDAO:
|
||||
"""
|
||||
try:
|
||||
sql = """
|
||||
SELECT distinct data_corp,user_id,user_name,gzl_zl,mzl,ddmo,qd,spack_type,mxzs,jt,ddnote,code,
|
||||
type,lable,lib,gzl,maxsl,cz,size,cd,luno,qfqd,pono,xj,ysl,dycz,edit_id,remarks,zx_name
|
||||
SELECT DISTINCT data_corp, user_id, user_name, gzl_zl, mzl, ddmo, xpack, qd, spack_type, mxzs, jt, ddnote, code, type, lable, lib, gzl, maxsl, cz, size, cd, luno,
|
||||
qfqd, pono, xj, ysl, dycz, zx_code, edit_id, remarks, zx_name, bccd, tccd, zzyq, customer, customerexp, bz_bqd as bqd, bz_tqd as tqd, type_name, remarks_hb
|
||||
FROM wsbz_order_info WHERE ddmo = ?
|
||||
"""
|
||||
params = (order_id,)
|
||||
|
||||
BIN
db/jtDB.db
BIN
db/jtDB.db
Binary file not shown.
@ -7,6 +7,27 @@ from PySide6.QtGui import QFont, QAction, QBrush, QColor
|
||||
from PySide6.QtCore import Qt, QDateTime, QTimer
|
||||
|
||||
class MainWindowUI(QMainWindow):
|
||||
# 定义字段映射为类属性,方便外部引用
|
||||
FIELD_MAPPING = {
|
||||
"客户": "customerexp",
|
||||
"规格": "size",
|
||||
"材质": "cz",
|
||||
"种类": "type_name",
|
||||
"钢厂": "cd",
|
||||
"炉号": "luno",
|
||||
"轴型": "zx_name",
|
||||
"标签": "template_name",
|
||||
"打印材质": "cz",
|
||||
"底托类型": "spack_type",
|
||||
"强度范围": "qx",
|
||||
"强度": "qd",
|
||||
"延伸要求": "ysl",
|
||||
"线材类型": "jz",
|
||||
"轴重要求": "zzyq",
|
||||
"线径公差": "xj",
|
||||
"备注": "remarks_hb"
|
||||
}
|
||||
|
||||
def __init__(self,username):
|
||||
super().__init__()
|
||||
self.username = username
|
||||
@ -282,25 +303,7 @@ class MainWindowUI(QMainWindow):
|
||||
""")
|
||||
|
||||
# 定义字段和对应的数据键
|
||||
field_mapping = {
|
||||
"客户": "customerexp",
|
||||
"规格": "size",
|
||||
"材质": "cz",
|
||||
"种类": "type_name",
|
||||
"钢厂": "cd",
|
||||
"炉号": "luno",
|
||||
"轴型": "zx_name",
|
||||
"标签": "lable",
|
||||
"打印材质": "cz",
|
||||
"底托类型": "spack_type",
|
||||
"强度范围": "qx",
|
||||
"强度": "qd",
|
||||
"延伸要求": "ysl",
|
||||
"线材类型": "jz",
|
||||
"轴重要求": "zq",
|
||||
"线径公差": "xj",
|
||||
"备注": "remarks_hb"
|
||||
}
|
||||
field_mapping = self.FIELD_MAPPING
|
||||
|
||||
# 创建标签和值的字典,用于后续更新
|
||||
self.info_labels = {}
|
||||
|
||||
@ -3317,31 +3317,17 @@ class MainWindow(MainWindowUI):
|
||||
|
||||
logging.info(f"更新上料区域信息表格: {order_info}")
|
||||
|
||||
# 获取表格中的映射关系
|
||||
field_mapping = {
|
||||
"客户": "customerexp",
|
||||
"规格": "size",
|
||||
"材质": "cz",
|
||||
"种类": "type_name",
|
||||
"钢厂": "cd",
|
||||
"炉号": "luno",
|
||||
"轴型": "zx_name",
|
||||
"标签": "template_name",
|
||||
"打印材质": "cz",
|
||||
"底托类型": "spack_type",
|
||||
"强度范围": "qx",
|
||||
"强度": "qd",
|
||||
"延伸要求": "ysl",
|
||||
"检验员": "jz",
|
||||
"轴重要求": "zzyq",
|
||||
"线径公差": "xj",
|
||||
"备注": "remarks_hb"
|
||||
}
|
||||
# 使用UI类中定义的字段映射关系
|
||||
field_mapping = self.FIELD_MAPPING
|
||||
|
||||
# 记录 order_info 中的所有键,用于调试
|
||||
logging.debug(f"订单信息键: {list(order_info.keys())}")
|
||||
|
||||
# 更新表格内容
|
||||
for field_name, field_key in field_mapping.items():
|
||||
if field_name in self.info_values:
|
||||
value = ""
|
||||
# 对可能存在的键进行安全检查
|
||||
if field_key and field_key in order_info:
|
||||
value = str(order_info[field_key])
|
||||
# 特殊处理线径公差
|
||||
@ -3356,25 +3342,13 @@ class MainWindow(MainWindowUI):
|
||||
if bqd is not None and tqd is not None:
|
||||
value = f"{bqd} - {tqd}"
|
||||
self.info_values[field_name].setText(value)
|
||||
else:
|
||||
logging.warning(f"字段名 '{field_name}' 在info_values中不存在")
|
||||
|
||||
logging.info("上料区域信息表格更新完成")
|
||||
|
||||
# 为了演示,如果没有真实数据,填充一些mock数据
|
||||
if not any(order_info.values()):
|
||||
mock_data = {
|
||||
"customerexp": "示例客户",
|
||||
"size": "1.2mm",
|
||||
"cz": "不锈钢",
|
||||
"type_name": "A型",
|
||||
"cd": "上海钢厂",
|
||||
"luno": "LN20230501",
|
||||
"zx_name": "标准轴",
|
||||
"lable": "标签A",
|
||||
"spack_type": "标准底托",
|
||||
"bccd": "0.7",
|
||||
"tccd": "0.9"
|
||||
}
|
||||
self.update_info_table(mock_data)
|
||||
|
||||
except Exception as e:
|
||||
logging.error(f"更新上料区域信息表格失败: {str(e)}")
|
||||
# 记录异常堆栈,便于调试
|
||||
import traceback
|
||||
logging.error(traceback.format_exc())
|
||||
Loading…
Reference in New Issue
Block a user