diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Kittings/Inputs/KittingImportInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Kittings/Inputs/KittingImportInput.cs index decc1584c..4130690bf 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Kittings/Inputs/KittingImportInput.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Kittings/Inputs/KittingImportInput.cs @@ -16,7 +16,6 @@ public class KittingImportInput : SfsBaseDataImportInputBase [Display(Name = "Kitting名称")] public string Name { get; set; } - /// /// Kitting编码 /// @@ -45,11 +44,6 @@ public class KittingImportInput : SfsBaseDataImportInputBase [Display(Name = "配置")] public string Configuration { get; set; } - - - - - /// /// 数量 /// diff --git a/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumIssueRequestType.cs b/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumIssueRequestType.cs index 2ca84955e..d9b2baaee 100644 --- a/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumIssueRequestType.cs +++ b/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumIssueRequestType.cs @@ -33,4 +33,10 @@ public enum EnumIssueRequestType /// [Display(Name = "位置码")] PositionCode =4, + + /// + /// EXCEL导入 + /// + [Display(Name = "EXCEL导入")] + ExcelImport=5, } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/ChassisOperationSequence/DTOs/ChassisOperationSequenceSearchDTO.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/ChassisOperationSequence/DTOs/ChassisOperationSequenceSearchDTO.cs index bdb5f04fd..028366dc0 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/ChassisOperationSequence/DTOs/ChassisOperationSequenceSearchDTO.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/ChassisOperationSequence/DTOs/ChassisOperationSequenceSearchDTO.cs @@ -9,7 +9,7 @@ using Win_in.Sfs.Basedata.Domain; namespace Win_in.Sfs.Wms.Store.Application.Contracts; public class ChassisOperationSequenceSearchDTO { - public List ChassisNumberList { get; set; } + public List ChassisNumberList { get; set; }=new List(); /// /// Kitting组包Bom的物品号 diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/IAssembleIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/IAssembleIssueRequestAppService.cs index 8ad90aad7..eb3bff3b4 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/IAssembleIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/AssembleIssueRequests/IAssembleIssueRequestAppService.cs @@ -12,4 +12,5 @@ public interface IAssembleIssueRequestAppService Task CreateAndHandleAsync(AssembleIssueRequestEditInput input); Task UpdateStatusCompletedAsync(string number); Task IsHasNewJobAsync(string requestNumber, List jobNumber); + Task CreateImportExcelAsync(List inputs); } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/ICoatingIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/ICoatingIssueRequestAppService.cs index 54bb032f1..986658ee7 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/ICoatingIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/CoatingIssueRequests/ICoatingIssueRequestAppService.cs @@ -13,4 +13,5 @@ public interface ICoatingIssueRequestAppService Task CreateAndHandleAsync(CoatingIssueRequestEditInput input); Task UpdateStatusCompletedAsync(string number); Task IsHasNewJobAsync(string requestNumber, List jobNumber); + Task CreateImportExcelAsync(List inputs); } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/IInjectionIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/IInjectionIssueRequestAppService.cs index 5f93fa667..967dead04 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/IInjectionIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/IInjectionIssueRequestAppService.cs @@ -14,4 +14,5 @@ public interface IInjectionIssueRequestAppService Task UpdateStatusCompletedAsync(string number); Task IsHasNewJobAsync(string requestNumber, List jobNumber); Task> GetUnCompletedRequestAsync(List p_list); + Task CreateImportExcelAsync(List inputs); } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/IKittingIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/IKittingIssueRequestAppService.cs index 10f501e57..bada4151d 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/IKittingIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/KittingIssueRequests/IKittingIssueRequestAppService.cs @@ -13,4 +13,5 @@ public interface IKittingIssueRequestAppService Task CreateAndHandleAsync(KittingIssueRequestEditInput input); Task UpdateStatusCompletedAsync(string number); Task IsHasNewJobAsync(string requestNumber,List jobNumber); + Task CreateImportExcelAsync(List inputs); } 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 7e65fd510..18d0f0447 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 @@ -1,50 +1,40 @@ using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; 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 = "Kitting叫料申请")] public class KittingIssueRequestImportInput : SfsStoreImportInputBase { - /// - /// 叫料类型 - /// - [Display(Name = "叫料类型")] - public EnumIssueRequestType IssueRequestType { get; set; } + [Display(Name = "序号")] + [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")] + [Key] + public string Number { 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/SparePartIssueRequests/ISparePartIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/ISparePartIssueRequestAppService.cs index e930ba732..8853be2b0 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/ISparePartIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/SparePartIssueRequests/ISparePartIssueRequestAppService.cs @@ -13,4 +13,5 @@ public interface ISparePartIssueRequestAppService Task CreateAndHandleAsync(SparePartIssueRequestEditInput input); Task UpdateStatusCompletedAsync(string number); Task IsHasNewJobAsync(string requestNumber,List jobNumber); + Task CreateImportExcelAsync(List inputs); } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/ChassisOperationSequence/ChassisOperationSequenceAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/ChassisOperationSequence/ChassisOperationSequenceAppService.cs index 7d340a04e..5c7a4ec95 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/ChassisOperationSequence/ChassisOperationSequenceAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/ChassisOperationSequence/ChassisOperationSequenceAppService.cs @@ -147,6 +147,8 @@ public class ChassisOperationSequenceAppService listChassisOperationSequenceSearchDto.ChassisNumberList.Add(dict.Key); } } + + listChassisOperationSequenceSearchList.Add(listChassisOperationSequenceSearchDto); } return listChassisOperationSequenceSearchList; diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/AssembleIssueRequests/AssembleIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/AssembleIssueRequests/AssembleIssueRequestAppService.cs index 2ceccb4e4..2bef84df3 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/AssembleIssueRequests/AssembleIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/AssembleIssueRequests/AssembleIssueRequestAppService.cs @@ -230,6 +230,29 @@ public class AssembleIssueRequestAppService : SfsStoreRequestAppServiceBase inputs) + { + foreach (var input in inputs) + { + input.UseOnTheWayLocation = false; + input.ActiveDate = DateTime.Now; ; + input.IssueRequestType = EnumIssueRequestType.ExcelImport; + input.DirectCreateNote = false; + input.AutoSubmit = true; + input.AutoHandle = false; + input.AutoCompleteJob = false; + foreach (var detail in input.Details) + { + detail.BoxQty = detail.Qty; + detail.RecommendType = EnumRecommendType.None; + detail.Status = EnumStatus.Open; + } + + await CreateAsync(input).ConfigureAwait(false); + } + } + #region 私有 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/CoatingIssueRequests/CoatingIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/CoatingIssueRequests/CoatingIssueRequestAppService.cs index f8be3c92e..3b0363cde 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/CoatingIssueRequests/CoatingIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/CoatingIssueRequests/CoatingIssueRequestAppService.cs @@ -230,6 +230,29 @@ public class CoatingIssueRequestAppService : SfsStoreRequestAppServiceBase inputs) + { + foreach (var input in inputs) + { + input.UseOnTheWayLocation = false; + input.ActiveDate = DateTime.Now; ; + input.IssueRequestType = EnumIssueRequestType.ExcelImport; + input.DirectCreateNote = false; + input.AutoSubmit = true; + input.AutoHandle = false; + input.AutoCompleteJob = false; + foreach (var detail in input.Details) + { + detail.BoxQty = detail.Qty; + detail.RecommendType = EnumRecommendType.None; + detail.Status = EnumStatus.Open; + } + + await CreateAsync(input).ConfigureAwait(false); + } + } + #region 私有 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs index 84b15b9be..eae78398e 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs @@ -151,7 +151,7 @@ public class InjectionIssueRequestAppService : SfsStoreRequestAppServiceBase inputs) + { + foreach (var input in inputs) + { + input.UseOnTheWayLocation = false; + input.ActiveDate = DateTime.Now; ; + input.IssueRequestType = EnumIssueRequestType.ExcelImport; + input.DirectCreateNote = false; + input.AutoSubmit = true; + input.AutoHandle = false; + input.AutoCompleteJob = false; + foreach (var detail in input.Details) + { + detail.BoxQty = detail.Qty; + detail.RecommendType = EnumRecommendType.None; + detail.Status = EnumStatus.Open; + } + + await CreateAsync(input).ConfigureAwait(false); + } + } + #region 私有 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAppService.cs index 3f1d823c1..9d14fbd29 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAppService.cs @@ -4,11 +4,16 @@ using System.Linq; using System.Threading.Tasks; using Castle.Components.DictionaryAdapter; using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; +using Microsoft.EntityFrameworkCore; using NUglify.Helpers; using Volo.Abp; using Win_in.Sfs.Basedata.Application.Contracts; +using Win_in.Sfs.Basedata.Domain; +using Win_in.Sfs.Shared.Application.Contracts; using Win_in.Sfs.Shared.Domain.Shared; +using Win_in.Sfs.Shared.Domain.Shared.Enums.Store; using Win_in.Sfs.Wms.Store.Application.Contracts; using Win_in.Sfs.Wms.Store.Domain; using Win_in.Sfs.Wms.Store.Domain.Shared; @@ -228,6 +233,29 @@ public class KittingIssueRequestAppService : SfsStoreRequestAppServiceBase inputs) + { + foreach (var input in inputs) + { + input.UseOnTheWayLocation = false; + input.ActiveDate = DateTime.Now;; + input.IssueRequestType = EnumIssueRequestType.ExcelImport; + input.DirectCreateNote = false; + input.AutoSubmit = true; + input.AutoHandle = false; + input.AutoCompleteJob = false; + foreach (var detail in input.Details) + { + detail.BoxQty = detail.Qty; + detail.RecommendType = EnumRecommendType.KITTING; + detail.Status = EnumStatus.Open; + } + + await CreateAsync(input).ConfigureAwait(false); + } + } + #region 私有 /// diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAutoMapperProfile.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAutoMapperProfile.cs index 641908973..2cb464aa4 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAutoMapperProfile.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAutoMapperProfile.cs @@ -43,7 +43,9 @@ public partial class StoreApplicationAutoMapperProfile : Profile .Ignore(x => x.ToWarehouseCode) .Ignore(x => x.ToLocationArea) .Ignore(x => x.ToLocationGroup) - .Ignore(x => x.ItemName).Ignore(x => x.ItemDesc1).Ignore(x => x.ItemDesc2) + .Ignore(x => x.ItemName) + .Ignore(x => x.ItemDesc1) + .Ignore(x => x.ItemDesc2) .Ignore(x => x.ProdLine) .Ignore(x => x.IssuedQty) .Ignore(x => x.ReceivedQty) diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/SparePartIssueRequests/SparePartIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/SparePartIssueRequests/SparePartIssueRequestAppService.cs index 21729e608..a87562f41 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/SparePartIssueRequests/SparePartIssueRequestAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/SparePartIssueRequests/SparePartIssueRequestAppService.cs @@ -9,6 +9,7 @@ using NUglify.Helpers; using Volo.Abp; using Win_in.Sfs.Basedata.Application.Contracts; using Win_in.Sfs.Shared.Domain.Shared; +using Win_in.Sfs.Shared.Domain.Shared.Enums.Store; using Win_in.Sfs.Wms.Store.Application.Contracts; using Win_in.Sfs.Wms.Store.Domain; using Win_in.Sfs.Wms.Store.Domain.Shared; @@ -225,6 +226,29 @@ public class SparePartIssueRequestAppService : SfsStoreRequestAppServiceBase inputs) + { + foreach (var input in inputs) + { + input.UseOnTheWayLocation = false; + input.ActiveDate = DateTime.Now; ; + input.IssueRequestType = EnumIssueRequestType.ExcelImport; + input.DirectCreateNote = false; + input.AutoSubmit = true; + input.AutoHandle = false; + input.AutoCompleteJob = false; + foreach (var detail in input.Details) + { + detail.BoxQty = detail.Qty; + detail.RecommendType = EnumRecommendType.None; + detail.Status = EnumStatus.Open; + } + + await CreateAsync(input).ConfigureAwait(false); + } + } + #region 私有 ///