From a06cf98732e84c8e1e8b336456fc95828e39adb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E6=AD=A3=E6=98=93?= Date: Sun, 31 Aug 2025 10:06:04 +0800 Subject: [PATCH] =?UTF-8?q?fix(qc):=20=E6=B7=BB=E5=8A=A0=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E9=94=81=E5=B9=B6=E4=BC=98=E5=8C=96=E6=A0=87=E7=AD=BE?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在QcBackEndService中添加事务锁(DbLockType.Wait)防止并发问题 优化标签查询逻辑,添加Take(1)限制查询结果数量 --- ZR.Service/mes/qc/backend/QcBackEndService.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ZR.Service/mes/qc/backend/QcBackEndService.cs b/ZR.Service/mes/qc/backend/QcBackEndService.cs index 5ff17a84..1bbcc0cc 100644 --- a/ZR.Service/mes/qc/backend/QcBackEndService.cs +++ b/ZR.Service/mes/qc/backend/QcBackEndService.cs @@ -701,9 +701,12 @@ namespace ZR.Service.Business int oldPackageLabelSort = 1; QcBackEndRecordLabelScan lastPackagelabelInfo = Context .Queryable() + // TODO 加锁 + .TranLock(DbLockType.Wait) .Where(it => it.WorkOrder == data.WorkOrder) .Where(it => it.LabelType == 1) .OrderByDescending(it => it.LabelSort) + .Take(1) .First(); if (lastPackagelabelInfo == null) { @@ -818,9 +821,12 @@ namespace ZR.Service.Business int oldInnerLabelSort = 0; QcBackEndRecordLabelScan labelScan = Context .Queryable() + // TODO 加锁 + .TranLock(DbLockType.Wait) .Where(it => it.WorkOrder == data.WorkOrder) .Where(it => it.LabelType == 2) .OrderByDescending(it => it.LabelSort) + .Take(1) .First(); if (labelScan != null) {