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> </summary>
</member> </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"> <member name="P:WMS.Web.Core.Dto.Login.AccessTokenDto.Token">
<summary> <summary>
授权token -- 给前端用的验证token 授权token -- 给前端用的验证token

View File

@@ -250,6 +250,26 @@
物料库存数量 物料库存数量
</summary> </summary>
</member> </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"> <member name="T:WMS.Web.Domain.Entitys.ChangeBoxRecord">
<summary> <summary>
wms改箱记录 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="dtoDatas"></param>
/// <param name="isTransaction"></param> /// <param name="isTransaction"></param>
/// <returns></returns> /// <returns></returns>
Task<Result> GenerateTakeBox(List<TakeStock> dtoDatas, bool isTransaction); Task<Result> GenerateTakeBox(List<TakeStock> dtoDatas, List<SerialNumbersBoxInventoryDto> serNubBoxDto, bool isTransaction);
/// <summary> /// <summary>
/// 入库单-箱库存的变更 /// 入库单-箱库存的变更

View File

@@ -296,7 +296,7 @@ namespace WMS.Web.Domain.Services
/// <param name="dtoDatas"></param> /// <param name="dtoDatas"></param>
/// <param name="isTransaction"></param> /// <param name="isTransaction"></param>
/// <returns></returns> /// <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.判断来源数据是否存在 //1.判断来源数据是否存在
if (dtoDatas == null || dtoDatas.Count == 0) if (dtoDatas == null || dtoDatas.Count == 0)
@@ -369,7 +369,7 @@ namespace WMS.Web.Domain.Services
generateDtoList.AddRange(generateDtoList_in); generateDtoList.AddRange(generateDtoList_in);
generateDtoList.AddRange(generateDtoList_out); generateDtoList.AddRange(generateDtoList_out);
//提交处理 //提交处理
var result = await this.ExeTakeBox(generateDtoList, isTransaction); var result = await this.ExeTakeBox(generateDtoList, serNubBoxDto, isTransaction);
if (!result.IsSuccess) if (!result.IsSuccess)
return result; return result;
@@ -1146,7 +1146,7 @@ namespace WMS.Web.Domain.Services
/// <param name="dtoDatas"></param> /// <param name="dtoDatas"></param>
/// <param name="isTransaction"></param> /// <param name="isTransaction"></param>
/// <returns></returns> /// <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.判断来源数据是否存在 //1.判断来源数据是否存在
if (dtoDatas == null || dtoDatas.Count == 0) if (dtoDatas == null || dtoDatas.Count == 0)
@@ -1191,19 +1191,19 @@ namespace WMS.Web.Domain.Services
} }
}); });
//找到:序列号不属于当前箱;找到后对应的箱子进行箱库存变更序列号 ////找到:序列号不属于当前箱;找到后对应的箱子进行箱库存变更序列号
foreach (var item in dto.Details) //foreach (var item in dto.Details)
{ //{
foreach (var itemSerNmb in item.SerialNumbers) // foreach (var itemSerNmb in item.SerialNumbers)
{ // {
var current_item_SerNb = serialNumbers.Where(x => x.SerialNumber == itemSerNmb).FirstOrDefault(); // var current_item_SerNb = serialNumbers.Where(x => x.SerialNumber == itemSerNmb).FirstOrDefault();
if (current_item_SerNb != null && current_item_SerNb.BoxId != dto.BoxId) // if (current_item_SerNb != null && current_item_SerNb.BoxId != dto.BoxId)
{ // {
out_serNubs.Add(current_item_SerNb); // out_serNubs.Add(current_item_SerNb);
} // }
} // }
} //}
//3.4明细添加新的物料 //3.4明细添加新的物料
@@ -1254,18 +1254,18 @@ namespace WMS.Web.Domain.Services
} }
} }
}); });
//找到:序列号不属于当前箱;找到后对应的箱子进行箱库存变更序列号 ////找到:序列号不属于当前箱;找到后对应的箱子进行箱库存变更序列号
foreach (var item in dto.Details) //foreach (var item in dto.Details)
{ //{
foreach (var itemSerNmb in item.SerialNumbers) // foreach (var itemSerNmb in item.SerialNumbers)
{ // {
var current_item_SerNb = serialNumbers.Where(x => x.SerialNumber == itemSerNmb).FirstOrDefault(); // var current_item_SerNb = serialNumbers.Where(x => x.SerialNumber == itemSerNmb).FirstOrDefault();
if (current_item_SerNb != null && current_item_SerNb.BoxId != dto.BoxId) // if (current_item_SerNb != null && current_item_SerNb.BoxId != dto.BoxId)
{ // {
out_serNubs.Add(current_item_SerNb); // out_serNubs.Add(current_item_SerNb);
} // }
} // }
} //}
//3.4明细添加新的物料 //3.4明细添加新的物料
foreach (var detItem in dto.Details) 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) if (!result.IsSuccess)
return result; return result;
@@ -1349,7 +1349,7 @@ namespace WMS.Web.Domain.Services
/// <param name="out_SerialNumbers"></param> /// <param name="out_SerialNumbers"></param>
/// <param name="isTransaction"></param> /// <param name="isTransaction"></param>
/// <returns></returns> /// <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 boxIds = out_SerialNumbers.GroupBy(x => x.BoxId).Select(x => x.Key).ToList();
var boxInventorys = await _boxInventoryRepositories.GetList(boxIds); var boxInventorys = await _boxInventoryRepositories.GetList(boxIds);