From 63edb273530de18805653128e7f156191f8aa66d Mon Sep 17 00:00:00 2001 From: zhu-mengmeng <15588200382@163.com> Date: Fri, 18 Jul 2025 14:49:46 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E9=80=89=E6=8B=A9=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=E5=90=8C=E6=AD=A5=E7=94=9F=E6=88=90?= =?UTF-8?q?=E6=89=98=E7=9B=98=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/jtDB.db | Bin 172032 -> 172032 bytes widgets/loading_dialog_widget.py | 4 +++ widgets/main_window.py | 46 +++++++++++++++---------------- widgets/order_query_dialog.py | 11 ++++++-- 4 files changed, 35 insertions(+), 26 deletions(-) diff --git a/db/jtDB.db b/db/jtDB.db index 8747fbfdbe9516d9056aeea66df28a8dbd9092d1..6ca54fcebbbb5d02a945257e43f452537a89bddd 100644 GIT binary patch delta 1341 zcmcJPOH30%7=WkK?F%{u0%TJGMUg0y;_Pl8YY$?9h>!rS?Lm!C5<@(YG$|&M0EI#^ zBm!+$T>{1vVq+A+LdqNB!9y`a#)`*lA$c5B-5Po@cj_@jri3UzHRSAiPSWdQzXl!P) z0RTGSC~_2O0VvY}8q*dNwwWllm@?bVXY81*uwvRwTkAbH95oGfjR()*)@Jh{%fzN< z+~vw50&tp5N~c;=p?X z%OSg25*?8x*hYpA%M&_&uLVZ5kSL7ny--DD83sV6^fptirxu>#2fN@&1>$GB;8WOQ z;6FuRQ=GjET{=RV@t!~02H(ZqemI?7s0W=uv7lU3j~hhz0rl(4GuCyrnib+B=;U&; zuMq)zX*vHn0?AyI4}cM&GLi%Z2mlly5g+!#(p>2S*nLE_t=frc%&N|vnj}2IB&w3w$);)LySemzF~1F zl2};%y7Yh&LeZ_cZgF5FF*YLgcW`ofMtBuUb)O7uEsP1{FGT)%Vzh5-ZZJ8~lXzGe zm6$L&FOG1Dz?>9I3%2hM3RBC%@atsnvP}rS6d#WZ@d;r#CgGiRQW{}uxFdiL@hcp3 K#SIbo4gCOLZGG_o delta 226 zcmV<803H8;zzTrC3XmHC$&nmG0m-po{XPMmlU_fD1~(ZE12qDZkOmY20?x8P1aJc% z1hJC`us^dA5Niapv9wbw0~iJ-lLz22vk?&P1p{J*PLq!28G}ORw?gIt!g&K!2Y8bQ z(5bT#5Xc4t7m*#8VP^spw~l85di+$_<7LD+oB;!Z4H}oelLAq<4w3@$4UQs8CIA2c diff --git a/widgets/loading_dialog_widget.py b/widgets/loading_dialog_widget.py index 9be5dbd..eb9b2ce 100644 --- a/widgets/loading_dialog_widget.py +++ b/widgets/loading_dialog_widget.py @@ -121,6 +121,10 @@ class LoadingDialog(LoadingDialogUI): # 更新重量 self.weight_value.setText(str(order_data.get("zx_zl", "--"))) + # 自动填充托盘号 + if "xpack" in order_data: + self.tray_input.setText(order_data["xpack"]) + # 发送订单号到主窗口 from widgets.main_window import MainWindow main_window = self.parent diff --git a/widgets/main_window.py b/widgets/main_window.py index 4087d82..3a017ad 100644 --- a/widgets/main_window.py +++ b/widgets/main_window.py @@ -799,30 +799,30 @@ class MainWindow(MainWindowUI): item.setTextAlignment(Qt.AlignCenter) # 如果有order_info数据,尝试匹配字段并设置值 - if order_info: - config_name = config.get('name') - # 检查order_info中是否有与config_name匹配的键 - if config_name in order_info: - value = str(order_info[config_name]) - item = QTableWidgetItem(value) - item.setTextAlignment(Qt.AlignCenter) - # 设置单元格背景为浅绿色,表示自动填充 - item.setBackground(QBrush(QColor("#c8e6c9"))) + # if order_info: + # config_name = config.get('name') + # # 检查order_info中是否有与config_name匹配的键 + # if config_name in order_info: + # value = str(order_info[config_name]) + # item = QTableWidgetItem(value) + # item.setTextAlignment(Qt.AlignCenter) + # # 设置单元格背景为浅绿色,表示自动填充 + # item.setBackground(QBrush(QColor("#c8e6c9"))) - # 保存到数据库 - from dao.inspection_dao import InspectionDAO - inspection_dao = InspectionDAO() - tray_id = self.tray_edit.currentText() - data = [{ - 'position': config.get('position'), - 'config_id': config.get('id'), - 'value': value, - 'status': 'pass', # 默认设置为通过状态 - 'remark': '', - 'tray_id': tray_id - }] - inspection_dao.save_inspection_data(self._current_order_code,gc_note, data) - logging.info(f"自动填充字段 {config_name} 值为 {value}") + # # 保存到数据库 + # from dao.inspection_dao import InspectionDAO + # inspection_dao = InspectionDAO() + # tray_id = self.tray_edit.currentText() + # data = [{ + # 'position': config.get('position'), + # 'config_id': config.get('id'), + # 'value': value, + # 'status': 'pass', # 默认设置为通过状态 + # 'remark': '', + # 'tray_id': tray_id + # }] + # inspection_dao.save_inspection_data(self._current_order_code,gc_note, data) + # logging.info(f"自动填充字段 {config_name} 值为 {value}") # 设置单元格属性以标识其关联的检验项 item.setData(Qt.UserRole, config.get('id')) diff --git a/widgets/order_query_dialog.py b/widgets/order_query_dialog.py index 8d3d641..7e014a4 100644 --- a/widgets/order_query_dialog.py +++ b/widgets/order_query_dialog.py @@ -436,7 +436,7 @@ class OrderQueryDialog(OrderQueryDialogUI): def select_current_row(self, row): """选择当前行并返回数据 - 将订单明细(mo)作为订单号传递给上层组件 + 将订单明细(mo)作为订单号传递给上层组件,并自动获取托盘号 """ if 0 <= row < self.result_table.rowCount(): # 获取存储在item中的原始数据 @@ -445,11 +445,16 @@ class OrderQueryDialog(OrderQueryDialogUI): order_data = item.data(Qt.UserRole) if order_data: # 修改订单数据,将mo字段作为note字段的值 - # 这样上层组件接收到的订单号就是订单明细 mo_value = order_data.get("mo", "") if mo_value: order_data["note"] = mo_value - + # 自动获取托盘号 + order_code = mo_value + if order_code and self.corp_id: + gc_api = GcApi() + xpack_response = gc_api.get_xpack(order_code, self.corp_id) + if xpack_response and xpack_response.get("status", False): + order_data["xpack"] = xpack_response.get("xpack", "") # 发出信号 self.order_selected.emit(order_data) self.accept() \ No newline at end of file