diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml index 1b7b53eb..66833517 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml @@ -3242,6 +3242,31 @@ 单位 + + + 即时库存明细汇总 + + + + + 物料ID + + + + + 组织编码 + + + + + 仓库编码 + + + + + 库存量 + + 物料收发明细-生成dto diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml index 5ea48dfa..e46f8466 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml @@ -2794,6 +2794,15 @@ + + + 获取即时库存明细汇总 + + + + + + 物料收发明细:服务接口 @@ -4187,6 +4196,15 @@ + + + 获取即时库存明细汇总 + + + + + + 物料收发明细:服务 diff --git a/src/WMS.Web.Core/Dto/Inventory/InventoryDetailsSummaryResponse.cs b/src/WMS.Web.Core/Dto/Inventory/InventoryDetailsSummaryResponse.cs new file mode 100644 index 00000000..44d9389e --- /dev/null +++ b/src/WMS.Web.Core/Dto/Inventory/InventoryDetailsSummaryResponse.cs @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace WMS.Web.Core.Dto.Inventory +{ + /// + /// 即时库存明细汇总 + /// + public class InventoryDetailsSummaryResponse + { + /// + /// 物料ID + /// + public int MaterialId { get; set; } + /// + /// 组织编码 + /// + public string OrgCode { get; set; } + /// + /// 仓库编码 + /// + public string StockCode { get; set; } + /// + /// 库存量 + /// + public decimal Qty { get; set; } + } +} diff --git a/src/WMS.Web.Domain/IService/IInventoryDetailsService.cs b/src/WMS.Web.Domain/IService/IInventoryDetailsService.cs index 0b5a88bf..b19f7bd6 100644 --- a/src/WMS.Web.Domain/IService/IInventoryDetailsService.cs +++ b/src/WMS.Web.Domain/IService/IInventoryDetailsService.cs @@ -19,5 +19,14 @@ namespace WMS.Web.Domain.IService /// /// Task GenerateInventoryDetails(List dtos, bool isTransaction); + + /// + /// 获取即时库存明细汇总 + /// + /// + /// + /// + /// + Task> GetInventoryDetailsSummary(List mids, List stockCodes, List orgCodes); } } diff --git a/src/WMS.Web.Domain/Services/BoxInventoryService.cs b/src/WMS.Web.Domain/Services/BoxInventoryService.cs index 03fd1ee2..0bdfdb9d 100644 --- a/src/WMS.Web.Domain/Services/BoxInventoryService.cs +++ b/src/WMS.Web.Domain/Services/BoxInventoryService.cs @@ -1354,6 +1354,7 @@ namespace WMS.Web.Domain.Services var boxIds = out_SerialNumbers.GroupBy(x => x.BoxId).Select(x => x.Key).ToList(); var boxInventorys = await _boxInventoryRepositories.GetList(boxIds); + _logger.LogInformation("盘点-箱库存变更:第二步-》" + JsonConvert.SerializeObject(out_SerialNumbers)); var delete_ids1 = new List(); var update_entitys1 = new List(); var InventoryDetailsGenerateDto1 = new List(); @@ -1399,6 +1400,7 @@ namespace WMS.Web.Domain.Services var isSuccess = true; //4.数据库更新操作:更新和添加 + _logger.LogInformation("盘点-箱库存变更:第二步-》更新的条目:" + update_entitys1.Count); if (update_entitys1.Count != 0) { isSuccess = await _boxInventoryRepositories.UpdateRange(update_entitys1, isTransaction); diff --git a/src/WMS.Web.Domain/Services/InventoryDetailsService.cs b/src/WMS.Web.Domain/Services/InventoryDetailsService.cs index ac4e16df..1360207b 100644 --- a/src/WMS.Web.Domain/Services/InventoryDetailsService.cs +++ b/src/WMS.Web.Domain/Services/InventoryDetailsService.cs @@ -104,5 +104,26 @@ namespace WMS.Web.Domain.Services } return Result.ReSuccess(); } + + /// + /// 获取即时库存明细汇总 + /// + /// + /// + /// + /// + public async Task> GetInventoryDetailsSummary(List mids, List stockCodes, List orgCodes) + { + var inventoryDetails = await _inventoryDetailsRepositories.GetListBy(mids, stockCodes, orgCodes); + var resultList = inventoryDetails.GroupBy(x => new { MaterialId = x.MaterialId, StockCode = x.StockCode, OrgCode = x.OrgCode }) + .Select(x => new InventoryDetailsSummaryResponse() + { + MaterialId=x.Key.MaterialId, + StockCode=x.Key.StockCode, + OrgCode=x.Key.OrgCode, + Qty=x.Sum(t=>t.Qty) + }).ToList(); + return resultList; + } } }