From 703f03f0bbe48bf3d787d83cf346b950affcd30e Mon Sep 17 00:00:00 2001 From: zhu-mengmeng <15588200382@163.com> Date: Mon, 9 Jun 2025 01:16:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0InspectionDAO=E4=BB=A5?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E6=89=98=E7=9B=98=E5=8F=B7=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E4=B8=BB=E7=AA=97=E5=8F=A3=E4=BB=A5=E5=A4=84=E7=90=86?= =?UTF-8?q?=E6=89=98=E7=9B=98=E5=8F=B7=E8=BE=93=E5=85=A5=E5=B9=B6=E4=BF=9D?= =?UTF-8?q?=E5=AD=98=E6=A3=80=E9=AA=8C=E6=95=B0=E6=8D=AE=EF=BC=8C=E5=A2=9E?= =?UTF-8?q?=E5=BC=BA=E6=95=B0=E6=8D=AE=E5=BA=93=E6=9F=A5=E8=AF=A2=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E4=BB=A5=E6=A0=B9=E6=8D=AE=E6=89=98=E7=9B=98=E5=8F=B7?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=E6=9C=AA=E5=AE=8C=E6=88=90=E7=9A=84=E6=A3=80?= =?UTF-8?q?=E9=AA=8C=E8=AE=B0=E5=BD=95=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dao/inspection_dao.py | 25 ++++++++++++----------- db/jtDB.db | Bin 28672 -> 36864 bytes widgets/main_window.py | 44 ++++++++++++++++++++++++++++++----------- 3 files changed, 45 insertions(+), 24 deletions(-) diff --git a/dao/inspection_dao.py b/dao/inspection_dao.py index 11dba35..2112ce9 100644 --- a/dao/inspection_dao.py +++ b/dao/inspection_dao.py @@ -237,7 +237,7 @@ class InspectionDAO: value = item.get('value') status = item.get('status', 'pass') remark = item.get('remark', '') - + tray_id = item.get('tray_id', '') # 检查是否已存在该工程号和位置的记录 check_sql = """ SELECT id FROM inspection_data @@ -253,7 +253,7 @@ class InspectionDAO: update_sql = """ UPDATE inspection_data SET config_id = ?, value = ?, status = ?, remark = ?, - update_time = ?, update_by = ? + update_time = ?, update_by = ?, tray_id = ? WHERE id = ? """ update_params = ( @@ -266,12 +266,12 @@ class InspectionDAO: insert_sql = """ INSERT INTO inspection_data ( order_id, position, config_id, value, status, remark, - create_time, create_by, is_deleted - ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, FALSE) + create_time, create_by, is_deleted, tray_id + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, FALSE, ?) """ insert_params = ( order_id, position, config_id, value, status, remark, - current_time, username + current_time, username, tray_id ) self.db.cursor.execute(insert_sql, insert_params) @@ -281,7 +281,7 @@ class InspectionDAO: self.db.rollback_transaction() logging.error(f"保存检验数据失败: {str(e)}") return False - def get_inspection_data_unfinished(self): + def get_inspection_data_unfinished(self, tray_id): """获取未完成的检验数据 Returns: @@ -293,11 +293,12 @@ class InspectionDAO: c.name, c.display_name, c.data_type, c.unit FROM inspection_data d JOIN inspection_config c ON d.config_id = c.id - WHERE d.is_deleted = FALSE + WHERE d.is_deleted = FALSE AND d.tray_id = ? AND order_id IN (SELECT distinct order_id FROM inspection_data WHERE status != 'pass') ORDER BY d.order_id, d.position """ - self.db.cursor.execute(sql) + params = (tray_id,) + self.db.cursor.execute(sql, params) results = self.db.cursor.fetchall() data_list = [] @@ -321,12 +322,12 @@ class InspectionDAO: except Exception as e: logging.error(f"获取未完成的检验数据失败: {str(e)}") return [] - def get_inspection_data_by_order(self, order_id): + def get_inspection_data_by_order(self, order_id, tray_id): """根据工程号获取检验数据 Args: order_id: 工程号 - + tray_id: 托盘号 Returns: list: 检验数据列表 """ @@ -336,10 +337,10 @@ class InspectionDAO: c.name, c.display_name, c.data_type, c.unit FROM inspection_data d JOIN inspection_config c ON d.config_id = c.id - WHERE d.order_id = ? AND d.is_deleted = FALSE + WHERE d.order_id = ? AND d.is_deleted = FALSE AND d.tray_id = ? ORDER BY d.position """ - params = (order_id,) + params = (order_id, tray_id) self.db.cursor.execute(sql, params) results = self.db.cursor.fetchall() diff --git a/db/jtDB.db b/db/jtDB.db index bce2c99346ee473a27f19e5ee6ee50b9bc95420d..0810f0b9159240453fb6b483a7401c8ecffd0468 100644 GIT binary patch delta 2666 zcma);Z)g)|9LMi2cb8n!yEE2WyHj_w)=vA!yQKL$*EY6^AcD4bsFy-%ZJXBqQ!8$= z7uU*UOy5|J*|>t}#_(N1BEH#+GK3-w<~!dhMR9_z2qGdB#3z^g`{WK1$eVome)9bO zJ-=se4V}AK}ZeIb0_rtrxG+>_>zoA0f)zhxxwr$-crc^o*@7gWjBg!irpv#`Iqd% zvB0RWl?K1GB9{?%nU$DN%2)(fxc$A&FXzSfuN?vI6|ez-ztPd}UI44VdMPhvIR3%!Yjr}*AVh4n$?kF|;CMW4Jw>CzXtOiEvNM#f5hFWU z9@6rr*8e5YC@NSSEH$g^BZrL4?SykGm=`!ml`u8*$QblELshuy|HLpAgy!UWL5)>qF5uVcg`4^ zv|06;z53yd(W_Dr(hi$_ENz0cTNCLMT2|ZlI1ZQl-DDjuFk2D>u``p#nX)v{tg-xR z#(Anr_0h)M{WjUHcTazyq!~F_pET;x?}xOmDN~~$?WRTZLE2kWle|FFI!o>3*W*SE zgQV(fsEMiTgHzJeNAz<_gsPeKSeZ6_5)NtAGp6Q&wA@UZ((2KRDGL+Zl+~G}@_e{= zdvQzp=^=z&VdvR)W`lXaoMW2lSM;CsP$9S}L(8c+fLX@ExQGNH>O32Xq-eiII%Dd2 z)LMWQ$ypE)#~qPK3i^(a)h!wBik1-CmbD?=Hid1IWw( delta 928 zcmZ|N&1=(O90%~HP4eWWO`b*Vwybuot`niowM|{g1YdBrFa=$jgANgNxZ!1Bx2{`j zZ9Poed2sbPcpZ2ZQF`A&JWue@%d{2+{R6z{LGVes$R5E!;LC^a6Mj#gr?%y-bv>Iw zbshk~lh=Ki<_TS!2Pan=GWrQ1Yy)Kuy;oH6g}ejXEw%3^l-8#qKM;#~HZHY3z;$oy zj#!%TL|fgnk;qkA@>-b?cjd0UA*cKu{}b_%KkfVKd+IwaeV3kz z3E`vgSV;1pmHpzT`^Uz?BrO9Aa6xE=tYq}=jdNCWCi4ya8 zyIX!~uOOiUD!dq@lA3^IAg zWY?ZoE{-ToFt@Mw_c-G5M8f^SJJn=}^c4420+2gMe|>f><24W98`VMlc5TvYs!kj( zk=W 2: + self.process_table.removeRow(2) return logging.info(f"已加载未完成的检验数据,共 {len(unfinished_data)} 条记录") - + # 获取启用的检验配置 enabled_configs = self.inspection_manager.get_enabled_configs()