This commit is contained in:
tongfei
2024-03-14 16:56:12 +08:00
parent d5e5a7b081
commit e5b418fb8f

View File

@@ -557,20 +557,30 @@ namespace WMS.Web.Domain.Services
{
// if (det.MaterialId != erp_data.MaterialId || (det.MaterialId == erp_data.MaterialId && det.StockCode != erp_data.StockCode))
var IsHaveNewMaterial = data_list.Where(x=>x.SourceBillNo==erp_data.BillNo).SelectMany(s => s.Details).Where(x =>x.ErpDetailId == erp_data.ErpDetailId && erp_data.MaterialId == x.MaterialId).Any();
var IsHaveNewErpDetId = data_list.Where(x => x.SourceBillNo == erp_data.BillNo).SelectMany(s => s.Details).Where(x => x.ErpDetailId != erp_data.ErpDetailId).Any();
if (!IsHaveNewMaterial)
{
//当物料相同,仓库不同或者物料不同,就新增一条明细
erp_addDetailsList.Add(erp_data);
}
if (IsHaveNewErpDetId)
{
//当物料相同,明细不同新增一条明细
erp_addDetailsList.Add(erp_data);
//操作完后剔除
erp_removeList.Add(erp_data);
}
}
//去重
var erp_addDetailsList_group= erp_addDetailsList.Distinct().ToList();
//2.2遍历任务单:添加新的明细
data_list.ForEach(order =>
{
//2.1.任务单添加明细
var addErpDetails = erp_addDetailsList.Where(x => x.BillNo == order.SourceBillNo).ToList();
var addErpDetails = erp_addDetailsList_group.Where(x => x.BillNo == order.SourceBillNo).ToList();
if (addErpDetails.Count != 0)
{
var addDetails = _mapper.Map<List<InStockTaskDetails>>(addErpDetails);