|
|
@ -1,8 +1,10 @@ |
|
|
|
using System.Collections.Generic; |
|
|
|
using System.Linq; |
|
|
|
using System.Threading.Tasks; |
|
|
|
using Microsoft.VisualBasic; |
|
|
|
using Volo.Abp.EventBus; |
|
|
|
using Volo.Abp.Uow; |
|
|
|
using Win_in.Sfs.Shared.Domain.Shared; |
|
|
|
using Win_in.Sfs.Shared.Event; |
|
|
|
using Win_in.Sfs.Wms.Store.Application.Contracts; |
|
|
|
using Win_in.Sfs.Wms.Store.Domain; |
|
|
@ -37,10 +39,44 @@ public class PutawayNoteEventHandler |
|
|
|
{ |
|
|
|
await detail.TrySetLocationAsync(LocationAclService).ConfigureAwait(false); |
|
|
|
} |
|
|
|
var exchangeData = await BuildExchangeDataAsync(StoreEventConsts.WMS, StoreEventConsts.ERP, ExchangeDataType, dtos).ConfigureAwait(false); |
|
|
|
await AddManyAsync(exchangeData).ConfigureAwait(false); |
|
|
|
//EOS
|
|
|
|
var exchangeData_eos = await BuildExchangeDataAsync(StoreEventConsts.WMS, StoreEventConsts.EOS, ExchangeDataType, dtos).ConfigureAwait(false); |
|
|
|
await AddManyAsync(exchangeData_eos).ConfigureAwait(false); |
|
|
|
|
|
|
|
//采购上架
|
|
|
|
var putaway_Purchase = entities.Where(p => p.Type == EnumPutawayType.PurchasePutaway).ToList(); |
|
|
|
if (putaway_Purchase.Count > 0) |
|
|
|
{ |
|
|
|
var exchangeData_Purchase = |
|
|
|
await BuildExchangeDataAsync(StoreEventConsts.WMS, StoreEventConsts.ERP, ExchangeDataType, |
|
|
|
putaway_Purchase).ConfigureAwait(false); |
|
|
|
await AddManyAsync(exchangeData_Purchase).ConfigureAwait(false); |
|
|
|
//EOS
|
|
|
|
var exchangeData_eos_Purchase = |
|
|
|
await BuildExchangeDataAsync(StoreEventConsts.WMS, StoreEventConsts.EOS, ExchangeDataType, |
|
|
|
putaway_Purchase).ConfigureAwait(false); |
|
|
|
await AddManyAsync(exchangeData_eos_Purchase).ConfigureAwait(false); |
|
|
|
} |
|
|
|
|
|
|
|
//半成品上架
|
|
|
|
var putaway_Semi_temp = entities.Where(p => p.Type == EnumPutawayType.SemiPutaway).ToList(); |
|
|
|
foreach (var putawayNoteTemp in putaway_Semi_temp) |
|
|
|
{ |
|
|
|
var putawayNoteDetails= new List<PutawayNoteDetail>(); |
|
|
|
|
|
|
|
foreach (var putawayNoteDetail_temp in putawayNoteTemp.Details) |
|
|
|
{ |
|
|
|
if (putawayNoteDetail_temp.FromLocationErpCode != putawayNoteDetail_temp.ToLocationErpCode) |
|
|
|
{ |
|
|
|
putawayNoteDetails.Add(putawayNoteDetail_temp); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
putawayNoteTemp.Details = putawayNoteDetails; |
|
|
|
} |
|
|
|
putaway_Semi_temp=putaway_Semi_temp.Where(p => p.Details.Any()).ToList(); |
|
|
|
if (putaway_Semi_temp.Count > 0) |
|
|
|
{ |
|
|
|
var exchangeData_Semi = await BuildExchangeDataAsync(StoreEventConsts.WMS, StoreEventConsts.ERP, |
|
|
|
EnumExchangeDataType.Transfer, putaway_Semi_temp).ConfigureAwait(false); |
|
|
|
await AddManyAsync(exchangeData_Semi).ConfigureAwait(false); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|