This commit is contained in:
tongfei
2024-01-05 15:58:22 +08:00
parent 4b691f67fd
commit 2c8827fc7e
2 changed files with 44 additions and 37 deletions

View File

@@ -2587,7 +2587,7 @@
<param name="isTransaction"></param>
<returns></returns>
</member>
<member name="M:WMS.Web.Domain.IService.IBoxInventoryService.GenerateTakeBox(System.Collections.Generic.List{WMS.Web.Domain.Entitys.TakeStock},System.Boolean)">
<member name="M:WMS.Web.Domain.IService.IBoxInventoryService.GenerateTakeBox(System.Collections.Generic.List{WMS.Web.Domain.Entitys.TakeStock},System.Collections.Generic.List{WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto},System.Boolean)">
<summary>
盘点-箱库存的变更
</summary>
@@ -3782,7 +3782,7 @@
<param name="isTransaction"></param>
<returns></returns>
</member>
<member name="M:WMS.Web.Domain.Services.BoxInventoryService.GenerateTakeBox(System.Collections.Generic.List{WMS.Web.Domain.Entitys.TakeStock},System.Boolean)">
<member name="M:WMS.Web.Domain.Services.BoxInventoryService.GenerateTakeBox(System.Collections.Generic.List{WMS.Web.Domain.Entitys.TakeStock},System.Collections.Generic.List{WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto},System.Boolean)">
<summary>
盘点单-箱库存的变更
</summary>
@@ -3834,7 +3834,7 @@
<param name="isTransaction"></param>
<returns></returns>
</member>
<member name="M:WMS.Web.Domain.Services.BoxInventoryService.ExeTakeBox(System.Collections.Generic.List{WMS.Web.Core.Dto.Inventory.BoxInventoryTakeGenerateDto},System.Boolean)">
<member name="M:WMS.Web.Domain.Services.BoxInventoryService.ExeTakeBox(System.Collections.Generic.List{WMS.Web.Core.Dto.Inventory.BoxInventoryTakeGenerateDto},System.Collections.Generic.List{WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto},System.Boolean)">
<summary>
盘点单-箱库存的变更
</summary>
@@ -3842,7 +3842,7 @@
<param name="isTransaction"></param>
<returns></returns>
</member>
<member name="M:WMS.Web.Domain.Services.BoxInventoryService.ExeTaskBox(System.Collections.Generic.List{WMS.Web.Domain.Entitys.SerialNumbers},System.Boolean)">
<member name="M:WMS.Web.Domain.Services.BoxInventoryService.ExeTaskBox(System.Collections.Generic.List{WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto},System.Boolean)">
<summary>
盘点单-箱库存的变更:第二步骤,为了不是当前扫的所在箱里的序列号;如果是其它箱的需要减箱库存
</summary>
@@ -5156,6 +5156,13 @@
<param name="type"></param>
<returns></returns>
</member>
<member name="M:WMS.Web.Domain.Services.TakeStockService.GetSerialNumbersBoxInventory(System.Collections.Generic.List{WMS.Web.Core.Dto.TakeStock.SaveTakeStockRequest})">
<summary>
获取改变了箱的序列号
</summary>
<param name="dto"></param>
<returns></returns>
</member>
<member name="T:WMS.Web.Domain.Values.BackRecordType">
<summary>
出入库回退类型

View File

@@ -1360,42 +1360,42 @@ namespace WMS.Web.Domain.Services
var InventoryDetailsGenerateDto1 = new List<InventoryDetailsGenerateDto>();
foreach (var item in boxInventorys)
{
var update_entity = item;
update_entity.Details = new List<BoxInventoryDetails>();
//var update_entity = item;
//update_entity.Details = new List<BoxInventoryDetails>();
foreach (var itemDet in item.Details)
{
var current_sers_info = out_SerialNumbers.Where(x => x.BoxId == item.BoxId && x.MaterialId == itemDet.MaterialId).ToList();
if (current_sers_info != null && current_sers_info.Count != 0)
{
var uptDet = update_entity.Details.Where(d => d.MaterialId == itemDet.MaterialId).FirstOrDefault();
uptDet.Qty = uptDet.Qty - current_sers_info.Count;
var crrent_sers = current_sers_info.Select(x => x.SerialNumber).ToList();
uptDet.SerialNumbers.RemoveAll(r => crrent_sers.Contains(r));
update_entity.Details.Add(uptDet);
//foreach (var itemDet in item.Details)
//{
// var current_sers_info = out_SerialNumbers.Where(x => x.BoxId == item.BoxId && x.MaterialId == itemDet.MaterialId).ToList();
// if (current_sers_info != null && current_sers_info.Count != 0)
// {
// var uptDet = update_entity.Details.Where(d => d.MaterialId == itemDet.MaterialId).FirstOrDefault();
// uptDet.Qty = uptDet.Qty - current_sers_info.Count;
// var crrent_sers = current_sers_info.Select(x => x.SerialNumber).ToList();
// uptDet.SerialNumbers.RemoveAll(r => crrent_sers.Contains(r));
// update_entity.Details.Add(uptDet);
//3.2.2组装即时库存dto
var inventoryDet = new InventoryDetailsGenerateDto();
inventoryDet.MaterialId = itemDet.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);
}
else
update_entity.Details.Add(itemDet);
}
// //3.2.2组装即时库存dto
// var inventoryDet = new InventoryDetailsGenerateDto();
// inventoryDet.MaterialId = itemDet.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);
// }
// else
// update_entity.Details.Add(itemDet);
//}
//4.1判断要修改的箱库存对象是否所有的物料库存的数量都为0“是”则删除该箱库存,"否"则修改;
var isAllNoInventory = update_entity.Details.All(x => x.Qty == 0);
if (isAllNoInventory)
delete_ids1.Add(update_entity.Id);
else
//4.2添加要更新的箱库存实体
update_entitys1.Add(update_entity);
////4.1判断要修改的箱库存对象是否所有的物料库存的数量都为0“是”则删除该箱库存,"否"则修改;
//var isAllNoInventory = update_entity.Details.All(x => x.Qty == 0);
//if (isAllNoInventory)
// delete_ids1.Add(update_entity.Id);
//else
// //4.2添加要更新的箱库存实体
// update_entitys1.Add(update_entity);
}
var isSuccess = true;