From 6d30e1d63e6f5ff98b3c69653387784b21606dbc Mon Sep 17 00:00:00 2001 From: 18942506660 <18942506660@A18942506660> Date: Tue, 2 Jan 2024 16:03:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/WMS.Web.Domain/Services/BoxService.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/WMS.Web.Domain/Services/BoxService.cs b/src/WMS.Web.Domain/Services/BoxService.cs index a33f6804..88142cc0 100644 --- a/src/WMS.Web.Domain/Services/BoxService.cs +++ b/src/WMS.Web.Domain/Services/BoxService.cs @@ -64,7 +64,8 @@ namespace WMS.Web.Domain.Services list.Remove(box); } var boxs = _mapper.Map>(list); - + var sns = list.SelectMany(s => s.Details).SelectMany(s => s.SerialNumbers).Select(s => s.SerialNumber).ToList(); + var sEntityList = await _serialNumbersRepositories.GetEntityList(sns); IDbContextTransaction _transaction = _transactionRepositories.GetTransaction(); bool isRollback = false; bool isSuccess = true; @@ -83,6 +84,10 @@ namespace WMS.Web.Domain.Services var detail = ops_box.Details.FirstOrDefault(f => f.SerialNumbers.Select(s => s.SerialNumber).Contains(sn.SerialNumber)); if (detail == null) continue; + //存在就不处理 + var sn_s = sEntityList.FirstOrDefault(f => f.SerialNumber.Equals(sn.SerialNumber)); + if (sn_s != null) continue; + var opsSerial = list.FirstOrDefault(f => f.OpsBoxId == b.OpsBoxId).Details .SelectMany(s => s.SerialNumbers) .FirstOrDefault(s => s.SerialNumber.Equals(sn.SerialNumber));