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
+}