From 2b1ba51308ad6f1e7b48aa42178818436a5c6036 Mon Sep 17 00:00:00 2001 From: "boxu.zheng" Date: Wed, 29 May 2024 09:45:41 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=BC=E5=85=A5=20?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Inputs/AssembleIssueRequestImportInput.cs | 38 ++++++------------- .../Inputs/CoatingIssueRequestImportInput.cs | 36 +++++------------- .../InjectionIssueRequestImportInput.cs | 38 ++++++------------- .../Inputs/KittingIssueRequestImportInput.cs | 7 +--- .../SparePartIssueRequestImportInput.cs | 38 ++++++------------- .../PurchaseReceiptRequestAppService.cs | 18 +++++++-- 6 files changed, 58 insertions(+), 117 deletions(-) diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/Inputs/AssembleIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/Inputs/AssembleIssueRequestImportInput.cs index 27fb71914..50abcc97c 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/Inputs/AssembleIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/Inputs/AssembleIssueRequestImportInput.cs @@ -1,50 +1,34 @@ using System.ComponentModel.DataAnnotations; using Win_in.Sfs.Shared.Application.Contracts; +using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared.Enums.Store; namespace Win_in.Sfs.Wms.Store.Application.Contracts; -[Display(Name = "叫料申请导入")] +[Display(Name = "装配叫料申请导入")] public class AssembleIssueRequestImportInput : SfsStoreImportInputBase { - /// - /// 叫料类型 - /// - [Display(Name = "叫料类型")] - public EnumIssueRequestType IssueRequestType { get; set; } - - /// - /// 物品代码 - /// - [Display(Name = "物品代码")] - [Required] - public string ItemCode { get; set; } + #region 目标库位信息 /// /// 目标库位 /// [Display(Name = "目标库位")] - [Required] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] public string ToLocationCode { get; set; } /// - /// 来源库区 + /// 需求数量 /// - [Display(Name = "调出库区")] - [Required] - public string FromLocationArea { get; set; } - - /// - /// 数量 - /// - [Display(Name = "数量")] - [Required(ErrorMessage = "{0}是必填项")] + [Display(Name = "需求数量")] public decimal Qty { get; set; } /// - /// 备注 + /// 物品代码 /// - [Display(Name = "备注")] - public string Remark { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } + + #endregion } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/Inputs/CoatingIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/Inputs/CoatingIssueRequestImportInput.cs index e96fc3f72..70281dc16 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/Inputs/CoatingIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/Inputs/CoatingIssueRequestImportInput.cs @@ -1,5 +1,6 @@ using System.ComponentModel.DataAnnotations; using Win_in.Sfs.Shared.Application.Contracts; +using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared.Enums.Store; @@ -8,43 +9,26 @@ namespace Win_in.Sfs.Wms.Store.Application.Contracts; [Display(Name = "喷涂叫料申请导入")] public class CoatingIssueRequestImportInput : SfsStoreImportInputBase { - /// - /// 叫料类型 - /// - [Display(Name = "叫料类型")] - public EnumIssueRequestType IssueRequestType { get; set; } - - /// - /// 物品代码 - /// - [Display(Name = "物品代码")] - [Required] - public string ItemCode { get; set; } + #region 目标库位信息 /// /// 目标库位 /// [Display(Name = "目标库位")] - [Required] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] public string ToLocationCode { get; set; } /// - /// 来源库区 + /// 需求数量 /// - [Display(Name = "调出库区")] - [Required] - public string FromLocationArea { get; set; } - - /// - /// 数量 - /// - [Display(Name = "数量")] - [Required(ErrorMessage = "{0}是必填项")] + [Display(Name = "需求数量")] public decimal Qty { get; set; } /// - /// 备注 + /// 物品代码 /// - [Display(Name = "备注")] - public string Remark { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } + + #endregion } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/Inputs/InjectionIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/Inputs/InjectionIssueRequestImportInput.cs index f1258f55d..70f4e3d0b 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/Inputs/InjectionIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/Inputs/InjectionIssueRequestImportInput.cs @@ -1,50 +1,34 @@ using System.ComponentModel.DataAnnotations; using Win_in.Sfs.Shared.Application.Contracts; +using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared.Enums.Store; namespace Win_in.Sfs.Wms.Store.Application.Contracts; -[Display(Name = "叫料申请")] +[Display(Name = "注塑叫料申请导入")] public class InjectionIssueRequestImportInput : SfsStoreImportInputBase { - /// - /// 叫料类型 - /// - [Display(Name = "叫料类型")] - public EnumIssueRequestType IssueRequestType { get; set; } - - /// - /// 物品代码 - /// - [Display(Name = "物品代码")] - [Required] - public string ItemCode { get; set; } + #region 目标库位信息 /// /// 目标库位 /// [Display(Name = "目标库位")] - [Required] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] public string ToLocationCode { get; set; } /// - /// 来源库区 + /// 需求数量 /// - [Display(Name = "调出库区")] - [Required] - public string FromLocationArea { get; set; } - - /// - /// 数量 - /// - [Display(Name = "数量")] - [Required(ErrorMessage = "{0}是必填项")] + [Display(Name = "需求数量")] public decimal Qty { get; set; } /// - /// 备注 + /// 物品代码 /// - [Display(Name = "备注")] - public string Remark { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } + + #endregion } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/Inputs/KittingIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/Inputs/KittingIssueRequestImportInput.cs index 18d0f0447..38cfc2917 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/Inputs/KittingIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/Inputs/KittingIssueRequestImportInput.cs @@ -7,14 +7,9 @@ using Win_in.Sfs.Shared.Domain.Shared.Enums.Store; namespace Win_in.Sfs.Wms.Store.Application.Contracts; -[Display(Name = "Kitting叫料申请")] +[Display(Name = "Kitting叫料申请导入")] public class KittingIssueRequestImportInput : SfsStoreImportInputBase { - [Display(Name = "序号")] - [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] - [Key] - public string Number { get; set; } - #region 目标库位信息 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/Inputs/SparePartIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/Inputs/SparePartIssueRequestImportInput.cs index 032cd4ac7..e7c0003e9 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/Inputs/SparePartIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/Inputs/SparePartIssueRequestImportInput.cs @@ -1,50 +1,34 @@ using System.ComponentModel.DataAnnotations; using Win_in.Sfs.Shared.Application.Contracts; +using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared.Enums.Store; namespace Win_in.Sfs.Wms.Store.Application.Contracts; -[Display(Name = "叫料申请")] +[Display(Name = "备料叫料申请导入")] public class SparePartIssueRequestImportInput : SfsStoreImportInputBase { - /// - /// 叫料类型 - /// - [Display(Name = "叫料类型")] - public EnumIssueRequestType IssueRequestType { get; set; } - - /// - /// 物品代码 - /// - [Display(Name = "物品代码")] - [Required] - public string ItemCode { get; set; } + #region 目标库位信息 /// /// 目标库位 /// [Display(Name = "目标库位")] - [Required] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] public string ToLocationCode { get; set; } /// - /// 来源库区 + /// 需求数量 /// - [Display(Name = "调出库区")] - [Required] - public string FromLocationArea { get; set; } - - /// - /// 数量 - /// - [Display(Name = "数量")] - [Required(ErrorMessage = "{0}是必填项")] + [Display(Name = "需求数量")] public decimal Qty { get; set; } /// - /// 备注 + /// 物品代码 /// - [Display(Name = "备注")] - public string Remark { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } + + #endregion } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs index f146614c1..6cc8f4055 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs @@ -5,6 +5,7 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Volo.Abp; +using Volo.Abp.Domain.Entities; using Volo.Abp.ObjectMapping; using Volo.Abp.Uow; using Win_in.Sfs.Basedata.Application.Contracts; @@ -69,13 +70,22 @@ public class PurchaseReceiptRequestAppService : public virtual async Task GetDetailByItemAndPackingAsync(string itemCode, string packingCode) { - var entity = (await _repository.GetListAsync(p => p.Details.Any(y => y.ItemCode == itemCode && y.PackingCode == packingCode), true).ConfigureAwait(false)).FirstOrDefault(); + var entitysList = (await _repository.GetListAsync(p => p.Details.Any(y => y.ItemCode == itemCode && y.PackingCode == packingCode), true).ConfigureAwait(false)) - var detail = entity.Details.FirstOrDefault(y => y.ItemCode == itemCode && y.PackingCode == packingCode); + if (entitysList != null && entitysList.Any()) + { + var entity = entitysList.FirstOrDefault(); - var dto = ObjectMapper.Map(detail); + var detail = entity.Details.FirstOrDefault(y => y.ItemCode == itemCode && y.PackingCode == packingCode); - return dto; + var dto = ObjectMapper.Map(detail); + + return dto; + } + else + { + throw new UserFriendlyException("未在到货通知中找到该箱码信息"); + } } #endregion From 9f87aeb0bd587a2e9986c0604e93298e42c85786 Mon Sep 17 00:00:00 2001 From: "boxu.zheng" Date: Wed, 29 May 2024 10:20:29 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Inputs/AssembleIssueRequestImportInput.cs | 14 +++++++------- .../Inputs/CoatingIssueRequestImportInput.cs | 14 +++++++------- .../Inputs/InjectionIssueRequestImportInput.cs | 14 +++++++------- .../Inputs/KittingIssueRequestImportInput.cs | 18 +++++++----------- .../Inputs/SparePartIssueRequestImportInput.cs | 18 +++++++----------- 5 files changed, 35 insertions(+), 43 deletions(-) diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/Inputs/AssembleIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/Inputs/AssembleIssueRequestImportInput.cs index 50abcc97c..ae16fb995 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/Inputs/AssembleIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/Inputs/AssembleIssueRequestImportInput.cs @@ -12,11 +12,10 @@ public class AssembleIssueRequestImportInput : SfsStoreImportInputBase #region 目标库位信息 /// - /// 目标库位 + /// 物品代码 /// - [Display(Name = "目标库位")] - [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] - public string ToLocationCode { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } /// /// 需求数量 @@ -25,10 +24,11 @@ public class AssembleIssueRequestImportInput : SfsStoreImportInputBase public decimal Qty { get; set; } /// - /// 物品代码 + /// 目标库位 /// - [Display(Name = "物品代码")] - public string ItemCode { get; set; } + [Display(Name = "目标库位")] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] + public string ToLocationCode { get; set; } #endregion } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/Inputs/CoatingIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/Inputs/CoatingIssueRequestImportInput.cs index 70281dc16..bd527e15c 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/Inputs/CoatingIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/Inputs/CoatingIssueRequestImportInput.cs @@ -12,11 +12,10 @@ public class CoatingIssueRequestImportInput : SfsStoreImportInputBase #region 目标库位信息 /// - /// 目标库位 + /// 物品代码 /// - [Display(Name = "目标库位")] - [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] - public string ToLocationCode { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } /// /// 需求数量 @@ -25,10 +24,11 @@ public class CoatingIssueRequestImportInput : SfsStoreImportInputBase public decimal Qty { get; set; } /// - /// 物品代码 + /// 目标库位 /// - [Display(Name = "物品代码")] - public string ItemCode { get; set; } + [Display(Name = "目标库位")] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] + public string ToLocationCode { get; set; } #endregion } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/Inputs/InjectionIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/Inputs/InjectionIssueRequestImportInput.cs index 70f4e3d0b..4a205e217 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/Inputs/InjectionIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/Inputs/InjectionIssueRequestImportInput.cs @@ -12,11 +12,10 @@ public class InjectionIssueRequestImportInput : SfsStoreImportInputBase #region 目标库位信息 /// - /// 目标库位 + /// 物品代码 /// - [Display(Name = "目标库位")] - [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] - public string ToLocationCode { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } /// /// 需求数量 @@ -25,10 +24,11 @@ public class InjectionIssueRequestImportInput : SfsStoreImportInputBase public decimal Qty { get; set; } /// - /// 物品代码 + /// 目标库位 /// - [Display(Name = "物品代码")] - public string ItemCode { get; set; } + [Display(Name = "目标库位")] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] + public string ToLocationCode { get; set; } #endregion } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/Inputs/KittingIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/Inputs/KittingIssueRequestImportInput.cs index 38cfc2917..fac195b93 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/Inputs/KittingIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/Inputs/KittingIssueRequestImportInput.cs @@ -10,14 +10,11 @@ namespace Win_in.Sfs.Wms.Store.Application.Contracts; [Display(Name = "Kitting叫料申请导入")] public class KittingIssueRequestImportInput : SfsStoreImportInputBase { - #region 目标库位信息 - /// - /// 目标库位 + /// 物品代码 /// - [Display(Name = "目标库位")] - [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] - public string ToLocationCode { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } /// /// 需求数量 @@ -26,10 +23,9 @@ public class KittingIssueRequestImportInput : SfsStoreImportInputBase public decimal Qty { get; set; } /// - /// 物品代码 + /// 目标库位 /// - [Display(Name = "物品代码")] - public string ItemCode { get; set; } - - #endregion + [Display(Name = "目标库位")] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] + public string ToLocationCode { get; set; } } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/Inputs/SparePartIssueRequestImportInput.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/Inputs/SparePartIssueRequestImportInput.cs index e7c0003e9..cc98760a6 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/Inputs/SparePartIssueRequestImportInput.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/Inputs/SparePartIssueRequestImportInput.cs @@ -9,14 +9,11 @@ namespace Win_in.Sfs.Wms.Store.Application.Contracts; [Display(Name = "备料叫料申请导入")] public class SparePartIssueRequestImportInput : SfsStoreImportInputBase { - #region 目标库位信息 - /// - /// 目标库位 + /// 物品代码 /// - [Display(Name = "目标库位")] - [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] - public string ToLocationCode { get; set; } + [Display(Name = "物品代码")] + public string ItemCode { get; set; } /// /// 需求数量 @@ -25,10 +22,9 @@ public class SparePartIssueRequestImportInput : SfsStoreImportInputBase public decimal Qty { get; set; } /// - /// 物品代码 + /// 目标库位 /// - [Display(Name = "物品代码")] - public string ItemCode { get; set; } - - #endregion + [Display(Name = "目标库位")] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] + public string ToLocationCode { get; set; } } From ddebdaa047788118541762f600261b2b285e339f Mon Sep 17 00:00:00 2001 From: liuyunfeng Date: Wed, 29 May 2024 10:45:15 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E6=96=B0=E5=8A=9F=E8=83=BD=EF=BC=9A?= =?UTF-8?q?=E6=A0=B9=E6=8D=AEto=E7=AE=B1=E7=A0=81=E5=8F=96=E6=89=80?= =?UTF-8?q?=E6=9C=89=E5=85=B7=E6=9C=89=E7=9B=B8=E5=90=8C=E7=AE=B1=E7=A0=81?= =?UTF-8?q?=E7=9A=84=E6=8B=86=E7=AE=B1=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BaseDatas/SplitPackingRecController.cs | 12 +++++++++ .../ISplitPackingRecAppService.cs | 7 +++++ .../SplitPackingRecAppService.cs | 26 +++++++++++++++++++ 3 files changed, 45 insertions(+) diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/BaseDatas/SplitPackingRecController.cs b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/BaseDatas/SplitPackingRecController.cs index d02f1f80f..ac4e65b16 100644 --- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/BaseDatas/SplitPackingRecController.cs +++ b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/BaseDatas/SplitPackingRecController.cs @@ -51,4 +51,16 @@ public class SplitPackingRecController : AbpController { return await _splitPackingRecApp.GetSplitPackingCode(toPackingCode).ConfigureAwait(false); } + + /// + /// 根据to箱码取所有具有相同箱码的拆箱记录 + /// + /// + /// + [HttpGet("get-same-ponumber-list-by-topackingcode")] + public async Task> GetSamePoNumberListByToPackingCode(string toPackingCode) + { + return await _splitPackingRecApp.GetSamePoNumberListByToPackingCode(toPackingCode).ConfigureAwait(false); + } + } diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/ISplitPackingRecAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/ISplitPackingRecAppService.cs index 2fe7efc27..6a283da3b 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/ISplitPackingRecAppService.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/SplitPackings/ISplitPackingRecAppService.cs @@ -29,4 +29,11 @@ public interface ISplitPackingRecAppService Task GetTopPackingCode(string toPackingCode); Task GetSplitPackingCode(string toPackingCode); Task> GetFirstOrDefaultPackingCode(List toPackingCodeList); + + /// + /// 根据to箱码取所有具有相同箱码的拆箱记录 + /// + /// + /// + Task> GetSamePoNumberListByToPackingCode(string toPackingCode); } diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SplitPackings/SplitPackingRecAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SplitPackings/SplitPackingRecAppService.cs index d6545a3e2..a9eb98bd0 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SplitPackings/SplitPackingRecAppService.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SplitPackings/SplitPackingRecAppService.cs @@ -6,6 +6,8 @@ using Volo.Abp.Caching; using Win_in.Sfs.Basedata.Application.Contracts; using Win_in.Sfs.Basedata.Domain; using Win_in.Sfs.Basedata.Domain.Shared; +using System.Linq; +using Volo.Abp; namespace Win_in.Sfs.Basedata.Application; @@ -101,5 +103,29 @@ public class SplitPackingRecAppService : return ret; } + /// + /// 根据to箱码取所有具有相同箱码的拆箱记录 + /// + /// + /// + [HttpGet("get-same-ponumber-list-by-topackingcode")] + public async Task> GetSamePoNumberListByToPackingCode(string toPackingCode) + { + List ret = new List(); + var entity = await _splitPackingRecManager.GetTopPackingCode(toPackingCode).ConfigureAwait(false); + if (entity == null) + { + return ret; + } + if (entity.PurchaseInfo_PoNumber.IsNullOrEmpty2()) + { + throw new UserFriendlyException($"PurchaseInfo_PoNumber不能为空,to箱码:{toPackingCode}"); + } + var lst = await Repository.GetListAsync(itm => itm.PurchaseInfo_PoNumber == entity.PurchaseInfo_PoNumber).ConfigureAwait(false); + + ret = ObjectMapper.Map, List>(lst); + return ret; + } + } From 78a142c84d81e5d85583c15b3e4063ece0f6f639 Mon Sep 17 00:00:00 2001 From: "boxu.zheng" Date: Wed, 29 May 2024 11:09:17 +0800 Subject: [PATCH 4/8] 1 --- .../PurchaseReceiptRequestAppService.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs index 6cc8f4055..8c30e86b4 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs @@ -70,7 +70,9 @@ public class PurchaseReceiptRequestAppService : public virtual async Task GetDetailByItemAndPackingAsync(string itemCode, string packingCode) { - var entitysList = (await _repository.GetListAsync(p => p.Details.Any(y => y.ItemCode == itemCode && y.PackingCode == packingCode), true).ConfigureAwait(false)) + var entitysList = (await _repository + .GetListAsync(p => p.Details.Any(y => y.ItemCode == itemCode && y.PackingCode == packingCode), true) + .ConfigureAwait(false)); if (entitysList != null && entitysList.Any()) { From bb38a509ffca05ee4ee79b2ccc73b1d9afb6468d Mon Sep 17 00:00:00 2001 From: liuyunfeng Date: Wed, 29 May 2024 13:05:29 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E5=90=8C=E4=B8=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PurchaseReceiptRequestAppService.cs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs index 8c30e86b4..9a9df2444 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs @@ -70,9 +70,7 @@ public class PurchaseReceiptRequestAppService : public virtual async Task GetDetailByItemAndPackingAsync(string itemCode, string packingCode) { - var entitysList = (await _repository - .GetListAsync(p => p.Details.Any(y => y.ItemCode == itemCode && y.PackingCode == packingCode), true) - .ConfigureAwait(false)); + var entitysList = (await _repository.GetListAsync(p => p.Details.Any(y => y.ItemCode == itemCode && y.PackingCode == packingCode), true).ConfigureAwait(false)); if (entitysList != null && entitysList.Any()) { From 0a39d710fe902387fa8ef807520b6a73232d0e3a Mon Sep 17 00:00:00 2001 From: zhaoxinyu <89237069@qq.com> Date: Wed, 29 May 2024 15:13:39 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Incoming/InjectionMoldingRequestReader.cs | 44 ++++++++++++++----- 1 file changed, 32 insertions(+), 12 deletions(-) diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs index c45c85c27..21554f22b 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs @@ -67,55 +67,68 @@ public class InjectionMoldingRequestReader : IReader #if DEBUG _options.Value.AutoRemote.TimeCycle = 1; _options.Value.AutoRemote.Interval = 2; - #endif // var sleepTime = (_options.Value.AutoRemote.TimeCycle*60/ _options.Value.AutoRemote.Interval)-10; var invterval = _options.Value.AutoRemote.Interval; - var guid = DateTime.Now.ToString("yyyyMMddHHmmssfff"); - - - Stopwatch sw = Stopwatch.StartNew(); - Client client = new Client(_options.Value.AutoRemote.IpAddress, _httpClientFactory.CreateClient());//调用客户记录 - var flag = await client.GetMacStaticAsync().ConfigureAwait(false); + + if (flag != 1) { // 记录错误日志并返回空列表 _logger.LogInformation($"读取到摄像头信息为不可用{DateTime.Now},请检查摄像头"); + return new List(); } if (string.IsNullOrEmpty(_options.Value.AutoRemote.AreaIDs)) { _logger.LogInformation($"没有设置指定区域AutoRemote->AreaIDs"); + + return new List(); } var ids = _options.Value.AutoRemote.AreaIDs.Split(","); List camralist = new List(); + for (int i = 1; i <= invterval; i++) { foreach (var itm in ids)//遍历区域查找所有货物 { var idsList = await client.GetCargoStaticAsync(itm).ConfigureAwait(false); + //flag 1-有货 0-空闲 camralist.AddRange(idsList.Where(r => r.Flag == 0)); } + _logger.LogInformation($"读取标识{guid}读取成功次数{i},耗时 {sw.ElapsedMilliseconds}毫秒"); } + _logger.LogInformation($"标识{guid}读取全部空闲内容:{System.Text.Json.JsonSerializer.Serialize(camralist)}"); + + + + sw.Stop(); Thread.Sleep(1000); //按区域、货位号、零件、标志 var group= camralist.GroupBy(r => new { r.AreaID, r.CargoID, r.PartCode, r.Flag }); //获取和次数相等的空闲数据 var list = group.Where(r => r.Count() == invterval).ToList(); + + var errorlist= group.Where(r => r.Count() != invterval).ToList(); + + if (errorlist.Count > 0) + { + _logger.LogInformation($"标识{guid}不能在规定次数内完成读取的{System.Text.Json.JsonSerializer.Serialize(errorlist.Select(r => r.Key).ToList())}"); + } + //如果有货位空闲 if (list.Count>0) { - - sw = Stopwatch.StartNew(); + sw = Stopwatch.StartNew(); _logger.LogInformation($"开始标识{guid}同步WMS开始"); List inputdetail = new List(); foreach (var item in list.Select(r=>r.Key).ToList()) @@ -137,11 +150,18 @@ public class InjectionMoldingRequestReader : IReader select itm; var injectionList = query.ToList();//已经完成的记录 + _logger.LogInformation($"标识{guid}同步WMS未完成记录:{System.Text.Json.JsonSerializer.Serialize(injectionList)}"); + + + + + + + foreach (var inject in injectionList) { List cameraList = new List(); - InjectionIssueRequestEditInput input = new InjectionIssueRequestEditInput(); input.Worker = "Vision"; input.IssueRequestType = EnumIssueRequestType.Vision; @@ -249,7 +269,7 @@ public class InjectionMoldingRequestReader : IReader { // 获取对应零件信息 var itm = await _itemService.GetByCodeAsync(request.ItemCode).ConfigureAwait(false); - if (itm == null) { errors.Add($"编号:{request.ItemCode}零件表中没找到!"); } + if (itm == null) { errors.Add($"编号:{request.ItemCode}零件表中没找到,请维护零件表!"); } else { // 更新请求中的零件描述和名称 @@ -260,7 +280,7 @@ public class InjectionMoldingRequestReader : IReader } // 获取对应库位信息 var loc = await _locService.GetByCodeAsync(request.ToLocationCode).ConfigureAwait(false); - if (loc == null) { errors.Add($"编号:{request.ToLocationCode}库位表中没找到!"); } + if (loc == null) { errors.Add($"编号:{request.ToLocationCode}库位表中没找到,请维护库位表!"); } else { From babc2194169f30d8a6aa061c496502567047e3c7 Mon Sep 17 00:00:00 2001 From: zhaoxinyu <89237069@qq.com> Date: Thu, 30 May 2024 15:06:31 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Client/WebApi.cs | 38 +++++++ .../Incoming/InjectionMoldingRequestReader.cs | 104 ++++++++++++++++-- ...ge.Fawtyg.InjectionMoldingTaskAgent.csproj | 1 + 3 files changed, 134 insertions(+), 9 deletions(-) diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Client/WebApi.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Client/WebApi.cs index 028ad78ac..5b264c20c 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Client/WebApi.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Client/WebApi.cs @@ -535,6 +535,44 @@ namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.Incoming } + [System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] + public partial class ResponCargoItem1 + { + + /// + /// 读取次数 + /// + [Newtonsoft.Json.JsonProperty("number", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)] + public string Number { get; set; } + + /// + /// 区域ID + /// + [Newtonsoft.Json.JsonProperty("areaID", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)] + public string AreaID { get; set; } + + /// + /// 货位号 + /// + [Newtonsoft.Json.JsonProperty("cargoID", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)] + public string CargoID { get; set; } + + /// + /// 零件号 + /// + [Newtonsoft.Json.JsonProperty("partCode", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)] + public string PartCode { get; set; } + + /// + /// 货位状态 + /// + [Newtonsoft.Json.JsonProperty("flag", Required = Newtonsoft.Json.Required.DisallowNull, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)] + public int Flag { get; set; } + + } + + + [System.CodeDom.Compiler.GeneratedCode("NSwag", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs index 21554f22b..47335b81c 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs @@ -23,6 +23,9 @@ using System.Net.NetworkInformation; using Win_in.Sfs.Shared.Domain.Shared.Enums.Store; using System.Threading; using System.Diagnostics; +using System.Reflection; +using Microsoft.Extensions.Primitives; +using Win_in.Sfs.Shared.Application; namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.Incoming; public class InjectionMoldingRequestReader : IReader @@ -92,26 +95,46 @@ public class InjectionMoldingRequestReader : IReader } var ids = _options.Value.AutoRemote.AreaIDs.Split(","); List camralist = new List(); - + List camralist1 = new List(); for (int i = 1; i <= invterval; i++) { foreach (var itm in ids)//遍历区域查找所有货物 { var idsList = await client.GetCargoStaticAsync(itm).ConfigureAwait(false); + + Thread.Sleep(1000);//设备读取50ms延时,设置延时时间为1000ms保证读取更新到信息 //flag 1-有货 0-空闲 + foreach (var respon in idsList.Where(r => r.Flag == 0)) + { + var response = new ResponCargoItem1(); + response.FromObject(respon); + response.Number = $"第{i.ToString()}次读取"; + camralist1.Add(response); + } + camralist.AddRange(idsList.Where(r => r.Flag == 0)); } _logger.LogInformation($"读取标识{guid}读取成功次数{i},耗时 {sw.ElapsedMilliseconds}毫秒"); } - _logger.LogInformation($"标识{guid}读取全部空闲内容:{System.Text.Json.JsonSerializer.Serialize(camralist)}"); + _logger.LogInformation($"标识{guid}读取{invterval}次接口表:{System.Text.Json.JsonSerializer.Serialize(camralist1)}"); + + + _logger.LogInformation(MakeGrid($"标识{guid}读取{invterval}次接口表",camralist1)); + + + + + + + sw.Stop(); - Thread.Sleep(1000); + //按区域、货位号、零件、标志 var group= camralist.GroupBy(r => new { r.AreaID, r.CargoID, r.PartCode, r.Flag }); //获取和次数相等的空闲数据 @@ -121,7 +144,8 @@ public class InjectionMoldingRequestReader : IReader if (errorlist.Count > 0) { - _logger.LogInformation($"标识{guid}不能在规定次数内完成读取的{System.Text.Json.JsonSerializer.Serialize(errorlist.Select(r => r.Key).ToList())}"); + _logger.LogInformation($"标识{guid}不能同步内容JSON:{System.Text.Json.JsonSerializer.Serialize(errorlist.Select(r => r.Key).ToList())}"); + _logger.LogInformation(MakeGrid($"标识{guid}不能同步内容", errorlist)); } //如果有货位空闲 @@ -150,12 +174,9 @@ public class InjectionMoldingRequestReader : IReader select itm; var injectionList = query.ToList();//已经完成的记录 - _logger.LogInformation($"标识{guid}同步WMS未完成记录:{System.Text.Json.JsonSerializer.Serialize(injectionList)}"); - - + _logger.LogInformation($"标识{guid}同步WMS内容:{System.Text.Json.JsonSerializer.Serialize(injectionList)}"); - - + _logger.LogInformation(MakeGrid($"{guid}同步WMS内容", injectionList)); @@ -377,14 +398,79 @@ public class InjectionMoldingRequestReader : IReader public decimal Qty { get; set; } } + private string MakeGrid(string header,List p_list) where T : class + { + StringBuilder sb = new StringBuilder(); + sb.AppendLine(header); + int rows = p_list.Count; + var first = p_list.First(); + var properties = first.GetType().GetProperties(); + int columns = properties.Length; + var columNames = first.GetType().GetProperties().ToList().Select(p => p.Name).ToList(); + int cellWidth = 20; // 每个单元格的宽度 + List contents = new List(); + for (int i = 0; i < rows; i++) + { + var row = p_list[i]; + foreach (PropertyInfo property in properties) + { + // 使用反射获取属性值 + contents.Add(property.GetValue(row).ToString()); + } + } + + // 输出列头 + for (int j = 0; j < columns; j++) + { + sb.Append("|"); + sb.Append(FormatCell(columNames[j], cellWidth)); + } + sb.Append("|"); + sb.AppendLine(); + + // 输出列头分隔线 + for (int k = 0; k < columns * (cellWidth + 1) + 1; k++) + { + sb.Append("-"); + } + sb.AppendLine(); + + // 输出网格内容 + for (int i = 0; i < rows; i++) + { + for (int j = 0; j < columns; j++) + { + sb.Append("|"); + sb.Append(FormatCell(contents[i * columns + j], cellWidth)); + } + sb.Append("|"); + sb.AppendLine(); + } + return sb.ToString(); + + } + + + + + + + + + + + private string FormatCell(object value, int width) + { + return value.ToString().PadLeft(width); + } } diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.csproj b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.csproj index 58f34a399..8006c4dfa 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.csproj +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.csproj @@ -12,6 +12,7 @@ + From 50a3495db1ec31f10cbd00d332b283122915a114 Mon Sep 17 00:00:00 2001 From: zhouhongjun <565221961@qq.com> Date: Fri, 31 May 2024 13:26:30 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=94=9F=E4=BA=A7?= =?UTF-8?q?=E7=BA=BF=E5=BA=93=E4=BD=8D=E6=A0=A1=E9=AA=8C=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProductionLines/ProductionLineAppService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ProductionLines/ProductionLineAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ProductionLines/ProductionLineAppService.cs index 504aef6c8..b51e7924e 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ProductionLines/ProductionLineAppService.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ProductionLines/ProductionLineAppService.cs @@ -64,7 +64,7 @@ public class ProductionLineAppService var entity = await _repository.FirstOrDefaultAsync(p => p.LocationCode == locationCode).ConfigureAwait(false); if (entity == null) { - throw new UserFriendlyException($"【{locationCode}】库位不存在"); + throw new UserFriendlyException($"生产线表中【{locationCode}】库位不存在"); } return ObjectMapper.Map(entity);