diff --git a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/IncomingToWmsExtensions.cs b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/IncomingToWmsExtensions.cs index 6c7ca0d7a..5f5c36cc9 100644 --- a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/IncomingToWmsExtensions.cs +++ b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/IncomingToWmsExtensions.cs @@ -85,9 +85,9 @@ public static class IncomingToWmsExtensions } public static async Task HandleErpLocationItemsAsync(this IncomingToWms incomingConverted, PeriodicBackgroundWorkerContext workerContext) { - //var erpLocationItem = JsonSerializer.Deserialize(incomingConverted.DataContent); - //var erpLocationItemAppService = workerContext.ServiceProvider.GetRequiredService(); - //await erpLocationItemAppService.UpsertAsync(erpLocationItem).ConfigureAwait(false); + var erpLocationItem = JsonSerializer.Deserialize(incomingConverted.DataContent); + var erpLocationItemAppService = workerContext.ServiceProvider.GetRequiredService(); + await erpLocationItemAppService.UpsertAsync(erpLocationItem).ConfigureAwait(false); } public static async Task HandleErpLocationsAsync(this IncomingToWms incomingConverted, PeriodicBackgroundWorkerContext workerContext) { diff --git a/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Application.Contracts/Balances/IBalanceAppService.cs b/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Application.Contracts/Balances/IBalanceAppService.cs index 4fc6aa103..e1df84285 100644 --- a/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Application.Contracts/Balances/IBalanceAppService.cs +++ b/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Application.Contracts/Balances/IBalanceAppService.cs @@ -177,4 +177,5 @@ public interface IBalanceAppService string itemCode, string locationCode, EnumInventoryStatus status,string lot); Task> GetRecommendBalancesByLocationsExpectOldBalancesAsync(RecommendBalanceRequestInput input); Task CountPlanActiveAsync(string packingCode, string itemCode, string lot, string locationCode, EnumInventoryStatus status, DateTime datetime, string countPlanNumber); + Task> GetUsableListByTypeAsync(RecommendBalanceRequestInput input); } diff --git a/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Application/Balances/BalanceAppService.cs b/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Application/Balances/BalanceAppService.cs index ff20cc1b6..597e5b0c4 100644 --- a/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Application/Balances/BalanceAppService.cs +++ b/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Application/Balances/BalanceAppService.cs @@ -687,7 +687,25 @@ public class BalanceAppService return dtos; } + /// + /// 获取可用库存列表 + /// + /// + /// + /// + [HttpGet("usable-list-by-type")] + public virtual async Task> GetUsableListByTypeAsync(RecommendBalanceRequestInput input) + { + List locationCodes = new List(); + var locations=await _locationAclService.GetListByTypesAsync(input.LocationTypes).ConfigureAwait(false); + locationCodes= locations.Select(location=>location.Code).ToList(); + var inventoryBalances = await _balanceManager + .GetUsableListAsync(input.ItemCode, locationCodes, input.Statuses, input.IsPackingCode).ConfigureAwait(false); + + var dtos = ObjectMapper.Map, List>(inventoryBalances); + return dtos; + } /// /// pda发料执行查询使用 /// diff --git a/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain/Transactions/Transaction.cs b/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain/Transactions/Transaction.cs index c77e039f6..2996f4c6d 100644 --- a/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain/Transactions/Transaction.cs +++ b/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain/Transactions/Transaction.cs @@ -238,6 +238,7 @@ public class Transaction : SfsInventoryAggregateRootBase ItemName = item.Name; ItemDesc1 = item.Desc1; ItemDesc2 = item.Desc2; + StdPackQty = item.StdPackQty; } if (string.IsNullOrEmpty(WarehouseCode)) {