From 9afc872c34db3440717df6b56412841c8c6089f7 Mon Sep 17 00:00:00 2001 From: tongfei <244188119@qq.com> Date: Mon, 18 Dec 2023 10:34:14 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AE=B1=E5=BA=93=E5=AD=98=E8=8E=B7=E5=8F=96-?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml | 15 +++++++ .../Dto/Inventory/BoxTaskGenerateDto.cs | 22 ++++++++++ .../Services/BoxInventoryService.cs | 43 +++++++++++++++++-- .../BoxInventoryRepositories.cs | 13 +++--- 4 files changed, 83 insertions(+), 10 deletions(-) create mode 100644 src/WMS.Web.Core/Dto/Inventory/BoxTaskGenerateDto.cs diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml index 66e25ad2..2879b93a 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml @@ -2997,6 +2997,21 @@ 序列号集 + + + 盘点-原来箱子 + + + + + 箱子ID + + + + + 类型:1为入库,2为出库 + + 即时库存明细:生成dto diff --git a/src/WMS.Web.Core/Dto/Inventory/BoxTaskGenerateDto.cs b/src/WMS.Web.Core/Dto/Inventory/BoxTaskGenerateDto.cs new file mode 100644 index 00000000..11745bd0 --- /dev/null +++ b/src/WMS.Web.Core/Dto/Inventory/BoxTaskGenerateDto.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace WMS.Web.Core.Dto.Inventory +{ + /// + /// 盘点-原来箱子 + /// + public class BoxTaskGenerateDto + { + /// + /// 箱子ID + /// + public int BoxId { get; set; } + + /// + /// 类型:1为入库,2为出库 + /// + public int InventoryInOutType { get; set; } + } +} diff --git a/src/WMS.Web.Domain/Services/BoxInventoryService.cs b/src/WMS.Web.Domain/Services/BoxInventoryService.cs index b9ec0f33..428fd470 100644 --- a/src/WMS.Web.Domain/Services/BoxInventoryService.cs +++ b/src/WMS.Web.Domain/Services/BoxInventoryService.cs @@ -1276,10 +1276,45 @@ namespace WMS.Web.Domain.Services return Result.ReSuccess(); } - //private async Task ExeTaskBox(List serNubs,bool isTransaction) - //{ - - //} + private async Task ExeTaskBox(List sourceBox,List serNubs, bool isTransaction) + { + //1.先通过序列号找到-序列号信息集合 + var serialNumbers = await _serialNumbersRepositories.GetEntityList(serNubs); + //2.找到序列号对应的boxId + var destBoxIds = serialNumbers.GroupBy(x => x.BoxId).Select(x => x.Key).ToList(); + //3.找到box对应的箱库存 + var boxInventorys = await _boxInventoryRepositories.GetList(destBoxIds); + + var delete_ids = new List(); + var update_entitys = new List(); + + ////遍历 + //foreach (var destBoxId in destBoxIds) + //{ + // var sourBox= sourceBox.Where(x => x.BoxId == destBoxId).FirstOrDefault(); + // var destBoxInvent= boxInventorys.Where(x => x.BoxId == destBoxId).FirstOrDefault(); + // if (sourBox==null && destBoxInvent!=null) + // { + // if(destBoxInvent) + // var updateEntity = boxInvent; + // updateEntity.Details = boxInvent.Details; + // //3.3序列号重新给值:已有的物料 + // updateEntity.Details.ForEach(x => + // { + // foreach (var detItem in dto.Details) + // { + // if (x.MaterialId == detItem.MaterialId) + // { + // x.Qty = x.Qty + detItem.Qty; + // x.SerialNumbers = detItem.SerialNumbers; + // } + // } + // }); + // } + //} + return null; + + } /// /// 入库单-箱库存变更 diff --git a/src/WMS.Web.Repositories/BoxInventoryRepositories.cs b/src/WMS.Web.Repositories/BoxInventoryRepositories.cs index 80551dda..f2e8a1c7 100644 --- a/src/WMS.Web.Repositories/BoxInventoryRepositories.cs +++ b/src/WMS.Web.Repositories/BoxInventoryRepositories.cs @@ -139,14 +139,15 @@ namespace WMS.Web.Repositories response.Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, _loginRepositories.CompanyId, response.StockCode + response.OrgCode); response.SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, response.SubStockId); response.Details = _mapper.Map>(entity.Details); + response.Details.ForEach(x => + { + x.MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, x.MaterialId); + x.MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, x.MaterialId); + x.Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, x.MaterialId); + }); response.TotalQty = response.Details.Sum(x=>x.Qty); } - response.Details.ForEach(x => - { - x.MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, x.MaterialId); - x.MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, x.MaterialId); - x.Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, x.MaterialId); - }); + return response; }