修改盘点数量不对的问题。

This commit is contained in:
2025-05-27 13:56:25 +08:00
parent 5632a19303
commit a17ed1650c
6 changed files with 27 additions and 4 deletions

View File

@@ -4234,6 +4234,11 @@
wms箱ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto.isNotCount">
<summary>
是否为不计算
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.JuShuiTan.JuShuiTanInventoryRequst.page_index">
<summary>
页码

View File

@@ -22,5 +22,9 @@ namespace WMS.Web.Core.Dto.Inventory
/// wms箱ID
/// </summary>
public int BoxId { get; set; }
/// <summary>
/// 是否为不计算
/// </summary>
public string isNotCount { get; set; }
}
}

View File

@@ -1545,9 +1545,17 @@ namespace WMS.Web.Domain.Services
item.Details.ForEach(x =>
{
var current_sers_info = out_SerialNumbers.Where(o => o.BoxId == item.BoxId && o.MaterialNumber == x.MaterialNumber).ToList();
var current_sers_infoCount = out_SerialNumbers.Where(o => o.BoxId == item.BoxId && o.MaterialNumber == x.MaterialNumber && o.isNotCount!="1").ToList();
if (current_sers_info != null && current_sers_info.Count != 0)
{
x.Qty = x.Qty - current_sers_info.Count;
//if (isNoCount == "1")
//{
//}
//else
//{
x.Qty = x.Qty - current_sers_infoCount.Count;
//}
var crrent_sers = current_sers_info.Select(t => t.SerialNumber).ToList();
x.SerialNumbers.RemoveAll(r => crrent_sers.Contains(r));

View File

@@ -413,7 +413,9 @@ namespace WMS.Web.Domain.Services
{
BoxId = entity.BoxId,
MaterialNumber = d.MaterialNumber,
SerialNumber = s
SerialNumber = s,
isNotCount="0"
});
}
}
@@ -433,7 +435,9 @@ namespace WMS.Web.Domain.Services
{
BoxId = entity.BoxId,
MaterialNumber = d.MaterialNumber,
SerialNumber = s
SerialNumber = s,
isNotCount="1"
});
}
}

View File

@@ -163,11 +163,13 @@ namespace WMS.Web.Repositories
public async Task<List<SerialNumbers>> GetEntityList(List<string> serialNumbers)
{
var res = await _context.SerialNumbers
// .Where(f => serialNumbers.Contains(f.SerialNumber))
.Where(f => serialNumbers.Contains(f.SerialNumber))
.ToListAsync();
var res_c = res.Clone();
var s_e = res.Select(s => s.SerialNumber).ToList();
//var s_e = res.Select(s => s.SerialNumber).ToList();
var s_e = res.Select(s => s.TwoSerialNumber).ToList();
//在序列表里没找到的序列码 则到老ops序列码数据里去处理 list比较 取差集
var s_c = serialNumbers.Except(s_e);
if (s_c.Count() > 0)