From d0d4eca7a83d031adf74cabb6a655662d33f33b5 Mon Sep 17 00:00:00 2001 From: 18923810322 <1666941798@qq.com> Date: Wed, 6 Aug 2025 17:29:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=BA=8F=E5=88=97=E5=8F=B7?= =?UTF-8?q?=E6=8B=A6=E6=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml | 7 +++++++ .../Infrastructure/ISerialNumbersRepositories.cs | 7 +++++++ .../Services/SerialNumberService.cs | 9 +++++++++ src/BarCode.Web.Domain/Values/ResultCodes.cs | 1 + .../SerialNumbersRepositories.cs | 13 +++++++++++++ 5 files changed, 37 insertions(+) diff --git a/src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml b/src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml index 14f3d64..e6a3b73 100644 --- a/src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml +++ b/src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml @@ -1332,6 +1332,13 @@ 根据套装码查询序列码 + + + 获取已经使用的序列号 + + + + 根据生成记录id查询序列码 diff --git a/src/BarCode.Web.Domain/Infrastructure/ISerialNumbersRepositories.cs b/src/BarCode.Web.Domain/Infrastructure/ISerialNumbersRepositories.cs index f73440d..3453ec3 100644 --- a/src/BarCode.Web.Domain/Infrastructure/ISerialNumbersRepositories.cs +++ b/src/BarCode.Web.Domain/Infrastructure/ISerialNumbersRepositories.cs @@ -42,6 +42,13 @@ namespace BarCode.Web.Domain.Infrastructure Task> GetEntityListBySuitNumber(string suitNumber); /// 根据套装码查询序列码 Task> GetEntityListByGRIds(List gRIds); + /// + /// 获取已经使用的序列号 + /// + /// + /// + Task> GetUseEntityListByGRIds(List gRIds); + /// 根据生成记录id查询序列码 Task> GetEntityListByGRId(int gRId); /// 根据箱号查询序列码 diff --git a/src/BarCode.Web.Domain/Services/SerialNumberService.cs b/src/BarCode.Web.Domain/Services/SerialNumberService.cs index 355d994..490e6e8 100644 --- a/src/BarCode.Web.Domain/Services/SerialNumberService.cs +++ b/src/BarCode.Web.Domain/Services/SerialNumberService.cs @@ -473,6 +473,15 @@ namespace BarCode.Web.Domain.Services /// public async Task TransferSn(TransferSNOneTwoTwoRequest dto) { + + //先判断是否有存在使用的序列号,如果有的话,就报错。 + List isUselist = await _serialNumbersRepositories.GetUseEntityListByGRIds(dto.ids); + if(isUselist.Count>0) + { + return Result.ReFailure(ResultCodes.IsUseError); + } + + //取出所有的生成记录 var generateRecords = await _sGenerateRecordRepositories.GetEntityList(dto.ids, "0"); for (int i = 0; i < generateRecords.Count; i++) diff --git a/src/BarCode.Web.Domain/Values/ResultCodes.cs b/src/BarCode.Web.Domain/Values/ResultCodes.cs index 7d8cf50..cfdb661 100644 --- a/src/BarCode.Web.Domain/Values/ResultCodes.cs +++ b/src/BarCode.Web.Domain/Values/ResultCodes.cs @@ -25,6 +25,7 @@ namespace BarCode.Web.Domain.Values public static ValueTuple NoOrgError = (40006, "组织信息不存在"); public static ValueTuple IsTwoError = (70001, "两件装产品,数量需填双数"); public static ValueTuple IsZeroError = (70002, "数量不能为0"); + public static ValueTuple IsUseError = (70003, "序列码存在已使用, 请选择未使用序列码的数据 !"); /// /// 没有菜单权限,无法登录 /// diff --git a/src/BarCode.Web.Repositories/SerialNumbersRepositories.cs b/src/BarCode.Web.Repositories/SerialNumbersRepositories.cs index 2a3f2fb..2abd18b 100644 --- a/src/BarCode.Web.Repositories/SerialNumbersRepositories.cs +++ b/src/BarCode.Web.Repositories/SerialNumbersRepositories.cs @@ -224,6 +224,19 @@ namespace BarCode.Web.Repositories .Where(f => gRIds.Contains(f.GenerateRecordId)) .ToListAsync(); } + + /// + /// 根据生成记录Id查询序列号 + /// + /// + /// + public async Task> GetUseEntityListByGRIds(List gRIds) + { + return await _context.SerialNumbers.AsNoTracking() + .Where(f => gRIds.Contains(f.GenerateRecordId) && f.IsUse==true) + .ToListAsync(); + } + /// /// 根据生成记录Id查询序列号 ///