From ea20be2389c61b43d2146976e096798c581dd163 Mon Sep 17 00:00:00 2001 From: zhaoxinyu <89237069@qq.com> Date: Fri, 29 Mar 2024 17:12:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=AE=A2=E9=80=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProductionReturnNoteAppService.cs | 3 + ...roductionReturnRequestAutoMapperProfile.cs | 74 ++++++++++++- .../ProductionReturnRequestEventHandler.cs | 101 ++++++++++++++---- 3 files changed, 154 insertions(+), 24 deletions(-) diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductionReturnNotes/ProductionReturnNoteAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductionReturnNotes/ProductionReturnNoteAppService.cs index 35db79092..3577dcc3c 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductionReturnNotes/ProductionReturnNoteAppService.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductionReturnNotes/ProductionReturnNoteAppService.cs @@ -43,4 +43,7 @@ public class ProductionReturnNoteAppService : var dto = ObjectMapper.Map(entity); return dto; } + + + } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/AutoMapperProfiles/Requests/ProductionReturnRequestAutoMapperProfile.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/AutoMapperProfiles/Requests/ProductionReturnRequestAutoMapperProfile.cs index d7101e43e..10cdc47d7 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/AutoMapperProfiles/Requests/ProductionReturnRequestAutoMapperProfile.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/AutoMapperProfiles/Requests/ProductionReturnRequestAutoMapperProfile.cs @@ -5,12 +5,85 @@ using Win_in.Sfs.Wms.Store.Domain; namespace Win_in.Sfs.Wms.Store.Event; +using System; using Win_in.Sfs.Shared.Domain.Shared; +using Win_in.Sfs.Wms.Inventory.Application.Contracts; public partial class StoreEventAutoMapperProfile : Profile { private void ProductionReturnRequestAutoMapperProfile() { + + //CreateMap() + // .ForMember(x => x.JobNumber, y => y.MapFrom(d => d.Number)) + // .ForMember(x => x.ReturnTime, y => y.MapFrom(d => d.CreationTime)) + // .ForMember(x => x.Worker, y => y.MapFrom(d => d.Worker)) + // .ForMember(x => x.ActiveDate, y => y.MapFrom(d => DateTime.Now)) + // .Ignore(x => x.Number); + + //CreateMap() + + // .ForMember(x => x.FromPackingCode, y => y.MapFrom(d => d.FromPackingCode)) + // .ForMember(x => x.ToPackingCode, y => y.MapFrom(d => d.ToPackingCode)) + // .ForMember(x => x.SupplierBatch, y => y.MapFrom(d => d.SupplierBatch)) + // .ForMember(x => x.ArriveDate, y => y.MapFrom(d => d.ArriveDate)) + // .ForMember(x => x.ProduceDate, y => y.MapFrom(d => d.ProduceDate)) + // .ForMember(x => x.ExpireDate, y => y.MapFrom(d => d.ExpireDate)) + // .ForMember(x => x.FromLot, y => y.MapFrom(d => string.Empty)) + // .ForMember(x => x.ToLot, y => y.MapFrom(d => d.ToLot)) + // .ForMember(x => x.ToContainerCode, y => y.MapFrom(d => d.ToContainerCode)) + // .ForMember(x => x.FromContainerCode, y => y.MapFrom(d => d.FromContainerCode)) + // .ForMember(x => x.FromStatus, y => y.MapFrom(d => d.FromStatus)) + // .ForMember(x => x.ToStatus, y => y.MapFrom(d => d.ToStatus)) + // .ForMember(x => x.Qty, y => y.MapFrom(d => d.Qty)) + // .ForMember(x => x.FromLocationCode, y => y.MapFrom(d => d.FromLocationCode)) + // .ForMember(x => x.FromLocationArea, y => y.MapFrom(d => d.ToLocationArea)) + // .ForMember(x => x.FromLocationGroup, y => y.MapFrom(d => d.ToLocationGroup)) + // .ForMember(x => x.FromLocationErpCode, y => y.MapFrom(d => d.ToLocationErpCode)) + // .ForMember(x => x.FromWarehouseCode, y => y.MapFrom(d => d.ToWarehouseCode)) + // .ForMember(x => x.Qty, y => y.MapFrom(d => d.Qty)) + // .Ignore(x => x.ArriveDate) + // .Ignore(x => x.ToLocationCode) + // .Ignore(x => x.ToLocationArea) + // .Ignore(x => x.ToLocationGroup) + // .Ignore(x => x.ToLocationErpCode) + // .Ignore(x => x.ToWarehouseCode) + // .Ignore(x => x.HandledContainerCode) + // .Ignore(x => x.HandledPackingCode) + // .Ignore(x => x.HandledToLocationCode) + // .Ignore(x => x.HandledToLocationArea) + // .Ignore(x => x.HandledToLocationGroup) + // .Ignore(x => x.HandledToLocationErpCode) + // .Ignore(x => x.HandledToWarehouseCode) + // .Ignore(x => x.HandledExpireDate) + // .Ignore(x => x.HandledLot) + // .Ignore(x => x.HandledArriveDate) + // .Ignore(x => x.HandledProduceDate) + // .Ignore(x => x.HandledQty) + // .Ignore(x => x.HandledSupplierBatch); + + + //CreateMap() + // .MapExpectInOutTo() + // .Ignore(x => x.SerialNumber) + // .Ignore(x => x.Worker) + // .Ignore(x => x.ExtraProperties) + // ; + + //CreateMap() + // .MapExpectInOutTo() + // .ForMember(x => x.LocationCode, y => y.MapFrom(d => d.FromLocationCode)) + // .ForMember(x => x.LocationArea, y => y.MapFrom(d => d.FromLocationArea)) + // .ForMember(x => x.LocationGroup, y => y.MapFrom(d => d.FromLocationGroup)) + // .ForMember(x => x.LocationErpCode, y => y.MapFrom(d => d.FromLocationErpCode)) + // .ForMember(x => x.WarehouseCode, y => y.MapFrom(d => d.FromWarehouseCode)) + // .Ignore(x => x.SerialNumber) + // .Ignore(x => x.Worker) + // .Ignore(x => x.ExtraProperties); + + + + CreateMap() .ForMember(x => x.ProductionReturnRequestNumber, y => y.MapFrom(t => t.Number)) .ForMember(x => x.IsAutoComplete, y => y.MapFrom(t => t.AutoCompleteJob)) @@ -53,7 +126,6 @@ public partial class StoreEventAutoMapperProfile : Profile .Ignore(x => x.HandledProduceDate) .Ignore(x => x.HandledQty) .Ignore(x => x.HandledSupplierBatch) - ; } } diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/ProductionReturnRequestEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/ProductionReturnRequestEventHandler.cs index 55602b4f9..b964e2940 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/ProductionReturnRequestEventHandler.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/ProductionReturnRequestEventHandler.cs @@ -1,5 +1,9 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; +using Microsoft.AspNetCore.Components.Forms; +using Omu.ValueInjecter; using Volo.Abp.EventBus; using Win_in.Sfs.Shared.Event; using Win_in.Sfs.Wms.Store.Application.Contracts; @@ -14,19 +18,83 @@ public class ProductionReturnRequestEventHandler { private readonly IProductionReturnJobAppService _productionReturnJobApp; + private readonly IProductionReturnNoteAppService _productionReturnNoteApp; + public ProductionReturnRequestEventHandler( - IProductionReturnJobAppService productionReturnJobApp + IProductionReturnJobAppService productionReturnJobApp, + IProductionReturnNoteAppService productionReturnNoteApp ) { + _productionReturnNoteApp= productionReturnNoteApp; _productionReturnJobApp = productionReturnJobApp; } public virtual async Task HandleEventAsync(SfsHandledEntityEventData eventData) { var entity = eventData.Entity; - var job = await BuildProductionReturnJobCreateInputAsync(entity).ConfigureAwait(false); - await _productionReturnJobApp.CreateAsync(job).ConfigureAwait(false); + //CreateMap() + // .ForMember(x => x.JobNumber, y => y.MapFrom(d => d.Number)) + // .ForMember(x => x.ReturnTime, y => y.MapFrom(d => d.CreationTime)) + // .ForMember(x => x.Worker, y => y.MapFrom(d => d.Worker)) + // .ForMember(x => x.ActiveDate, y => y.MapFrom(d => DateTime.Now)) + // .Ignore(x => x.Number); + //CreateMap() + // .ForMember(x => x.FromPackingCode, y => y.MapFrom(d => d.FromPackingCode)) + // .ForMember(x => x.ToPackingCode, y => y.MapFrom(d => d.ToPackingCode)) + // .ForMember(x => x.SupplierBatch, y => y.MapFrom(d => d.SupplierBatch)) + // .ForMember(x => x.ArriveDate, y => y.MapFrom(d => d.ArriveDate)) + // .ForMember(x => x.ProduceDate, y => y.MapFrom(d => d.ProduceDate)) + // .ForMember(x => x.ExpireDate, y => y.MapFrom(d => d.ExpireDate)) + // .ForMember(x => x.FromLot, y => y.MapFrom(d => string.Empty)) + // .ForMember(x => x.ToLot, y => y.MapFrom(d => d.ToLot)) + // .ForMember(x => x.ToContainerCode, y => y.MapFrom(d => d.ToContainerCode)) + // .ForMember(x => x.FromContainerCode, y => y.MapFrom(d => d.FromContainerCode)) + // .ForMember(x => x.FromStatus, y => y.MapFrom(d => d.FromStatus)) + // .ForMember(x => x.ToStatus, y => y.MapFrom(d => d.ToStatus)) + // .ForMember(x => x.Qty, y => y.MapFrom(d => d.Qty)) + // .ForMember(x => x.FromLocationCode, y => y.MapFrom(d => d.FromLocationCode)) + // .ForMember(x => x.FromLocationArea, y => y.MapFrom(d => d.ToLocationArea)) + // .ForMember(x => x.FromLocationGroup, y => y.MapFrom(d => d.ToLocationGroup)) + // .ForMember(x => x.FromLocationErpCode, y => y.MapFrom(d => d.ToLocationErpCode)) + // .ForMember(x => x.FromWarehouseCode, y => y.MapFrom(d => d.ToWarehouseCode)) + // .ForMember(x => x.Qty, y => y.MapFrom(d => d.Qty)) + // .Ignore(x => x.ArriveDate) + // .Ignore(x => x.ToLocationCode) + // .Ignore(x => x.ToLocationArea) + // .Ignore(x => x.ToLocationGroup) + // .Ignore(x => x.ToLocationErpCode) + // .Ignore(x => x.ToWarehouseCode) + // .Ignore(x => x.HandledContainerCode) + // .Ignore(x => x.HandledPackingCode) + // .Ignore(x => x.HandledToLocationCode) + // .Ignore(x => x.HandledToLocationArea) + // .Ignore(x => x.HandledToLocationGroup) + // .Ignore(x => x.HandledToLocationErpCode) + // .Ignore(x => x.HandledToWarehouseCode) + // .Ignore(x => x.HandledExpireDate) + // .Ignore(x => x.HandledLot) + // .Ignore(x => x.HandledArriveDate) + // .Ignore(x => x.HandledProduceDate) + // .Ignore(x => x.HandledQty) + // .Ignore(x => x.HandledSupplierBatch); + + + ProductionReturnNoteEditInput input = new ProductionReturnNoteEditInput(); + input.InjectFrom(entity); + input.ReturnTime = DateTime.Now; + input.ActiveDate=DateTime.Now; + input.JobNumber = input.Number; + List inputdetail = new List(); + foreach (var itm in entity.Details) + { + ProductionReturnNoteDetailInput detail=new ProductionReturnNoteDetailInput(); + detail.InjectFrom(itm); + inputdetail.Add(detail); + } + input.Details = inputdetail.ToList(); + + await _productionReturnNoteApp.CreateAsync(input).ConfigureAwait(false); } public virtual async Task HandleEventAsync(SfsAbortedEntityEventData eventData) @@ -36,26 +104,13 @@ public class ProductionReturnRequestEventHandler await _productionReturnJobApp.CancelByProductionReturnRequestNumberAsync(entity.Number).ConfigureAwait(false); } - private async Task BuildProductionReturnJobCreateInputAsync(ProductionReturnRequest request) - { - var job = ObjectMapper.Map(request); - - job.Details = new List(); + //private PurchaseReturnNoteEditInput BuildProductionReturn(PurchaseReturnJob entity) + //{ + // var input = ObjectMapper.Map(entity); - foreach (var detail in request.Details) - { - var inputDetail = - ObjectMapper.Map(detail); + // input.Details.RemoveAll(p => p.Qty == 0); - - var location = await LocationAclService.GetByCodeAsync(detail.ToLocationCode).ConfigureAwait(false); - - job.WorkGroupCode = location.WorkGroupCode; - - job.Details.Add(inputDetail); - } - - return job; - } + // return input; + //} }