From 2a4141f91f721f3fbb8444974eb6f0f29532e168 Mon Sep 17 00:00:00 2001 From: lvzb <35200379@qq.com> Date: Tue, 9 Apr 2024 11:01:33 +0800 Subject: [PATCH] =?UTF-8?q?erp=E5=82=A8=E4=BD=8D=E5=92=8C=E9=9B=B6?= =?UTF-8?q?=E4=BB=B6=E5=AF=B9=E5=BA=94=E5=85=B3=E7=B3=BB=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ErpLocationItems/ErpLocationItemAppService.cs | 9 --------- .../ErpLocationItems/ErpLocationItemEfCoreRepository.cs | 8 +------- .../Balances/BalanceManager.cs | 7 ++++++- 3 files changed, 7 insertions(+), 17 deletions(-) diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ErpLocationItems/ErpLocationItemAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ErpLocationItems/ErpLocationItemAppService.cs index 30c3dd121..fab06e761 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ErpLocationItems/ErpLocationItemAppService.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ErpLocationItems/ErpLocationItemAppService.cs @@ -49,14 +49,5 @@ public class ErpLocationItemAppService var dtos = ObjectMapper.Map, List>(entities); return dtos; } - - - - protected override async Task ValidateImportModelAsync(ErpLocationItemImportInput importInput, List validationRresult) - { - await base.CheckItemBasicItemCodeAsync(importInput.ItemCode, validationRresult).ConfigureAwait(false); - - } - } diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/ErpLocationItems/ErpLocationItemEfCoreRepository.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/ErpLocationItems/ErpLocationItemEfCoreRepository.cs index 41b7b05e0..e6358853d 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/ErpLocationItems/ErpLocationItemEfCoreRepository.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/ErpLocationItems/ErpLocationItemEfCoreRepository.cs @@ -16,16 +16,10 @@ public class ErpLocationItemEfCoreRepository : SfsBaseDataEfCoreRepositoryBase p.ItemCode == entity.ItemCode).ConfigureAwait(false); + var exist = await dbSet.FirstOrDefaultAsync(p => p.ItemCode == entity.ItemCode&&p.ErpLocationCode == entity.ErpLocationCode).ConfigureAwait(false); if (exist == null) { var insRet = await InsertAsync(entity).ConfigureAwait(false); } - else - { - exist.ItemCode = entity.ItemCode; - exist.ErpLocationCode = entity.ErpLocationCode; - - } } } 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 5b481cb05..4f9c8e80d 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 @@ -29,6 +29,7 @@ public class BalanceManager : DomainService, IBalanceManager private readonly IItemBasicAclService _itemBasicAclService; private readonly ILocationAclService _locationAclService; private readonly IItemStoreRelationAclService _itemStoreRelationAclService; + private readonly IErpLocationItemAppService _erpLocationItemAppService; private readonly ISettingManager _settingManager; private readonly IExpectInRepository _expectInRepository; private readonly IExpectOutRepository _expectOutRepository; @@ -41,6 +42,7 @@ public class BalanceManager : DomainService, IBalanceManager , IExpectOutRepository expectOutRepository , IItemStoreRelationAclService itemStoreRelationAclService , ISettingManager settingManager + ,IErpLocationItemAppService erpLocationItemAppService ) { _objectMapper = objectMapper; @@ -51,6 +53,7 @@ public class BalanceManager : DomainService, IBalanceManager _itemStoreRelationAclService = itemStoreRelationAclService; _settingManager = settingManager; _expectOutRepository = expectOutRepository; + _erpLocationItemAppService= erpLocationItemAppService; } #region Modify @@ -159,7 +162,9 @@ public class BalanceManager : DomainService, IBalanceManager /// private async Task CheckErpLocationItemAsync(Transaction transaction) { - if (transaction == null) + var erpLocationItem =await _erpLocationItemAppService.GetFirstAsync(transaction.LocationErpCode, transaction.ItemCode).ConfigureAwait(false); + + if (erpLocationItem == null) { throw new UserFriendlyException($"未找到零件【{transaction.ItemCode}】与ERP储位【{transaction.LocationErpCode}】的开账信息"); }