diff --git a/src/WMS.Web.Domain/Services/InStockTaskService.cs b/src/WMS.Web.Domain/Services/InStockTaskService.cs index 8e075666..ab104294 100644 --- a/src/WMS.Web.Domain/Services/InStockTaskService.cs +++ b/src/WMS.Web.Domain/Services/InStockTaskService.cs @@ -529,7 +529,7 @@ namespace WMS.Web.Domain.Services var erp_data = erp_list.FirstOrDefault(a => a.ErpDetailId == det.ErpDetailId && a.BillNo == order.SourceBillNo); if (erp_data != null) { - if (erp_data.MaterialId == det.MaterialId) + if (erp_data.MaterialId == det.MaterialId && erp_data.StockCode==det.StockCode) { _logger.LogInformation("拉取金蝶数据:SysnDataNew2->" + JsonConvert.SerializeObject(erp_data)); //物料相同的,就改变数值 @@ -537,7 +537,7 @@ namespace WMS.Web.Domain.Services det.AccruedQty = erp_data.Qty; det.FactoryPrice = erp_data.FactoryPrice; det.DeliveredQty = erp_data.DeliveredQty; - } + } else { _logger.LogInformation("拉取金蝶数据:SysnDataNew3->" + JsonConvert.SerializeObject(erp_data)); @@ -556,7 +556,7 @@ namespace WMS.Web.Domain.Services foreach (var erp_data in erp_list) { // if (det.MaterialId != erp_data.MaterialId || (det.MaterialId == erp_data.MaterialId && det.StockCode != erp_data.StockCode)) - var IsHaveNewMaterial = data_list.SelectMany(s => s.Details).Where(x => x.ErpDetailId == erp_data.ErpDetailId && erp_data.MaterialId == x.MaterialId).Any(); + var IsHaveNewMaterial = data_list.SelectMany(s => s.Details).Where(x => x.ErpDetailId == erp_data.ErpDetailId && erp_data.MaterialId == x.MaterialId && erp_data.StockCode==x.StockCode).Any(); if (!IsHaveNewMaterial) //当物料相同,仓库不同或者物料不同,就新增一条明细 erp_addDetailsList.Add(erp_data);