From 42254b6d2eded3873879b164e8125c4b793898e8 Mon Sep 17 00:00:00 2001 From: lvzb <35200379@qq.com> Date: Mon, 13 May 2024 10:35:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=8D=E7=BD=AE=E7=A0=81=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PositionCode/DTOs/PositionCodeDTO.cs | 2 +- .../Inputs/PositionCodeEditInput.cs | 2 +- .../Inputs/PositionCodeImportInput.cs | 6 ++-- .../PositionCodes/PositionCodeAppService.cs | 28 ++------------- .../PositionCodes/PositionCode.cs | 2 +- .../Enums/Store/EnumPositionCodeType.cs | 36 +++++++++++++++++++ 6 files changed, 46 insertions(+), 30 deletions(-) create mode 100644 be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumPositionCodeType.cs diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/DTOs/PositionCodeDTO.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/DTOs/PositionCodeDTO.cs index be37df2bf..b6e33ad2d 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/DTOs/PositionCodeDTO.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/DTOs/PositionCodeDTO.cs @@ -59,5 +59,5 @@ public class PositionCodeDTO : SfsBaseDataDTOBase, IHasCode /// 类型 /// [Display(Name = "类型")] - public EnumRecommendType Type { get; set; } + public EnumPositionCodeType Type { get; set; } } diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeEditInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeEditInput.cs index 303ad35db..83cac8b1f 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeEditInput.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeEditInput.cs @@ -51,7 +51,7 @@ public class PositionCodeEditInput : SfsBaseDataCreateOrUpdateInputBase /// [Display(Name = "类型")] [Required(ErrorMessage = "{0}是必填项")] - public EnumRecommendType Type { get; set; } + public EnumPositionCodeType Type { get; set; } #endregion diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeImportInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeImportInput.cs index 22d29a09e..121cdb5b7 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeImportInput.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeImportInput.cs @@ -1,4 +1,5 @@ using System.ComponentModel.DataAnnotations; +using Volo.Abp.Validation; using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain.Shared; @@ -56,13 +57,14 @@ public class PositionCodeImportInput : SfsBaseDataImportInputBase /// /// 箱数/数量 /// - [Display(Name = "箱数/数量")] + [Display(Name = "箱数/数量")] + [Required(ErrorMessage = "{0}是必填项")] public decimal StdPackQty { get; set; } /// /// 类型 /// [Display(Name = "类型")] [Required(ErrorMessage = "{0}是必填项")] - public EnumRecommendType Type { get; set; } + public EnumPositionCodeType Type { get; set; } } diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PositionCodes/PositionCodeAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PositionCodes/PositionCodeAppService.cs index a60a80354..f0c117d1f 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PositionCodes/PositionCodeAppService.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PositionCodes/PositionCodeAppService.cs @@ -67,28 +67,14 @@ public class PositionCodeAppService var itemBasic = await ItemBasicAppService.GetByCodeAsync(input.PartCode).ConfigureAwait(false); Check.NotNull(itemBasic, "物品代码", $"物品 {input.PartCode} 不存在"); - //如果类型选择为原料,校验物料号类型必须为原料,器具、KItting 的不用加校验 - if (input.Type == EnumRecommendType.RAW && itemBasic.CanBuy != true) - { - throw new UserFriendlyException($"{input.PartCode} 物料号类型必须为采购件"); - } input.PartName = itemBasic.Name; input.PartDesc = itemBasic.Desc1; var location = await LocationAppService.GetByCodeAsync(input.LocationCode).ConfigureAwait(false); Check.NotNull(location, "库位代码", $"库位 {input.LocationCode} 不存在"); - //如果类型选择为原料,库位的类型必须为原料库位 - if (input.Type == EnumRecommendType.RAW && location.Type != EnumLocationType.RAW) - { - throw new UserFriendlyException($"{input.LocationCode} 库位的类型必须为原料库位"); - } - input.LocationName = location.Name; - if(input.Type== EnumRecommendType.None) - { - throw new UserFriendlyException($"{input.Type} 位置码类型不正确"); - } + input.LocationName = location.Name; return await base.CreateAsync(input).ConfigureAwait(false); } @@ -118,22 +104,14 @@ public class PositionCodeAppService var itemBasic = await ItemBasicAppService.GetByCodeAsync(input.PartCode).ConfigureAwait(false); Check.NotNull(itemBasic, "物品代码", $"物品 {input.PartCode} 不存在"); - //如果类型选择为原料,校验物料号类型必须为原料,器具、KItting 的不用加校验 - if (input.Type == EnumRecommendType.RAW && itemBasic.Type != "10C02") - { - throw new UserFriendlyException($"{input.PartCode} 物料号类型必须为原料"); - } + entity.PartName = itemBasic.Name; entity.PartDesc = itemBasic.Desc1; var location = await LocationAppService.GetByCodeAsync(input.LocationCode).ConfigureAwait(false); Check.NotNull(location, "库位代码", $"库位 {input.LocationCode} 不存在"); - //如果类型选择为原料,库位的类型必须为原料库位 - if (input.Type == EnumRecommendType.RAW && location.Type!= EnumLocationType.RAW) - { - throw new UserFriendlyException($"{input.LocationCode} 库位的类型必须为原料库位"); - } + entity.LocationName = location.Name; await _repository.UpdateAsync(entity).ConfigureAwait(false); diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCodes/PositionCode.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCodes/PositionCode.cs index be22d6fa4..9a0651fea 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCodes/PositionCode.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCodes/PositionCode.cs @@ -54,6 +54,6 @@ public class PositionCode : SfsBaseDataAggregateRootBase, IHasCode /// 类型 /// [Display(Name = "类型")] - public EnumRecommendType Type { get; set; } + public EnumPositionCodeType Type { get; set; } } diff --git a/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumPositionCodeType.cs b/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumPositionCodeType.cs new file mode 100644 index 000000000..6e4110404 --- /dev/null +++ b/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumPositionCodeType.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Xml.Linq; + +namespace Win_in.Sfs.Shared.Domain.Shared; +/// +/// 位置码类型 +/// +public enum EnumPositionCodeType +{ + /// + /// 注塑区 + /// + [Display(Name = "注塑区")] + InjectionIssue = 1, + + /// + /// 喷涂区 + /// + [Display(Name = "喷涂区")] + CoatingIssue = 2, + /// + /// 装配区 + /// + [Display(Name = "装配区")] + AssembleIssue = 3, + /// + /// kitting区 + /// + [Display(Name = "Kitting区")] + KITTING = 4 +}