修复bug

This commit is contained in:
18942506660
2024-08-08 14:19:33 +08:00
parent 6239a1e54e
commit 7b7018d1bf
6 changed files with 64 additions and 22 deletions

View File

@@ -170,16 +170,30 @@ namespace WMS.Web.Domain.Services
isUpdate = SsynDateComparison(outStockTask, erps);
foreach (var erp in erps)
{
//仓库不同 拆分成不同的
var detail = outStockTask.Details.FirstOrDefault(w => w.MaterialNumber == erp.MaterialNumber);
//如果该明细作废 则不修改了
if (detail != null && detail.IsRepeal == true)
//仓库不同 拆分成不同的 //如果该明细作废 则不修改了
var details = outStockTask.Details.Where(w => w.MaterialNumber == erp.MaterialNumber).ToList();
bool isAdd = false;
if (details.Count() == 0) isAdd = true;
OutStockTaskDetails detail = null;
if (details.Where(w => w.IsRepeal != true).Count() > 0)
{
//操作完后剔除
erp_removeList.Add(erp);
continue;
detail = details.Where(w => w.IsRepeal != true).FirstOrDefault();
isAdd = false;
}
if (detail == null)
if (details.Count() != 0 && details.Count() == details.Where(w => w.IsRepeal == true).Count())
{
//因为出库任务单有合并的情况 所以需要过滤一下
//如果这个明细已经作废,同时金蝶的明细id对不上 则新增一条明细
if (details.SelectMany(s => s.ErpDetails).Where(w => w.Erp_DetailId == erp.Erp_DetailId).Count() == 0)
isAdd = true;
else
{
//操作完后剔除
erp_removeList.Add(erp);
continue;
}
}
if (isAdd == true)
{
//添加一条物料明细
detail = _mapper.Map<OutStockTaskDetails>(erp);
@@ -218,8 +232,9 @@ namespace WMS.Web.Domain.Services
outStockTask.GenerateStatus();
}
}
//过滤掉已作废的单
var update_date_list = data_list.Where(w => update_ids.Contains(w.Id) && w.Status != OutStockStatus.Repeal).ToList();
//
//var update_date_list = data_list.Where(w => update_ids.Contains(w.Id) && w.Status != OutStockStatus.Repeal).ToList();
var update_date_list = data_list.Where(w => update_ids.Contains(w.Id)).ToList();
//更新修改时间
update_date_list.ForEach(f => f.WmsUpdateTime = DateTime.Now);
//2.2.提交修改
@@ -290,6 +305,8 @@ namespace WMS.Web.Domain.Services
//金蝶删除明细数据后 wms对应数据修改为0
ed.AccruedQty = 0;
d.AccruedQty = d.ErpDetails.Sum(s => s.AccruedQty);
if (d.AccruedQty == 0)
d.IsRepeal = true;
isUpdate = true;
}
}