From 719ff4b9dd5ad470da8c25cf49b7b2e2aa932026 Mon Sep 17 00:00:00 2001 From: lvzb <35200379@qq.com> Date: Tue, 12 Mar 2024 13:35:00 +0800 Subject: [PATCH] =?UTF-8?q?mes=E7=BC=B4=E5=BA=93=E6=B1=87=E6=80=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Incoming/MesOutConverter.cs | 9 +++++++-- .../Incoming/MesOutReader.cs | 7 ++++++- .../ProductReceiptNoteSumDetailExchangeDto.cs | 6 ++++++ ...Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml | 5 +++++ 4 files changed, 24 insertions(+), 3 deletions(-) diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutConverter.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutConverter.cs index 3e114dd46..ae1c74d65 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutConverter.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutConverter.cs @@ -11,6 +11,7 @@ using Volo.Abp.ObjectMapping; using Win_in.Sfs.Basedata.Application.Contracts; using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Wms.DataExchange.Domain; +using Win_in.Sfs.Wms.DataExchange.Domain.Shared; using Win_in.Sfs.Wms.DataExchange.WMS.ProductReceiptNote; using Win_in.Sfs.Wms.Store.Application.Contracts; using Win_in.Sfs.Wms.Store.Domain; @@ -63,7 +64,7 @@ public class MesOutConverter : IIncomingConverter { List types = new List { EnumLocationType.FG, EnumLocationType.WIP }; var incomingToWmsList = new List(); - var groups = incomingDataList.GroupBy(p => p.SourceDataGroupCode); + var groups = incomingDataList.GroupBy(p => new { p.SourceDataGroupCode, p.TableType });//按照库位和是为为返喷分组 foreach (var group in groups) { var first = group.First(); @@ -87,16 +88,20 @@ public class MesOutConverter : IIncomingConverter ProductReceiptNoteSumDetailExchangeDto sumdetail = new ProductReceiptNoteSumDetailExchangeDto(); var productReceiptNote = JsonSerializer.Deserialize(incomingFromExternal.DestinationDataContent); var wmsProductReceiptNoteDetail = _objectMapper.Map(productReceiptNote.Detail); - var oldNoteDetail= wmsProductReceiptNote.Details.FirstOrDefault(r => r.ItemCode == wmsProductReceiptNoteDetail.ItemCode && r.LocationErpCode == wmsProductReceiptNoteDetail.LocationErpCode); + + var oldNoteDetail= wmsProductReceiptNote.Details.FirstOrDefault(r => r.ItemCode == wmsProductReceiptNoteDetail.ItemCode && r.LocationErpCode == wmsProductReceiptNoteDetail.LocationErpCode &&(first.TableType != EnumExchangeTableType.MainTable?true:r.ReturnQty!=0 )); + sumdetail.itemCode = wmsProductReceiptNoteDetail.ItemCode; sumdetail.locationCode = wmsProductReceiptNoteDetail.LocationErpCode; sumdetail.Qty = wmsProductReceiptNoteDetail.Qty; + sumdetail.BadQty = wmsProductReceiptNoteDetail.ReturnQty; sumdetail.Memo = wmsProductReceiptNoteDetail.Remark; sumdetail.MesGuid = incomingFromExternal.SourceDataId; sumDetails.Add(sumdetail); if (oldNoteDetail != null) { oldNoteDetail.Qty = oldNoteDetail.Qty+wmsProductReceiptNoteDetail.Qty; + oldNoteDetail.ReturnQty = oldNoteDetail.ReturnQty + wmsProductReceiptNoteDetail.ReturnQty; } else { diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutReader.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutReader.cs index 10845124b..696c7c586 100644 --- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutReader.cs +++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutReader.cs @@ -65,7 +65,7 @@ public class MesOutReader : IReader foreach (var mesOut in toBeProcessedMesOuts) { var incomingData = BuildIncomingFromExternal(mesOut); - + incomingData.SetEffectiveDate(DateTime.ParseExact(mesOut.Mesout_date, "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture)); incomingData.SetSuccess(); try @@ -119,6 +119,11 @@ public class MesOutReader : IReader DestinationSystem = EnumSystemType.WMS.ToString(), }; + //返喷数不为零用tabletype标志出来,用于后续汇总 + if (mesOut.Mesout_bad != 0) + { + incomingData.TableType = EnumExchangeTableType.MainTable; + } return incomingData; } diff --git a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/WMS/ProductReceiptNote/ProductReceiptNoteSumDetailExchangeDto.cs b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/WMS/ProductReceiptNote/ProductReceiptNoteSumDetailExchangeDto.cs index b2ba2bb95..8e3362769 100644 --- a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/WMS/ProductReceiptNote/ProductReceiptNoteSumDetailExchangeDto.cs +++ b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/WMS/ProductReceiptNote/ProductReceiptNoteSumDetailExchangeDto.cs @@ -44,4 +44,10 @@ public class ProductReceiptNoteSumDetailExchangeDto [Display(Name = "数量")] public decimal Qty { get; set; } + /// + /// 返喷数量 + /// + [Display(Name = "返喷数量")] + public decimal BadQty { get; set; } + } diff --git a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml index c863396b8..880561d6c 100644 --- a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml +++ b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml @@ -871,6 +871,11 @@ 数量 + + + 返喷数量 + + 产成品物料号