Browse Source

修改 bug

集成Redis
郑勃旭 2 years ago
parent
commit
9ec043dadf
  1. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Notes/ProductReceiptNotes/ProductReceiptNoteManager.cs
  2. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Orders/PurchaseOrders/PurchaseOrderManager.cs
  3. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/BackFlushNoteEventHandler.cs
  4. 31
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/ProductReceiptNoteEventHandler.cs

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Notes/ProductReceiptNotes/ProductReceiptNoteManager.cs

@ -42,7 +42,7 @@ public class ProductReceiptNoteManager : SfsStoreManagerBase<ProductReceiptNote,
public override async Task<ProductReceiptNote> CreateAsync(ProductReceiptNote productReceiptNote) public override async Task<ProductReceiptNote> CreateAsync(ProductReceiptNote productReceiptNote)
{ {
if (string.IsNullOrEmpty(productReceiptNote.ProductionPlanNumber) == false) if (string.IsNullOrEmpty(productReceiptNote.ProductionPlanNumber) == false)
{ {
//更新生产计划 //更新生产计划
var productionPlan = await _productionPlanRepository.FindAsync(c => c.Number == productReceiptNote.ProductionPlanNumber, true).ConfigureAwait(false); var productionPlan = await _productionPlanRepository.FindAsync(c => c.Number == productReceiptNote.ProductionPlanNumber, true).ConfigureAwait(false);

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Orders/PurchaseOrders/PurchaseOrderManager.cs

@ -54,7 +54,6 @@ public class PurchaseOrderManager : SfsStoreManagerBase<PurchaseOrder, PurchaseO
purchaseOrder.SetIdAndNumberWithDetails(GuidGenerator, purchaseOrder.Number); purchaseOrder.SetIdAndNumberWithDetails(GuidGenerator, purchaseOrder.Number);
//await PublishCreatedAsync(purchaseOrder).ConfigureAwait(false); //await PublishCreatedAsync(purchaseOrder).ConfigureAwait(false);
//不要用base.create 要不会把number覆盖 //不要用base.create 要不会把number覆盖
await PublishCreatedAsync(purchaseOrder).ConfigureAwait(false);
return await Repository.InsertAsync(purchaseOrder).ConfigureAwait(false); return await Repository.InsertAsync(purchaseOrder).ConfigureAwait(false);
} }

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/BackFlushNoteEventHandler.cs

@ -73,6 +73,7 @@ public class BackFlushNoteEventHandler
transaction.LocationCode=detail.LocationCode; transaction.LocationCode=detail.LocationCode;
transaction.LocationErpCode=detail.LocationErpCode; transaction.LocationErpCode=detail.LocationErpCode;
transaction.WarehouseCode=detail.WarehouseCode; transaction.WarehouseCode=detail.WarehouseCode;
transaction.Status = EnumInventoryStatus.OK;
transactions.Add(transaction); transactions.Add(transaction);
} }

31
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/ProductReceiptNoteEventHandler.cs

@ -1,7 +1,9 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp.EventBus; using Volo.Abp.EventBus;
using Volo.Abp.Uow; using Volo.Abp.Uow;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Shared.Event; using Win_in.Sfs.Shared.Event;
using Win_in.Sfs.Wms.Inventory.Application.Contracts; using Win_in.Sfs.Wms.Inventory.Application.Contracts;
@ -17,6 +19,14 @@ public class ProductReceiptNoteEventHandler
{ {
private const EnumTransInOut TransInOut = EnumTransInOut.In; private const EnumTransInOut TransInOut = EnumTransInOut.In;
private const EnumTransType TransType = EnumTransType.ProductReceipt; private const EnumTransType TransType = EnumTransType.ProductReceipt;
private readonly IItemBasicAppService _itemBasicAppService;
private readonly ILocationAppService _locationAppService;
public ProductReceiptNoteEventHandler(IItemBasicAppService itemBasicAppService, ILocationAppService locationAppService)
{
_itemBasicAppService = itemBasicAppService;
_locationAppService = locationAppService;
}
[UnitOfWork] [UnitOfWork]
public virtual async Task HandleEventAsync(SfsCreatedEntityEventData<ProductReceiptNote> eventData) public virtual async Task HandleEventAsync(SfsCreatedEntityEventData<ProductReceiptNote> eventData)
@ -30,7 +40,7 @@ public class ProductReceiptNoteEventHandler
{ {
var inboundTransactions = new List<TransactionEditInput>(); var inboundTransactions = new List<TransactionEditInput>();
inboundTransactions.AddRange(BuildTransactions(productReceiptNote)); inboundTransactions.AddRange(await BuildTransactions(productReceiptNote));
await TransactionAppService.AddManyAsync(inboundTransactions).ConfigureAwait(false); await TransactionAppService.AddManyAsync(inboundTransactions).ConfigureAwait(false);
@ -51,13 +61,13 @@ public class ProductReceiptNoteEventHandler
//如果要做库存事务汇总,可以修改此处 //如果要做库存事务汇总,可以修改此处
foreach (var productReceiptNote in productReceiptNotes) foreach (var productReceiptNote in productReceiptNotes)
{ {
inboundTransactions.AddRange(BuildTransactions(productReceiptNote)); inboundTransactions.AddRange(await BuildTransactions(productReceiptNote));
} }
await TransactionAppService.AddManyAsync(inboundTransactions).ConfigureAwait(false); await TransactionAppService.AddManyAsync(inboundTransactions).ConfigureAwait(false);
} }
private List<TransactionEditInput> BuildTransactions(ProductReceiptNote productReceiptNote) private async Task<List<TransactionEditInput>> BuildTransactions(ProductReceiptNote productReceiptNote)
{ {
var transactionCreateInputs = new List<TransactionEditInput>(); var transactionCreateInputs = new List<TransactionEditInput>();
//构造库存入库创建Input //构造库存入库创建Input
@ -65,6 +75,21 @@ public class ProductReceiptNoteEventHandler
{ {
var transaction = ObjectMapper.Map<ProductReceiptNoteDetail, TransactionEditInput>(detail); var transaction = ObjectMapper.Map<ProductReceiptNoteDetail, TransactionEditInput>(detail);
var itemBasicDto= await _itemBasicAppService.GetByCodeAsync(detail.ItemCode).ConfigureAwait(false);
;
detail.ItemDesc1 = itemBasicDto.Desc1;
detail.ItemDesc2 = itemBasicDto.Desc2;
detail.ItemName=itemBasicDto.Name;
detail.StdPackQty=itemBasicDto.StdPackQty;
var erpLocationDtos= await _locationAppService.GetListByTypesAndErpCodeAsync(new List<EnumLocationType> { EnumLocationType.WIP },
detail.LocationErpCode).ConfigureAwait(false);
var erpLocationDto = erpLocationDtos.First();
detail.LocationArea = erpLocationDto.Code;
detail.LocationGroup = erpLocationDto.LocationGroupCode;
detail.LocationErpCode= erpLocationDto.Code;
detail.LocationCode= erpLocationDto.Code;
transaction.TransType = TransType; transaction.TransType = TransType;
transaction.TransInOut = TransInOut; transaction.TransInOut = TransInOut;
transaction.WarehouseCode = productReceiptNote.WarehouseCode; transaction.WarehouseCode = productReceiptNote.WarehouseCode;

Loading…
Cancel
Save