回退上架-箱库存优化

This commit is contained in:
tongfei
2023-12-18 14:02:55 +08:00
parent 4258f96205
commit dba406e0e0
3 changed files with 45 additions and 50 deletions

View File

@@ -2441,11 +2441,6 @@
类型1为入库2为出库
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Inventory.BoxInventoryBackGenerateDto.InventoryInOutMethod">
<summary>
出入库存-方式(详情见枚举值)必填1-box按箱2-product按产品
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Inventory.BoxInventoryBackGenerateDto.BoxId">
<summary>
箱ID

View File

@@ -14,10 +14,10 @@ namespace WMS.Web.Core.Dto.Inventory
/// </summary>
public int InventoryInOutType { get; set; }
/// <summary>
/// 出入库存-方式(详情见枚举值)必填1-box按箱2-product按产品
/// </summary>
public int InventoryInOutMethod { get; set; }
///// <summary>
///// 出入库存-方式(详情见枚举值)必填1-box按箱2-product按产品-------弃用
///// </summary>
//public int InventoryInOutMethod { get; set; }
/// <summary>
/// 箱ID

View File

@@ -233,7 +233,7 @@ namespace WMS.Web.Domain.Services
OrgCode = dtoData.OrgCode,
StockCode = dtoData.StockCode,
SubStockId = dtoData.SubStockId,
InventoryInOutMethod = (int)dtoData.Method,
//InventoryInOutMethod = (int)dtoData.Method,
InventoryInOutType = dtoData.Type == BackRecordType.OutstockOn ? (int)InventoryInOutType.In : (int)InventoryInOutType.Out
}).ToList();
@@ -922,27 +922,27 @@ namespace WMS.Web.Domain.Services
addEntity.Details = _mapper.Map<List<BoxInventoryDetails>>(dto.Details);
#region
if (dto.InventoryInOutMethod == (int)InventoryInOutMethod.Box)
/////按箱的-弃用了
//if (dto.InventoryInOutMethod == (int)InventoryInOutMethod.Box)
//{
// //当前箱的序列号
// var current_box_serNums = serialNumbers.Where(t => t.BoxId == dto.BoxId).ToList();
// //赋值序列号
// addEntity.Details.ForEach(x =>
// {
// var current_box_mat_serNums = current_box_serNums.Where(m => m.MaterialId == x.MaterialId).Select(t => t.SerialNumber).ToList();
// x.SerialNumbers.AddRange(current_box_mat_serNums);
// });
//}
//赋值序列号
addEntity.Details.ForEach(x =>
{
//当前箱的序列号
var current_box_serNums = serialNumbers.Where(t => t.BoxId == dto.BoxId).ToList();
//赋值序列号
addEntity.Details.ForEach(x =>
{
var current_box_mat_serNums = current_box_serNums.Where(m => m.MaterialId == x.MaterialId).Select(t => t.SerialNumber).ToList();
x.SerialNumbers.AddRange(current_box_mat_serNums);
});
}
else
{
//赋值序列号
addEntity.Details.ForEach(x =>
{
var current_box_mat_serNums = dto.Details.Where(m => m.MaterialId == x.MaterialId).FirstOrDefault();
if (current_box_mat_serNums != null && current_box_mat_serNums.MaterialId == x.MaterialId)
x.SerialNumbers.AddRange(current_box_mat_serNums.SerialNumbers);
});
}
var current_box_mat_serNums = dto.Details.Where(m => m.MaterialId == x.MaterialId).FirstOrDefault();
if (current_box_mat_serNums != null && current_box_mat_serNums.MaterialId == x.MaterialId)
x.SerialNumbers.AddRange(current_box_mat_serNums.SerialNumbers);
});
#endregion
add_entitys.Add(addEntity);
}
@@ -970,27 +970,27 @@ namespace WMS.Web.Domain.Services
}
#region
if (dto.InventoryInOutMethod == (int)InventoryInOutMethod.Box)
/////按箱的-弃用了
//if (dto.InventoryInOutMethod == (int)InventoryInOutMethod.Box)
//{
// //当前箱的序列号
// var current_box_serNums = serialNumbers.Where(t => t.BoxId == dto.BoxId).ToList();
// //赋值序列号
// update_entity.Details.ForEach(x =>
// {
// var current_box_mat_serNums = current_box_serNums.Where(m => m.MaterialId == x.MaterialId).Select(t => t.SerialNumber).ToList();
// x.SerialNumbers.AddRange(current_box_mat_serNums);
// });
//}
//赋值序列号
update_entity.Details.ForEach(x =>
{
//当前箱的序列号
var current_box_serNums = serialNumbers.Where(t => t.BoxId == dto.BoxId).ToList();
//赋值序列号
update_entity.Details.ForEach(x =>
{
var current_box_mat_serNums = current_box_serNums.Where(m => m.MaterialId == x.MaterialId).Select(t => t.SerialNumber).ToList();
x.SerialNumbers.AddRange(current_box_mat_serNums);
});
}
else
{
//赋值序列号
update_entity.Details.ForEach(x =>
{
var current_box_mat_serNums = dto.Details.Where(m => m.MaterialId == x.MaterialId).FirstOrDefault();
if (current_box_mat_serNums != null && current_box_mat_serNums.MaterialId == x.MaterialId)
x.SerialNumbers.AddRange(current_box_mat_serNums.SerialNumbers);
});
}
var current_box_mat_serNums = dto.Details.Where(m => m.MaterialId == x.MaterialId).FirstOrDefault();
if (current_box_mat_serNums != null && current_box_mat_serNums.MaterialId == x.MaterialId)
x.SerialNumbers.AddRange(current_box_mat_serNums.SerialNumbers);
});
#endregion
update_entitys.Add(update_entity);