diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/UnplannedReceiptNoteConverter.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/UnplannedReceiptNoteConverter.cs index 0c79791f6..08286736f 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/UnplannedReceiptNoteConverter.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/Outgoing/UnplannedReceiptNoteConverter.cs @@ -12,6 +12,7 @@ using Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.Tyrp; using Win_in.Sfs.Wms.DataExchange.Domain.Shared; using Win_in.Sfs.Wms.DataExchange.WMS.UnplannedReceiptNote; using Win_in.Sfs.Wms.Store.Application.Contracts; +using Win_in.Sfs.Wms.Store.Domain; namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent.Outgoing; @@ -112,12 +113,19 @@ IUnplannedReceiptRequestAppService unplannedReceiptRequestAppService ) DestinationSystem = EnumSystemType.ERP.ToString(), DestinationDataId = "", }; + + if (purchaseOrder.wmsoutm_type == "4036") + { + detail.Qty = detail.Qty * -1; + } + outgoingDetailToExternal.SetEffectiveDate(outgoingFromWms.EffectiveDate); outgoingDetailToExternal.SourceDataContent = JsonSerializer.Serialize(detail); var purchaseOrderDetail = BuildDataInterfaceDetail(tyrpNumber, detail,wmsReceipt.Number); outgoingDetailToExternal.DestinationDataContent = JsonSerializer.Serialize(purchaseOrderDetail); outgoingToExternalList.Add(outgoingDetailToExternal); } + #endregion } //插入到中间表OutgoingToExternal diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/DataExchanges/UnplannedReceiptNoteEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/DataExchanges/UnplannedReceiptNoteEventHandler.cs index 6168c04d2..127330018 100644 --- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/DataExchanges/UnplannedReceiptNoteEventHandler.cs +++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/DataExchanges/UnplannedReceiptNoteEventHandler.cs @@ -33,17 +33,8 @@ public class UnplannedReceiptNoteEventHandler [UnitOfWork] public virtual async Task HandleEventAsync(SfsCreatedEntityEventData> eventData) { - var entities = eventData.Entity; - List notelist = new List(); - foreach (var entity in entities) - { - if (entity.Details != null && entity.Details.Count > 0) - { - var copy = CopyEntity(entity); - notelist.Add(copy); - } - } - await AddExchangeDataAsync(entities).ConfigureAwait(false); + var entity = eventData.Entity; + await AddExchangeDataAsync(entity).ConfigureAwait(false); } protected override async Task AddExchangeDataAsync(List entities) @@ -56,19 +47,4 @@ public class UnplannedReceiptNoteEventHandler var exchangeData = await BuildExchangeDataAsync(StoreEventConsts.WMS, StoreEventConsts.ERP, ExchangeDataType, dtos).ConfigureAwait(false); await AddManyAsync(exchangeData).ConfigureAwait(false); } - private UnplannedReceiptNote CopyEntity(UnplannedReceiptNote p_note) - { - var json = System.Text.Json.JsonSerializer.Serialize(p_note); - - var copy = System.Text.Json.JsonSerializer.Deserialize(json); - - - foreach (var detail in copy.Details) - { - detail.Qty = detail.Qty != 0 ? -Math.Abs(detail.Qty) : 0; - detail.HandledQty = detail.HandledQty != 0 ? -Math.Abs(detail.HandledQty) : 0; - detail.RecommendQty = detail.RecommendQty != 0 ? -Math.Abs(detail.RecommendQty) : 0; - } - return copy; - } }