From cbdc25545ead09161aa1fcb3ecd41e21146b31d8 Mon Sep 17 00:00:00 2001 From: zhu-mengmeng <15588200382@163.com> Date: Mon, 21 Jul 2025 15:51:47 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9B=B4=E6=96=B0=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=92=8C=E4=B8=BB=E7=AA=97=E5=8F=A3=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=8C=E8=B0=83=E6=95=B4=E5=AD=97=E6=AE=B5=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=E4=B8=BAsrch=5Fspack=EF=BC=8C=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=87=80=E9=87=8D=E8=AE=A1=E7=AE=97=E5=8F=8A=E8=AD=A6=E5=91=8A?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apis/gc_api.py | 2 +- db/jtDB.db | Bin 200704 -> 200704 bytes widgets/loading_dialog_widget.py | 4 ++-- widgets/main_window.py | 31 ++++++++++++++++--------------- widgets/order_query_dialog.py | 2 +- 5 files changed, 20 insertions(+), 19 deletions(-) diff --git a/apis/gc_api.py b/apis/gc_api.py index 266ad33..398a2a6 100644 --- a/apis/gc_api.py +++ b/apis/gc_api.py @@ -341,7 +341,7 @@ class GcApi: # API 配置中的键名 api_key = "get_order_info_by_xpack" order_dict = { - "xpack": xpack, + "srch_spack": xpack, "data_corp": corp_id } data = { diff --git a/db/jtDB.db b/db/jtDB.db index 13aca841262de78e2e752c4095c7335d3440df86..15deb3676933f2b8a215780157975f1f366245c4 100644 GIT binary patch delta 308 zcmZozz|*jRXM!}N$3z)tMvsjNf9)90ZH}{FwtzX2O>Hv!g~OW#1!7q1#V7l*Fc@S{a#J8Jdev_C=R5u`-3o_+XJSurf9hpX`k(V`OG!3^dIPn@qNq zv7z{6Pb^X(SBOvcz%B!{$Q_G}v6YFL_+&TiGDgh;&$kOaXFR`$$H>6S$XL(R$k@Qh RV){ZBCgJV>7BeyB005fVMsolF delta 71 zcmV-N0J#5vpbUVZ43HZEK9L+l0Y0%{{XPN3vtB=@paWP35R(Vcv9l2nSO$X-=eH2& d0nfY(F*Q0dI4(6aF*rGwfvW-(xBjC70&JYi8F~N! diff --git a/widgets/loading_dialog_widget.py b/widgets/loading_dialog_widget.py index b2fb702..0ab8acc 100644 --- a/widgets/loading_dialog_widget.py +++ b/widgets/loading_dialog_widget.py @@ -130,7 +130,7 @@ class LoadingDialog(LoadingDialogUI): main_window = self.parent if main_window and isinstance(main_window, MainWindow): # 使用note字段作为订单号(已经被修改为mo的值) - order_code = order_data.get("note", "") + order_code = order_data.get("mo", "") logging.info(f"发送订单号到主窗口: {order_code}") self.order_code_signal.emit(order_code) @@ -238,7 +238,7 @@ class LoadingDialog(LoadingDialogUI): """通过托盘号查询订单信息,并回显到页面(完全仿照on_order_query)""" try: query_params = { - "xpack": tray_id, + "srch_spack": tray_id, "corp_id": self.corp_id } dialog = OrderQueryDialog(self) diff --git a/widgets/main_window.py b/widgets/main_window.py index 90538d7..5c64e35 100644 --- a/widgets/main_window.py +++ b/widgets/main_window.py @@ -2245,7 +2245,19 @@ class MainWindow(MainWindowUI): if not gc_note: logging.warning("工程号为空") return - + # 保存净重到数据库(毛重-工字轮重量,单位都是千克) + from dao.inspection_dao import InspectionDAO + inspection_dao = InspectionDAO() + gzl_zl_raw = inspection_dao.get_gzl_zl(self._current_order_code) + gzl_zl = 0.0 + try: + if gzl_zl_raw: + gzl_zl = float(gzl_zl_raw) + except (ValueError, TypeError): + logging.warning(f"无法将工字轮重量 '{gzl_zl_raw}' 转换为浮点数,将使用默认值 0.0") + + net_weight_kg = round(weight_kg - gzl_zl,3) + # 检查轴重要求范围 if "轴重要求" in self.info_values and self.info_values["轴重要求"] is not None: try: @@ -2258,7 +2270,7 @@ class MainWindow(MainWindowUI): max_weight = float(parts[1].strip()) # 检查称重值是否在范围内 - if weight_kg < min_weight or weight_kg > max_weight: + if net_weight_kg < min_weight or net_weight_kg > max_weight: # 写入寄存器D10 给值 2 表示重量超出范围 modbus = ModbusUtils() client = modbus.get_client() @@ -2268,7 +2280,7 @@ class MainWindow(MainWindowUI): self.warning_msg = QMessageBox(self) self.warning_msg.setIcon(QMessageBox.Warning) self.warning_msg.setWindowTitle('重量超出范围') - self.warning_msg.setText(f"称重值 {weight_kg:.3f}kg 不在轴重要求范围内 ({min_weight:.1f} - {max_weight:.1f}kg)") + self.warning_msg.setText(f"称重值 {net_weight_kg:.3f}kg 不在轴重要求范围内 ({min_weight:.1f} - {max_weight:.1f}kg)") self.warning_msg.setStandardButtons(QMessageBox.NoButton) self.warning_msg.setModal(False) # 确保非模态 self.warning_msg.setWindowFlags(self.warning_msg.windowFlags() | Qt.WindowStaysOnTopHint) # 置顶显示 @@ -2326,18 +2338,7 @@ class MainWindow(MainWindowUI): tray_id = self.tray_edit.currentText() self.save_inspection_data(self._current_order_code, gc_note, tray_id, 12, 12, str(weight_kg), "pass") - # 保存净重到数据库(毛重-工字轮重量,单位都是千克) - from dao.inspection_dao import InspectionDAO - inspection_dao = InspectionDAO() - gzl_zl_raw = inspection_dao.get_gzl_zl(self._current_order_code) - gzl_zl = 0.0 - try: - if gzl_zl_raw: - gzl_zl = float(gzl_zl_raw) - except (ValueError, TypeError): - logging.warning(f"无法将工字轮重量 '{gzl_zl_raw}' 转换为浮点数,将使用默认值 0.0") - - net_weight_kg = round(weight_kg - gzl_zl,3) + self.save_inspection_data(self._current_order_code, gc_note, tray_id, 13, 13, str(net_weight_kg), "pass") # 设置净重单元格(显示千克) diff --git a/widgets/order_query_dialog.py b/widgets/order_query_dialog.py index 3448127..e64ba65 100644 --- a/widgets/order_query_dialog.py +++ b/widgets/order_query_dialog.py @@ -325,7 +325,7 @@ class OrderQueryDialog(OrderQueryDialogUI): """通过托盘号查订单数据,返回列表""" try: gc_api = GcApi() - response = gc_api.get_order_info_by_xpack(params.get("xpack"), params.get("corp_id")) + response = gc_api.get_order_info_by_xpack(params.get("srch_spack"), params.get("corp_id")) if response and response.get("status", False): orders_data = response.get("data", []) results = []