仓库一致的情况下

This commit is contained in:
tongfei
2024-03-14 16:04:07 +08:00
parent e27cc71b7b
commit 48614e9071

View File

@@ -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);