This commit is contained in:
tongfei
2023-11-25 17:25:30 +08:00
parent c3121c31e0
commit b201f325b6

View File

@@ -157,7 +157,7 @@ namespace WMS.Web.Domain.Services
//2.1判断箱是否上架过了 //2.1判断箱是否上架过了
var isExist = await _inStockRepositories.IsExistBy(box.Id); var isExist = await _inStockRepositories.IsExistBy(box.Id);
if(isExist) if (isExist)
return Result<BoxInStockTaskDto>.ReFailure(ResultCodes.BoxIsTrueShelf); return Result<BoxInStockTaskDto>.ReFailure(ResultCodes.BoxIsTrueShelf);
//3.组装返回数据 //3.组装返回数据
@@ -168,7 +168,7 @@ namespace WMS.Web.Domain.Services
foreach (var item in box.Details) foreach (var item in box.Details)
{ {
//这里找任务单的物料条件物料ID和应入库数量大于收货数量防止有同样的物料数据收货的时候 会有收货数量,只要找到没有收完的就行了 //这里找任务单的物料条件物料ID和应入库数量大于收货数量防止有同样的物料数据收货的时候 会有收货数量,只要找到没有收完的就行了
var current_task_Det= tast.Details.Where(x => x.MaterialId == item.MaterialId && x.AccruedQty>x.ReceiveQty).FirstOrDefault(); var current_task_Det = tast.Details.Where(x => x.MaterialId == item.MaterialId && x.AccruedQty > x.ReceiveQty).FirstOrDefault();
//3.2映射返回明细对象 //3.2映射返回明细对象
var box_task_detail = new BoxDetailsInStockTaskDto(); var box_task_detail = new BoxDetailsInStockTaskDto();
box_task_detail.SupplierId = current_task_Det == null ? 0 : current_task_Det.SupplierId; box_task_detail.SupplierId = current_task_Det == null ? 0 : current_task_Det.SupplierId;
@@ -204,7 +204,7 @@ namespace WMS.Web.Domain.Services
//序列号集:箱里面的 //序列号集:箱里面的
var serialNumbers = await _serialNumbersRepositories.GetEntityListByBoxIds(dto.Details.GroupBy(x=>x.BoxId).Select(x => x.Key).ToList()); var serialNumbers = await _serialNumbersRepositories.GetEntityListByBoxIds(dto.Details.GroupBy(x => x.BoxId).Select(x => x.Key).ToList());
//赋值序列号 //赋值序列号
entity.Details.ForEach(x => entity.Details.ForEach(x =>
@@ -222,8 +222,8 @@ namespace WMS.Web.Domain.Services
return Result.ReFailure(ResultCodes.DateWriteError); return Result.ReFailure(ResultCodes.DateWriteError);
//同步金蝶后,反写任务单的已交数量 //同步金蝶后,反写任务单的已交数量
var taskId= dto.Details.GroupBy(x => x.TaskId).Select(x=>x.Key).FirstOrDefault(); var taskId = dto.Details.GroupBy(x => x.TaskId).Select(x => x.Key).FirstOrDefault();
var task= await _inStockTaskRepositories.Get(taskId); var task = await _inStockTaskRepositories.Get(taskId);
if (task != null) if (task != null)
{ {
task.Details.ForEach(x => task.Details.ForEach(x =>
@@ -231,8 +231,8 @@ namespace WMS.Web.Domain.Services
x.DeliveredQty = x.ReceiveQty; x.DeliveredQty = x.ReceiveQty;
}); });
task.Shelf(loginInfo.UserInfo.StaffId); task.Shelf(loginInfo.UserInfo.StaffId);
task =await _inStockTaskRepositories.Update(task,isTransaction); task = await _inStockTaskRepositories.Update(task, isTransaction);
if(task==null) if (task == null)
return Result.ReFailure(ResultCodes.DateWriteError); return Result.ReFailure(ResultCodes.DateWriteError);
} }
@@ -287,7 +287,7 @@ namespace WMS.Web.Domain.Services
item.SubStockId = dto.SubStockId; item.SubStockId = dto.SubStockId;
item.StockCode = dto.StockCode; item.StockCode = dto.StockCode;
item.OrgCode = dto.OrgCode; item.OrgCode = dto.OrgCode;
item.OrgId = task.Details.Select(x=>x.OrgId).FirstOrDefault(); item.OrgId = task.Details.Select(x => x.OrgId).FirstOrDefault();
}); });
//3.3添加到临时集合中 //3.3添加到临时集合中
temps.AddRange(dets); temps.AddRange(dets);
@@ -325,7 +325,8 @@ namespace WMS.Web.Domain.Services
task.Details.ForEach(x => task.Details.ForEach(x =>
{ {
var current_entityDet_matQty = entity.Details.Where(t => t.MaterialId == x.MaterialId).Sum(t => t.Qty); var current_entityDet_matQty = entity.Details.Where(t => t.MaterialId == x.MaterialId).Sum(t => t.Qty);
if (x.AccruedQty > current_entityDet_matQty) { if (x.AccruedQty > current_entityDet_matQty)
{
x.ReceiveQty = x.ReceiveQty + current_entityDet_matQty; x.ReceiveQty = x.ReceiveQty + current_entityDet_matQty;
x.DeliveredQty = x.ReceiveQty; x.DeliveredQty = x.ReceiveQty;
} }