非采购入库-优化

This commit is contained in:
tongfei
2023-11-25 16:46:02 +08:00
parent 5b04e23a6d
commit 45e3338247
5 changed files with 49 additions and 6 deletions

View File

@@ -286,10 +286,8 @@ namespace WMS.Web.Domain.Services
item.BoxId = box.BoxId;
item.SubStockId = dto.SubStockId;
item.StockCode = dto.StockCode;
item.OrgCode = dto.OrgCode;
var taskDet = task.Details.Where(x => x.MaterialId == item.MaterialId).FirstOrDefault();
item.SupplierId = taskDet.SupplierId;
item.OrgId = taskDet.OrgId;
item.OrgCode = dto.OrgCode;
item.OrgId = task.Details.Select(x=>x.OrgId).FirstOrDefault();
});
//3.3添加到临时集合中
temps.AddRange(dets);
@@ -299,11 +297,45 @@ namespace WMS.Web.Domain.Services
//4.创建
entity.Create(loginInfo.UserInfo.StaffId);
//序列号集:箱里面的
var serialNumbers = await _serialNumbersRepositories.GetEntityListByBoxIds(dto.Boxs.GroupBy(x => x.BoxId).Select(x => x.Key).ToList());
if (dto.ShelfMethod == (int)ShelfMethod.Box)
{
//赋值序列号
entity.Details.ForEach(x =>
{
var current_box_serNums = serialNumbers.Where(t => t.BoxId == x.BoxId).ToList();
if (current_box_serNums != null)
{
var current_box_mat_serNums = current_box_serNums.Where(t => t.MaterialId == x.MaterialId).Select(t => t.SerialNumber).ToList();
x.SerialNumbers.AddRange(current_box_mat_serNums);
}
});
}
//5.1保存入库单信息
entity = await _inStockRepositories.Add(entity, isTransaction);
if (entity == null)
return Result.ReFailure(ResultCodes.DateWriteError);
//同步金蝶后,反写任务单的已交数量
if (task != null)
{
task.Details.ForEach(x =>
{
var current_entityDet_matQty = entity.Details.Where(t => t.MaterialId == x.MaterialId && t.SupplierId == x.SupplierId).Sum(t => t.Qty);
if (x.AccruedQty > current_entityDet_matQty) {
x.ReceiveQty = x.ReceiveQty + current_entityDet_matQty;
x.DeliveredQty = x.ReceiveQty;
}
});
task.NoPurchaseShelf(loginInfo.UserInfo.StaffId);
task = await _inStockTaskRepositories.Update(task, isTransaction);
if (task == null)
return Result.ReFailure(ResultCodes.DateWriteError);
}
//6.当按产品上架:就要调用改箱的操作;
if (dto.ShelfMethod == (int)ShelfMethod.Product)
{