From ca1ecd16b15eb97dd0958817d384aee169f5da91 Mon Sep 17 00:00:00 2001 From: "boxu.zheng" Date: Thu, 11 Apr 2024 11:53:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20=E6=B3=A8=E5=A1=91?= =?UTF-8?q?=E5=8F=91=E6=96=99=E5=BA=93=E7=A7=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InjectionJobs/InjectionJobAppService.cs | 9 ++- .../Jobs/InjectionJobEventHandler.cs | 60 ++++++++++++++++--- 2 files changed, 61 insertions(+), 8 deletions(-) diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionJobs/InjectionJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionJobs/InjectionJobAppService.cs index 9e75a94a8..ca7c0baab 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionJobs/InjectionJobAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionJobs/InjectionJobAppService.cs @@ -15,6 +15,7 @@ using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Wms.Store.Application.Contracts; using Win_in.Sfs.Wms.Store.Domain; using Win_in.Sfs.Wms.Store.Domain.Shared; +using Win_in.Sfs.Wms.Store.Notes; namespace Win_in.Sfs.Wms.Store.Application; @@ -22,7 +23,7 @@ namespace Win_in.Sfs.Wms.Store.Application; [Route($"{StoreConsts.RootPath}injection-job")] public class InjectionJobAppService : SfsJobAppServiceBase, - IInjectionJobAppService + IInjectionJobAppService,ITransferLibCallback { private readonly IInjectionJobManager _injectionJobManager; @@ -151,4 +152,10 @@ public class InjectionJobAppService var ret = ObjectMapper.Map(entity); return ret; } + + [HttpPost("Do-Call-Back")] + public Tuple DoTransferLibCallback(string businessType, string requestNum, string jobNum) + { + throw new NotImplementedException(); + } } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/InjectionJobEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/InjectionJobEventHandler.cs index 97ced430f..4ea37c26b 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/InjectionJobEventHandler.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/InjectionJobEventHandler.cs @@ -62,6 +62,8 @@ public class InjectionJobEventHandler : var entity = eventData.Entity; await CreateExpectOutAsync(entity).ConfigureAwait(false); + + await CreateTransferLibAsync(entity).ConfigureAwait(false); } /// @@ -76,6 +78,8 @@ public class InjectionJobEventHandler : foreach (var entity in entitys) { await CreateExpectOutAsync(entity).ConfigureAwait(false); + + await CreateTransferLibAsync(entity).ConfigureAwait(false); } } @@ -127,15 +131,57 @@ public class InjectionJobEventHandler : /// 根据是否在 第一层 来创建 是否生成库移任务 /// /// - private async Task CreateTransferLib(InjectionJob injectionJob) + private async Task CreateTransferLibAsync(InjectionJob injectionJob) { - var input= new TransferLibRequestEditInput(); - //input.CallBusinessType = nameof(type); - input.CallJobNumber = injectionJob.Number; - input.CallRequestNumber = injectionJob.InjectionRequestNumber; - //input.CallServerName= + foreach (var detail in injectionJob.Details) + { + var input = new TransferLibRequestEditInput(); + input.CallBusinessType = nameof(IInjectionJobAppService); + input.CallJobNumber = injectionJob.Number; + input.CallRequestNumber = injectionJob.InjectionRequestNumber; + input.CallServerName = "Win_in.Sfs.Wms.Store.Application.InjectionJobAppService"; + input.Type = "Transfer_Warehouse"; + input.UseOnTheWayLocation = true; + var detailInput = new TransferLibRequestDetailInput(); + detailInput.CallBusinessType = nameof(IInjectionJobAppService); + detailInput.CallRequestNumber = injectionJob.InjectionRequestNumber; + detailInput.CallServerName = "Win_in.Sfs.Wms.Store.Application.InjectionJobAppService"; + detailInput.CallJobNumber = injectionJob.Number; + + detailInput.JobStatus = EnumJobStatus.Open; + detailInput.ItemCode=detail.ItemCode; + detailInput.Qty = detail.RecommendQty; + detailInput.ArriveDate = detailInput.ArriveDate; + detailInput.ExpireDate=detailInput.ExpireDate; + detailInput.ProduceDate = detail.RecommendProduceDate; + + detailInput.ToLocationCode = detail.ToLocationCode; + detailInput.ToWarehouseCode=detail.ToWarehouseCode; + detailInput.ToLocationErpCode=detail.ToLocationErpCode; + detailInput.ToLocationGroup=detail.ToLocationGroup; + detailInput.ToLocationArea= detail.ToLocationArea; - //_transferLibRequestAppService.CreateAsync(); + detailInput.FromLocationCode = detail.RecommendFromLocationCode; + detailInput.FromLocationArea = detail.RecommendFromLocationArea; + detailInput.FromLocationGroup=detail.RecommendFromLocationGroup; + detailInput.FromLocationErpCode= detail.RecommendFromLocationErpCode; + detailInput.FromWarehouseCode= detail.RecommendFromWarehouseCode; + + detailInput.ToLocationCode = "YL1"; + detailInput.ToLocationErpCode = "YL1"; + detailInput.ToLocationGroup = "YL1"; + detailInput.ToLocationArea = "YL1"; + + detailInput.FromLot = detail.RecommendLot; + detailInput.ToLot=detail.RecommendLot; + detailInput.Qty=detail.RecommendQty; + detailInput.StdPackQty = detail.StdPackQty; + detailInput.Uom=detail.Uom; + detailInput.SupplierBatch = detail.RecommendSupplierBatch; + + await _transferLibRequestAppService.CreateAsync(input); + } + } ///