diff --git a/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain/Balances/BalanceManager.cs b/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain/Balances/BalanceManager.cs index 48afaa429..332b5cf70 100644 --- a/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain/Balances/BalanceManager.cs +++ b/be/Modules/Inventory/src/Win_in.Sfs.Wms.Inventory.Domain/Balances/BalanceManager.cs @@ -164,11 +164,16 @@ public class BalanceManager : DomainService, IBalanceManager private async Task CheckErpLocationItemAsync(Transaction transaction) { var erpLocationItem =await _erpLocationItemAclService.GetFirstAsync( transaction.ItemCode, transaction.LocationErpCode).ConfigureAwait(false); - - if (erpLocationItem == null) + + var locationDto=await _locationAclService.GetByCodeAsync(transaction.LocationCode).ConfigureAwait(false); + if (locationDto.Type is not (EnumLocationType.INSP or EnumLocationType.HOLD or EnumLocationType.TRANSPORT)) { - throw new UserFriendlyException($"未找到物品【{transaction.ItemCode}】与ERP储位【{transaction.LocationErpCode}】的开账信息"); - } + if (erpLocationItem == null) + { + throw new UserFriendlyException( + $"未找到物品【{transaction.ItemCode}】与ERP储位【{transaction.LocationErpCode}】的开账信息"); + } + } } ///