This commit is contained in:
tongfei
2024-01-05 15:32:06 +08:00
parent c9e368d82e
commit 765cec3c85
6 changed files with 126 additions and 30 deletions

View File

@@ -3412,6 +3412,26 @@
仓库
</summary>
</member>
<member name="T:WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto">
<summary>
盘点用的-序列号对应箱和物料
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto.SerialNumber">
<summary>
序列号
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto.MaterialId">
<summary>
物料ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Inventory.SerialNumbersBoxInventoryDto.BoxId">
<summary>
wms箱ID
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.Login.AccessTokenDto.Token">
<summary>
授权token -- 给前端用的验证token

View File

@@ -250,6 +250,26 @@
物料库存数量
</summary>
</member>
<member name="T:WMS.Web.Domain.Entitys.BoxInventoryDetailsSerialNumbers">
<summary>
箱库存明细表-对应的序列号表
</summary>
</member>
<member name="P:WMS.Web.Domain.Entitys.BoxInventoryDetailsSerialNumbers.Id">
<summary>
ID
</summary>
</member>
<member name="P:WMS.Web.Domain.Entitys.BoxInventoryDetailsSerialNumbers.DetailId">
<summary>
上级明细ID
</summary>
</member>
<member name="P:WMS.Web.Domain.Entitys.BoxInventoryDetailsSerialNumbers.SerialNumber">
<summary>
序列号
</summary>
</member>
<member name="T:WMS.Web.Domain.Entitys.ChangeBoxRecord">
<summary>
wms改箱记录

View File

@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace WMS.Web.Core.Dto.Inventory
{
/// <summary>
/// 盘点用的-序列号对应箱和物料
/// </summary>
public class SerialNumbersBoxInventoryDto
{
/// <summary>
/// 序列号
/// </summary>
public string SerialNumber { get; set; }
/// <summary>
/// 物料ID
/// </summary>
public int MaterialId { get; set; }
/// <summary>
/// wms箱ID
/// </summary>
public int BoxId { get; set; }
}
}

View File

@@ -0,0 +1,31 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text;
using WMS.Web.Core;
namespace WMS.Web.Domain.Entitys
{
/// <summary>
/// 箱库存明细表-对应的序列号表
/// </summary>
[Serializable]
[Table("t_wms_box_inventory_details_serialbumbers")]
public class BoxInventoryDetailsSerialNumbers : EntityBase
{
/// <summary>
/// ID
/// </summary>
public override int Id { get; set; }
/// <summary>
/// 上级明细ID
/// </summary>
public int DetailId { get; set; }
/// <summary>
/// 序列号
/// </summary>
public string SerialNumber { get; set; }
}
}

View File

@@ -51,7 +51,7 @@ namespace WMS.Web.Domain.IService
/// <param name="dtoDatas"></param>
/// <param name="isTransaction"></param>
/// <returns></returns>
Task<Result> GenerateTakeBox(List<TakeStock> dtoDatas, bool isTransaction);
Task<Result> GenerateTakeBox(List<TakeStock> dtoDatas, List<SerialNumbersBoxInventoryDto> serNubBoxDto, bool isTransaction);
/// <summary>
/// 入库单-箱库存的变更

View File

@@ -296,7 +296,7 @@ namespace WMS.Web.Domain.Services
/// <param name="dtoDatas"></param>
/// <param name="isTransaction"></param>
/// <returns></returns>
public async Task<Result> GenerateTakeBox(List<TakeStock> dtoDatas, bool isTransaction)
public async Task<Result> GenerateTakeBox(List<TakeStock> dtoDatas, List<SerialNumbersBoxInventoryDto> serNubBoxDto, bool isTransaction)
{
//1.判断来源数据是否存在
if (dtoDatas == null || dtoDatas.Count == 0)
@@ -369,7 +369,7 @@ namespace WMS.Web.Domain.Services
generateDtoList.AddRange(generateDtoList_in);
generateDtoList.AddRange(generateDtoList_out);
//提交处理
var result = await this.ExeTakeBox(generateDtoList, isTransaction);
var result = await this.ExeTakeBox(generateDtoList, serNubBoxDto, isTransaction);
if (!result.IsSuccess)
return result;
@@ -1146,7 +1146,7 @@ namespace WMS.Web.Domain.Services
/// <param name="dtoDatas"></param>
/// <param name="isTransaction"></param>
/// <returns></returns>
private async Task<Result> ExeTakeBox(List<BoxInventoryTakeGenerateDto> dtoDatas, bool isTransaction)
private async Task<Result> ExeTakeBox(List<BoxInventoryTakeGenerateDto> dtoDatas, List<SerialNumbersBoxInventoryDto> serNubBoxDto, bool isTransaction)
{
//1.判断来源数据是否存在
if (dtoDatas == null || dtoDatas.Count == 0)
@@ -1191,19 +1191,19 @@ namespace WMS.Web.Domain.Services
}
});
//找到:序列号不属于当前箱;找到后对应的箱子进行箱库存变更序列号
foreach (var item in dto.Details)
{
foreach (var itemSerNmb in item.SerialNumbers)
{
var current_item_SerNb = serialNumbers.Where(x => x.SerialNumber == itemSerNmb).FirstOrDefault();
if (current_item_SerNb != null && current_item_SerNb.BoxId != dto.BoxId)
{
out_serNubs.Add(current_item_SerNb);
}
}
////找到:序列号不属于当前箱;找到后对应的箱子进行箱库存变更序列号
//foreach (var item in dto.Details)
//{
// foreach (var itemSerNmb in item.SerialNumbers)
// {
// var current_item_SerNb = serialNumbers.Where(x => x.SerialNumber == itemSerNmb).FirstOrDefault();
// if (current_item_SerNb != null && current_item_SerNb.BoxId != dto.BoxId)
// {
// out_serNubs.Add(current_item_SerNb);
// }
// }
}
//}
//3.4明细添加新的物料
@@ -1254,18 +1254,18 @@ namespace WMS.Web.Domain.Services
}
}
});
//找到:序列号不属于当前箱;找到后对应的箱子进行箱库存变更序列号
foreach (var item in dto.Details)
{
foreach (var itemSerNmb in item.SerialNumbers)
{
var current_item_SerNb = serialNumbers.Where(x => x.SerialNumber == itemSerNmb).FirstOrDefault();
if (current_item_SerNb != null && current_item_SerNb.BoxId != dto.BoxId)
{
out_serNubs.Add(current_item_SerNb);
}
}
}
////找到:序列号不属于当前箱;找到后对应的箱子进行箱库存变更序列号
//foreach (var item in dto.Details)
//{
// foreach (var itemSerNmb in item.SerialNumbers)
// {
// var current_item_SerNb = serialNumbers.Where(x => x.SerialNumber == itemSerNmb).FirstOrDefault();
// if (current_item_SerNb != null && current_item_SerNb.BoxId != dto.BoxId)
// {
// out_serNubs.Add(current_item_SerNb);
// }
// }
//}
//3.4明细添加新的物料
foreach (var detItem in dto.Details)
@@ -1306,7 +1306,7 @@ namespace WMS.Web.Domain.Services
}
//盘点单-箱库存的变更:第二步骤,为了不是当前扫的所在箱里的序列号;如果是其它箱需要减箱库存
var result = await this.ExeTaskBox(out_serNubs, isTransaction);
var result = await this.ExeTaskBox(serNubBoxDto, isTransaction);
if (!result.IsSuccess)
return result;
@@ -1349,7 +1349,7 @@ namespace WMS.Web.Domain.Services
/// <param name="out_SerialNumbers"></param>
/// <param name="isTransaction"></param>
/// <returns></returns>
private async Task<Result> ExeTaskBox(List<SerialNumbers> out_SerialNumbers, bool isTransaction)
private async Task<Result> ExeTaskBox(List<SerialNumbersBoxInventoryDto> out_SerialNumbers, bool isTransaction)
{
var boxIds = out_SerialNumbers.GroupBy(x => x.BoxId).Select(x => x.Key).ToList();
var boxInventorys = await _boxInventoryRepositories.GetList(boxIds);