优化接口

This commit is contained in:
tongfei
2024-01-05 16:24:25 +08:00
parent 2c8827fc7e
commit c02207d263

View File

@@ -1157,9 +1157,9 @@ namespace WMS.Web.Domain.Services
var InventoryDetailsGenerateDto = new List<InventoryDetailsGenerateDto>(); var InventoryDetailsGenerateDto = new List<InventoryDetailsGenerateDto>();
var serNubs = dtoDatas.SelectMany(x => x.Details).SelectMany(x => x.SerialNumbers).ToList(); //var serNubs = dtoDatas.SelectMany(x => x.Details).SelectMany(x => x.SerialNumbers).ToList();
var serialNumbers = await _serialNumbersRepositories.GetEntityList(serNubs); //var serialNumbers = await _serialNumbersRepositories.GetEntityList(serNubs);
var out_serNubs = new List<SerialNumbers>(); //var out_serNubs = new List<SerialNumbers>();
//2.获取“箱库存集合” //2.获取“箱库存集合”
var boxIds = dtoDatas.GroupBy(x => x.BoxId).Select(x => x.Key).ToList(); var boxIds = dtoDatas.GroupBy(x => x.BoxId).Select(x => x.Key).ToList();
@@ -1360,9 +1360,30 @@ namespace WMS.Web.Domain.Services
var InventoryDetailsGenerateDto1 = new List<InventoryDetailsGenerateDto>(); var InventoryDetailsGenerateDto1 = new List<InventoryDetailsGenerateDto>();
foreach (var item in boxInventorys) foreach (var item in boxInventorys)
{ {
//var update_entity = item;
//update_entity.Details = new List<BoxInventoryDetails>();
item.Details.ForEach(x =>
{
var current_sers_info = out_SerialNumbers.Where(o => o.BoxId == item.BoxId && o.MaterialId == x.MaterialId).ToList();
if (current_sers_info != null && current_sers_info.Count != 0)
{
x.Qty=x.Qty- current_sers_info.Count;
var crrent_sers = current_sers_info.Select(t => t.SerialNumber).ToList();
x.SerialNumbers.RemoveAll(r => crrent_sers.Contains(r));
//3.2.2组装即时库存dto
var inventoryDet = new InventoryDetailsGenerateDto();
inventoryDet.MaterialId = x.MaterialId;
inventoryDet.OrgCode = item.OrgCode;
inventoryDet.StockCode = item.StockCode;
inventoryDet.SubStockId = item.SubStockId;
inventoryDet.Qty = current_sers_info.Count;
inventoryDet.InventoryInOutType = (int)InventoryInOutType.Out;
//3.2.2即时库存:修改的集合
InventoryDetailsGenerateDto1.Add(inventoryDet);
}
});
//var update_entity = item;
//foreach (var itemDet in item.Details) //foreach (var itemDet in item.Details)
//{ //{
// var current_sers_info = out_SerialNumbers.Where(x => x.BoxId == item.BoxId && x.MaterialId == itemDet.MaterialId).ToList(); // var current_sers_info = out_SerialNumbers.Where(x => x.BoxId == item.BoxId && x.MaterialId == itemDet.MaterialId).ToList();
@@ -1389,13 +1410,13 @@ namespace WMS.Web.Domain.Services
// update_entity.Details.Add(itemDet); // update_entity.Details.Add(itemDet);
//} //}
////4.1判断要修改的箱库存对象是否所有的物料库存的数量都为0“是”则删除该箱库存,"否"则修改; //4.1判断要修改的箱库存对象是否所有的物料库存的数量都为0“是”则删除该箱库存,"否"则修改;
//var isAllNoInventory = update_entity.Details.All(x => x.Qty == 0); var isAllNoInventory = item.Details.All(x => x.Qty == 0);
//if (isAllNoInventory) if (isAllNoInventory)
// delete_ids1.Add(update_entity.Id); delete_ids1.Add(item.Id);
//else else
// //4.2添加要更新的箱库存实体 //4.2添加要更新的箱库存实体
// update_entitys1.Add(update_entity); update_entitys1.Add(item);
} }
var isSuccess = true; var isSuccess = true;